ما هي مكاسب الأداء التي يمكنني توقعها من ترحيل قاعدة البيانات؟

StackOverflow https://stackoverflow.com/questions/3016691

  •  26-09-2019
  •  | 
  •  

سؤال

قل أن لديّ جدول X مع 100 سجل فيه وتلك التشغيل select * from X يستغرق 100 ثانية.

كم من الوقت يجب أن أتوقع الاستعلام select top 10 * from X يأخذ؟

أتوقع أن تكون العلاقة خطية إلى حد ما حتى 10 ثوانٍ. هل هذا صحيح أم أن العلاقة غير خطية بطريقة ما؟

هل كانت مفيدة؟

المحلول

تكلفة أدائك في مجالين مختلفين:

  • كم من الوقت يستغرق إجراء الاستعلام
  • كم من الوقت يستغرق إعادة النتائج

في كثير من الأحيان ، سيكون الاستعلام سريعًا ، لكن النتائج العائدة ستكون بطيئة ، نظرًا لأنه مرتبط بالإدخال/الإخراج. إذا كان هذا هو الحال ، فسترى تسريعًا خطيرًا تقريبًا عن طريق إرجاع نتائج أقل.

ومع ذلك ، إذا كان الاستعلام نفسه معقدًا ، فإن الأمور مختلفة. إذا لم يكن الأمر فقط select * from X, ، لكن select * from X where [complicated-expression], ، قد تختلف النتائج على نطاق واسع بين تطبيقات قاعدة البيانات. في هذه الحالة ، قد يهيمن على أدائك تعقيد الاستعلام ، وفي هذه الحالة لن ترى الكثير من الاستفادة من خلال إعادة نتائج أقل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top