افتراض احتواء صلة في "جهة التقدير العلاقة الجديدة" تبطئ أداء الاستعلام في SQL Server 2014 والإصدارات الأحدث

ينطبق على: SQL Server 2016 EnterpriseSQL Server 2016 DeveloperSQL Server 2016 Web

الأعراض


يرجى مراعاة السيناريو التالي:

  • كنت تستخدم Microsoft SQL Server 2014 أو إصدار أحدث.
  • تشغيل استعلام يتضمن وصلات وذات صلة بتصفية المسندات.
  • ترجمة الاستعلام باستخدام جديد اتصال مقدر علاقة أساسية (م جديد).
في هذا السيناريو، تواجه انخفاض أداء الاستعلام.

لا تحدث هذه المشكلة إذا كان التحويل البرمجي الاستعلام باستخدام "مجلس أوربا القديمة".

الحل


في SQL Server 2014 والإصدارات الأحدث، يمكنك استخدام علامة التتبع 9476 لفرض "مجلس أوربا جديدة" باستخدام افتراض احتواء بسيط بدلاً من افتراض احتواء قاعدة الافتراضي. (راجع القسم "مزيد من المعلومات").

قد يحسن تمكين هذه العلامة تتبع اختيار خطة الاستعلام دون الحاجة إلى الرجوع إلى الطراز القديم CE تماما إذا تحققت الشروط التالية:

  • تواجه خياراً خطة استعلام دون المستوى الأمثل تؤدي أداء المخفض الكلي للاستعلامات التي تحتوي على الصلات وذات صلة بتصفية المسندات.
  • يمكنك التحقق من دقة كبيرة في وضع "الانضمام إلى العلاقة" تقدير (أي الفعلية مقابل العدد المقدر للصفوف التي تختلف بشكل كبير).
  • لا يوجد عدم الدقة هذا عند التحويل البرمجي للاستعلامات باستخدام "مجلس أوربا القديمة".

يمكنك تمكين هذه العلامة تتبع على الصعيد العالمي، على مستوى جلسة العمل أو على مستوى الاستعلام.

ملاحظة: استخدام إشارات التتبع بشكل غير صحيح يمكن أن تخفض أداء حمل العمل الخاص بك. لمزيد من المعلومات، راجع القسم "مقدمة" لمقالة "قاعدة معارف Microsoft" التالية:

تمكين 2801413 التأثير على خطة SQL Server الاستعلام محسن السلوك الذي يمكن التحكم بواسطة إشارات التتبع مختلفة على مستوى استعلام خاص ب

مزيد من المعلومات


اعتبارا من سنة 2014 خادم SQL، تم تقديم "مقدر أصل جديد" لمستوى توافق قاعدة بيانات 120 وأكبر. تغيير "مجلس أوربا الجديدة" عدة افتراضات من مجلس أوربا القديمة في نموذج الذي يتم استخدامه من قبل "محسن الاستعلام" عندما تقدر العلاقة الأساسية لمختلف العوامل ودالات التقييم.

أحد هذه التغييرات بالانضمام إلى افتراض الاحتواء.

يفترض نموذج قديم CE المستخدمين دائماً الاستعلام عن بيانات موجودة. وهذا يعني أنه، لتقييم صلة التي تتضمن عملية equijoin جدولين، الأعمدة المرتبطة موجودة على جانبي الصلة. حضور المسندات تصفية إضافية ذات صلة من جدول الربط أو "مجلس أوربا القديمة" يفترض قدرا من الارتباط المسندات join وعامل التصفية غير الصلة المسندات. وهذا يعني ارتباط يسمى "احتواء بسيط".

بدلاً من ذلك، يستخدم مجلس أوربا الجديدة احتواء قاعدة العلاقات المتبادلة. طراز "م جديدة" يفترض أن المستخدمين قد الاستعلام عن بيانات غير موجود. وهذا يعني أن مسندات التصفية في جداول منفصلة قد لا يمكن يرتبط مع بعضها البعض. لذلك، نحن نستخدم نهجاً احتمالية.

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