توصيات أداء Database Advisor لـ Azure SQL Database

ينطبق على: قاعدة بيانات Azure SQL

تتعلم Azure SQL Database وتتكيف مع تطبيقك. تحتوي Azure SQL Database على عدد من التي تقدم توصيات مخصصة تمكّنك من زيادة الأداء إلى الحد الأقصى. هذه Database Advisor تحلل وتقيّم باستمرار محفوظات الاستخدام، وكذلك يقدمون توصيات بناءً على أنماط حمولة العمل التي تساعد على تحسين الأداء.

نظرة عامة على الأداء

نظرة عامة على الأداء توفر ملخصاً لأداء قاعدة البيانات الخاصة بك، وتساعدك على ضبط الأداء واستكشاف الأخطاء وإصلاحها.

Performance overview for Azure SQL Database

  • يوفر مربع Recommendations تفصيلاً لتوصيات الضبط لقاعدة البيانات الخاصة بك (تُعرض أهم ثلاث توصيات إذا كان هناك المزيد). يؤدي النقر على هذا المربع إلى نقلك إلى خيارات توصيات الأداء .
  • يوفر جزء Tuning activity ملخصاً لإجراءات التوليف الجارية والمكتملة لقاعدة البيانات الخاصة بك، ما يمنحك عرضاً سريعاً لمحفوظات نشاط الضبط. يؤدي النقر فوق هذا المربع إلى نقلك إلى عرض محفوظات التوليف الكامل لقاعدة البيانات الخاصة بك.
  • يعرض جزء Auto-tuningتكوين الضبط التلقائي لقاعدة البيانات (خيارات الضبط المطبقة تلقائياً على قاعدة البيانات الخاصة بك). يؤدي النقر فوق هذا المربع إلى فتح مربع حوار تكوين الأتمتة.
  • يعرض جزء Database queries ملخص أداء الاستعلام لقاعدة البيانات الخاصة بك (الاستخدام العام لـ DTU والاستعلامات الأكثر استهلاكاً للموارد). يؤدي النقر على هذا المربع إلى نقلك إلى مؤشرات أداء الاستعلام .

خيارات توصية الأداء

خيارات توصيات الأداء المتوفرة في Azure SQL Database هي:

توصية الأداء قاعدة بيانات واحدة ودعم قاعدة بيانات مجمعة دعم قاعدة بيانات المثيل
إنشاء توصيات فهرس - يوصي بإنشاء فهارس قد تؤدي إلى تحسين أداء حمولة العمل لديك. نعم لا
توصيات إسقاط الفهرس - يوصي بإزالة الفهارس المنسوخة والمكررة يومياً، باستثناء الفهارس الفريدة والفهارس التي لم يتم استخدامها لفترة طويلة (>90 يوماً). يرجى ملاحظة أن هذا الخيار غير متوافق مع التطبيقات التي تستخدم تبديل الأقسام وتلميحات الفهرس. لا يتم دعم حذف الفهارس غير المستخدمة لمستويات الخدمات المميزة وBusiness Critical. نعم لا
معلمات توصيات الاستعلامات (معاينة) - يوصي بوضع معاملات إجبارية في الحالات التي يكون لديك فيها واحد أو أكثر من الاستعلامات التي يعاد تجميعها باستمرار ولكن ينتهي بها الأمر بنفس خطة تنفيذ الاستعلام. نعم لا
توصيات إصلاح مشكلات المخطط (معاينة) - تظهر توصيات لتصحيح المخطط عندما تلاحظ Azure SQL Database وجود شذوذ في عدد أخطاء SQL المتعلقة بالمخطط الحادثة في قاعدة البيانات الخاصة بك. تقوم Microsoft حالياً بإيقاف توصيات (إصلاح مشكلة المخطط). نعم لا

Performance recommendations for Azure SQL Database

لتطبيق توصيات الأداء، راجع تطبيق التوصيات. لعرض حالة التوصيات، راجع عمليات المراقبة.

يمكنك أيضاً العثور على محفوظات كاملة لإجراءات الضبط المطبقة مسبقاً.

إنشاء توصيات الفهرس

Azure SQL Database تراقب باستمرار الاستعلامات قيد التشغيل وتحدد الفهارس التي يمكنها تحسين الأداء. بعد التأكد من عدم وجود فهرس معين، تُنشأ توصية جديدة بـ إنشاء فهرس.

تقوم Azure SQL Database ببناء الثقة من خلال تقدير مكاسب الأداء التي سيحققها الفهرس عبر الوقت. اعتماداً على مكاسب الأداء المقدرة، يتم تصنيف التوصيات إلى عالية أو متوسطة أو منخفضة.

يتم دائماً تمييز الفهارس المُنشأة باستخدام التوصيات بوصفها فهارس مُنشأة تلقائياً. يمكنك معرفة الفهارس المُنشأة تلقائياً بالنظر إلى طريقة العرض sys.indexes. لا تحظر الفهارس المنشأة تلقائياً أوامر ALTER / RENAME.

إذا حاولت إسقاط العمود الذي يحتوي على فهرس مُنشأ تلقائياً فوقه، فسيُمرر الأمر. يُسقط الفهرس المنشأ تلقائياً باستخدام الأمر أيضاً. تحظر الفهارس العادية الأمر ALTER / RENAME في الأعمدة المفهرسة.

بعد تطبيق توصية إنشاء الفهرس، تقارن Azure SQL Database أداء الاستعلامات بأداء الأساس. إذا أدى الفهرس الجديد إلى تحسين الأداء، فستُميز التوصية بالنجاح، ويكون تقرير التأثير متاحاً. إذا لم يحسن الفهرس الأداء، فسيرجع تلقائياً. تستخدم Azure SQL Database هذه العملية للتأكد عمل التوصيات على تحسين أداء قاعدة البيانات.

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

إذا كانت وحدة المعالجة المركزية أو إدخال البيانات أو سجل الإدخال/الإخراج أعلى من 80٪ في الدقائق الثلاثين المنصرمة، تؤجل توصية إنشاء الفهرس. إذا كانت مساحة التخزين المتاحة أقل من 10٪ بعد إنشاء الفهرس، فإن التوصية تنتقل إلى حالة الخطأ. إذا استمر الضبط التلقائي، بعد يومين، في الاعتقاد بجدوى الفهرس، فستبدأ العملية مرة أخرى.

تتكرر هذه العملية حتى تتوفر مساحة تخزين كافية لإنشاء فهرس، أو إلى حين عدم رؤية جدوى الفهرس.

توصيات إسقاط الفهرس

إلى جانب اكتشاف الفهارس المفقودة، تُحلل Azure SQL Database أداء الفهارس الموجودة باستمرار. إذا لم يُستخدم فهرس ما، فإن Azure SQL Database توصي بإسقاطه. يوصى بإسقاط الفهرس في حالتين:

  • كون الفهرس نسخة مكررة من فهرس آخر (نفس العمود المفهرس والمضمّن ومخطط القسم والمرشحات).
  • عدم استخدام الفهرس لفترة طويلة (93 يوماً).

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

معلمة توصيات طلبات البحث (معاينة)

تظهر توصياتمعلمات الاستعلامات عندما يكون لديك واحد أو أكثر من الاستعلامات التي يُعاد تجميعها بشكل مستمر ولكنها تنتهي بخطة تنفيذ الاستعلام نفسها. هذا الشرط يعني إيجاد فرصة لتطبيق المعلمات المفروضة. تسمح المعلمات الإجبارية، بدورها، بالتخزين المؤقت لخطط الاستعلام وإعادة استخدامها في المستقبل، ما يحسن الأداء ويقلل من استخدام الموارد.

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

يمكن أن تؤدي الاستعلامات دون المعلمات إلى رفع الأداء لأنه تتم إعادة تحويل خطة التنفيذ في كل مرة تكون فيها القيم غير المحددة مختلفة. وفي كثير من الحالات، تقوم نفس الاستعلامات مع قيم معلمات مختلفة بإنشاء نفس خطط التنفيذ. وهذه الخطط، مع ذلك، لا تزال تتم إضافتها بشكل منفصل إلى ذاكرة التخزين المؤقت للخطة.

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

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

بعد تطبيق هذه التوصية، فإنها تمكّن المعلمات المفروضة في غضون دقائق من قاعدة البيانات الخاصة بك. تبدأ عملية المراقبة التي تستمر 24 ساعة تقريباً. بعد هذه الفترة، يمكنك رؤية تقرير التحقق. يوضح هذا التقرير استخدام وحدة المعالجة المركزية لقاعدة البيانات الخاصة بك قبل 24 ساعة من تطبيق التوصية وبعدها. لدى Azure SQL Database Advisor آلية أمان تقوم تلقائياً بإرجاع التوصية المطبقة في حالة الكشف عن تراجع الأداء.

توصيات إصلاح مشاكل المخطط (معاينة)

هام

تقوم Microsoft حالياً بإيقاف توصيات (إصلاح مشكلة المخطط). نوصي باستخدام Intelligent Insights لمراقبة مشكلات أداء قاعدة البيانات، بما فيها مشكلات المخطط التي تناولتها توصيات "إصلاح مشكلة المخطط" مسبقاً.

تظهر توصياتإصلاح مشكلات المخطط عندما تلاحظ Azure SQL Database وجود شذوذ في عدد أخطاء SQL المتعلقة بالمخطط الحادثة في قاعدة البيانات الخاصة بك. تظهر هذه التوصية عادةً عندما تواجه قاعدة بياناتك عدة أخطاء متعلقة بالمخطط (اسم عمود غير صالح، أو اسم كائن غير صالح، وما إلى ذلك) في غضون ساعة.

تعد (مشكلات المخطط) فئة من أخطاء بناء الجملة. تحدث عندما لا يحاذى تعريف استعلام SQL وتعريف مخطط قاعدة البيانات. على سبيل المثال، قد يُفقد أحد الأعمدة المتوقعة بواسطة الاستعلام في الجدول الهدف أو العكس.

تظهر توصية (إصلاح مشكلة المخطط) عندما تلاحظ Azure SQL Database وجود شذوذ في عدد أخطاء SQL المتعلقة بالمخطط والحادثة في قاعدة البيانات الخاصة بك. يعرض الجدول التالي الأخطاء المتعلقة بمشكلات المخطط:

رمز خطأ SQL الرسالة
201 Procedure or function ' ' expects parameter ' ', which was not supplied.
207 Invalid column name '*'.
208 Invalid object name '*'.
213 Column name or number of supplied values does not match table definition.
2812 Could not find stored procedure '*'.
8144 Procedure or function * has too many arguments specified.

تطبيقات مخصصة

قد يفكر المطورون في تطوير تطبيقات مخصصة باستخدام توصيات الأداء لـ Azure SQL Database. يمكن الوصول إلى جميع التوصيات المدرجة في المدخل لقاعدة البيانات من خلال واجهة برمجة تطبيقات Get-AzSqlDatabaseRecommendedAction .

الخطوات التالية

  • لمزيد من المعلومات حول الضبط التلقائي لفهارس قاعدة البيانات وخطط تنفيذ الاستعلام، راجع الضبط التلقائي لـ Azure SQL Database.
  • لمزيد من المعلومات حول المراقبة التلقائية لأداء قاعدة البيانات من خلال التشخيصات الآلية وتحليل السبب الجذري لمشاكل الأداء، راجع Azure SQL Intelligent Insights.
  • راجع مؤشرات أداء الاستعلام للتعرف على تأثير أداء أهم استعلاماتك وعرضه.