এসকিউএল সার্ভারে ক্রস-ডাটাবেস প্রশ্নগুলি ব্যয়বহুল?


15

এসকিউএল সার্ভারে ক্রস-ডাটাবেস প্রশ্নগুলি ব্যয়বহুল? সমস্ত ডাটাবেস একই উদাহরণে।


3
আমি তাদের কোনও প্রমাণ পাই নি যে তারা, না। কেবলমাত্র ব্যতিক্রমগুলি যা আমি এমনকি ভাবতে পারি (তবে পরীক্ষা করে দেখিনি) সেগুলি হ'ল (ক) যে অপটিমাইজার সুস্পষ্টরূপে সম্পর্কযুক্ত সম্পর্কগুলি থেকে উপকৃত হতে পারে না (উদাহরণস্বরূপ এটি বিদেশী কী সংজ্ঞা থেকে উপকৃত হতে পারে, যে ক্রসটি অস্তিত্ব রাখতে পারে না) -ডাটাবেস) বা (খ) লিঙ্কযুক্ত সার্ভারগুলিতে পরিসংখ্যানগুলির একটি সমস্যা হিসাবে সমস্যা রয়েছে, তবে আমি কল্পনা করি এমন কিছু ঘটনাও ঘটতে পারে যেখানে এমনকি ডাটাবেস জুড়ে কোনও ক্যোয়ারী চালানো কোনও ব্যবহারকারী স্ট্যাটাস দেখতে না পারে। (খ) আসল কিনা তা জানেন না - পরীক্ষা করেছেন না, কেবল এটি জানেন যে সার্ভারগুলিতে একটি গুরুতর সমস্যা হতে পারে।
হারুন বারট্রান্ড

2
আমি এইটিতে @ অ্যারনবার্ট্র্যান্ডের সাথে রয়েছি, আমি এখানে একটি দৃ hit়রূপে বলার মতো বিশাল কিছু হিট দেখিনি। আমি শুধু পারে মনে সমীকরণ কিছু যোগ সম্ভবত প্রমাণীকরণ অপারেশনের কিছু ফর্ম হবে হবে, কিন্তু আমি সন্দেহ করবে এটা উল্লেখযোগ্য হতে হবে। এটাই আমি উচ্চস্বরে চিন্তা করছি, আমি নিশ্চিত নই। আপনার সেরা বেটটি হ'ল ক্রস-ডাটাবেস সহ একটি স্বয়ংক্রিয় পরীক্ষা / বেঞ্চমার্ক সেটআপ করা, তারপরে একই ক্যোয়ারী আন্ত-ডাটাবেস সহ এবং হাজার হাজারবার সেই পরীক্ষাটি চালানো। গড়, সর্বাধিক ইত্যাদি পান এবং তার ভিত্তিতে আপনার সিদ্ধান্ত নিন।
টমাস স্ট্রিংগার

1
@ থমাস কি প্রকৃত ক্যোয়ারী পরিকল্পনাগুলি দেখে আপনি কোনও পার্থক্যটি দেখতে পাচ্ছেন?
ম্যাক্স ভার্নন

@ জোনাথন: "ব্যয়বহুল" সংজ্ঞাটি বিকল্পের সাথে তুলনামূলক। সুতরাং, আপনি কি করতে চেষ্টা করছেন এবং আপনি কি মধ্যে সিদ্ধান্ত নিচ্ছেন? আরও তথ্য ব্যতীত এমন কোনও উত্তর পাওয়া সম্ভব যা এই প্রশ্নের মুখোমুখি হওয়াতে সঠিক দেখা যায়, তবে একই সাথে আপনার পরিস্থিতির জন্য একেবারেই ভুল। সবকিছুর জন্য একটি খরচ আছে তবে আপনি যেটির সাথে তুলনা করছেন তার উপর নির্ভর করে সেই দামটি সস্তা বা ব্যয়বহুল হতে পারে। এবং ক্যোয়ারী ব্যয়ের (যেমন সময়, বিতর্ক ইত্যাদি) রক্ষণাবেক্ষণ ব্যয়, হার্ডওয়্যার ব্যয় ইত্যাদির তুলনায় ওজন করা দরকার
সলোমন রুটজকি

আমি একই টেবিলের একটি প্রশ্নের তুলনায় দাম জানতে চাই।
জোনাথন অ্যালেন

উত্তর:


6

দুঃখিত, প্রশ্নটিতে মন্তব্য করার মতো যথেষ্ট খ্যাতি আমার নেই, তবে আমার অভিজ্ঞতা থেকে যদি ক্লায়েন্ট অ্যাপ্লিকেশন কোনও ক্রয়ের ডেটাবেস ব্যবহার করে এমন কোনও প্রশ্নের জন্য একটি লেনদেন উত্থাপন করে তবে এটি ডিটিসি লেনদেনের বিতরণ এবং ওভারহেডে লেনদেনকে উত্সাহিত করবে ।

এই ক্ষেত্রে ডিটিসি ওভারহেডকে পারফরম্যান্সে নেতিবাচক হিসাবে দেখা যেতে পারে। মাইক্রোসফ্ট ডিটিসি লেনদেনের বর্ণনা যেমন দেয় তবে সাধারণত পার্থক্যটি নগণ্য হবে:

বিতরণ লেনদেনগুলি সাধারণত উল্লেখযোগ্য সিস্টেম সংস্থান গ্রহণ করে

লেনদেন প্রচার

... যা আপনার সার্ভারের প্রয়োজনীয় সংস্থানগুলি সরবরাহ করতে না পারলে পারফরম্যান্স অবক্ষয়ের পরামর্শ দেয়।

কেবল পরিষ্কার করার জন্য, উপরের নিবন্ধটি দূরবর্তী সিস্টেমগুলি চালু করার সময় স্থানীয় লেনদেনের প্রচারের বর্ণনা দিচ্ছে, তবে ক্রস ডাটাবেস অনুসন্ধানগুলি ব্যবহার করার সময় আমি একই সার্ভারে লেনদেনের ক্ষেত্রে এটি হয়ে দাঁড়িয়েছি।

থমাস স্ট্রিংগার তাঁর মন্তব্যে যেমন উল্লেখ করেছেন, প্রমাণীকরণে অতিরিক্ত ওভারহেড থাকবে যদিও আমি মনে করি এটি সিআইডি চালিত হবে সেখানে অন্যদিকে ন্যূনতম ওভারহেড থাকবে যদি না আপনি অন্য ডেটাবেস অ্যাক্সেস করতে আলাদা পরিচয়পত্র ব্যবহার না করেন।

যদি ডেটাবেস সেটিংসে পার্থক্য থাকে যা জোড়ায় অতিরিক্ত ওভারহেডের কারণ হয়ে থাকে যা পূর্ববর্তী পরামর্শগুলির চেয়ে বড় প্রভাব ফেলতে পারে - উদাহরণস্বরূপ ডাটাবেস কোলেশন। ডাটাবেস কোলেশন কেবল কার্য সম্পাদনের পার্থক্য নয়, একটি কার্যকরী পার্থক্য হিসাবে প্রকাশ করতে পারে।

আমি মনে করি ক্রোস-ডাটাবেস প্রশ্নের জন্য সম্পর্ক ব্যবহার করার সুবিধা না পেয়ে অপ্টিমাইজারের সাথে পারফরম্যান্সের পক্ষে সবচেয়ে শক্তিশালী যুক্তি রয়েছে আর অন্যদিকে ডেটাবেজের মধ্যে স্বনির্ভর আপনি নিজের সুবিধার জন্য সম্পর্ক ব্যবহার করতে পারেন।


1
If a local transaction spans two or more databases on the same instance of the Database Engine, the instance uses an internal two-phase commit to commit all of the databases involved in the transaction.- যদি আপনি অন্যথায় খুঁজে পেয়ে থাকেন তবে অনুগ্রহ করে স্পষ্ট প্রজনন পদক্ষেপের সাথে সংযোগের উপর একটি বাগ রিপোর্ট করুন।
জন সেগেল

1
লেনদেনের প্রচারের নিবন্ধটি সিএলআর লেনদেনের জন্য।
stacylaray

-2

এসকিউএল সার্ভার ২০১৪-এ, মেমরি-অনুকূলিত টেবিলগুলি ক্রস-ডাটাবেস লেনদেনকে সমর্থন করে না। আপনি একই লেনদেন বা একই ক্যোয়ারী থেকে অন্য কোনও ডাটাবেস অ্যাক্সেস করতে পারবেন না যা মেমরি-অনুকূলিত টেবিলটিও অ্যাক্সেস করে। আপনি সহজেই একটি ডাটাবেসের কোনও টেবিল থেকে অন্য ডাটাবেসে কোনও মেমরি-অনুকূলিত টেবিলটিতে অনুলিপি করতে পারবেন না। http://msdn.microsoft.com/en-us/library/dn584627(v=sql.120).aspx বিতরণ এবং ক্রস-ডাটাবেস লেনদেনগুলি ডাটাবেস মিররিং / এওএজি সমর্থন করে না। http://technet.microsoft.com/en-us/library/hh393530.aspx । আপনাকে ব্যবহার মালিকানা chaining যাচ্ছি থাকেন তাহলে, সচেতন নিরাপত্তা ঝুঁকি হতে http://msdn.microsoft.com/en-us/library/ms188676.aspx


এটি কেবলমাত্র "একাধিক ঘটনা বা সার্ভারগুলিতে বিস্তৃত সংস্থানগুলি" এমন দৃশ্যের ক্ষেত্রে প্রযোজ্য। এক্ষেত্রে আমরা একাধিক ডাটাবেস সহ একক উদাহরণের কথা বলছি।
জোনাথন অ্যালেন

1
আমার খারাপ ... আমি সেই অংশটি একই ঘটনার মধ্যে থেকে
হারিয়েছি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.