Optimizer Statistics
نشر بواسطة : Obay Salah , November 20, 2024
هناك العديد من الطرق لتنفيذ عبارات الـ SQL، وعملية اختيار خطة تنفيذ عبارات الـ SQL مؤثرة جداً على الأداء. يعتمد الـ Optimizer بشدة على الإحصائيات لتقييم فعالية خطط تنفيذ عبارات الـ SQL ولتحديد خطة التنفيذ، ولكي يكون الأداء جيد يجب أن تكون هذه الإحصائيات صحيحة، وهناك العديد من أنواع الإحصائيات، مع التنبيه على أن هذه الإحصائيات لا علاقة لها بال PL/SQL وإنما فقط SQL.
Object Statistics: نستطيع عمل Analyzing للجدول لاستخراج الإحصائيات عن الجدول والتي ستستخدم من قبل الـ Optimizer، هذه الإحصائيات تظهر في الـ View DBA_TABLES وهي تحوي:
1- عدد الصفوف في الجدول. 2- عدد الكتل (Blocks) في الجدول. 3- كمية المساحة الفارغة في الـ Blocks المستخدمة. 4- متوسط الطول لجميع الصفوف.
نستطيع كذلك عمل Analyzing للأعمدة المكونة للجدول لاستخراج الإحصائيات، هذه الإحصائيات تظهر في DBA_TAB_COLUMNS وهي تحوي:
1- عدد القيم المميزة. 2- القيم العليا والدنيا. 3- عدد القيم NULL. 4- متوسط طول العمود.
لحظة عمل Analyzed للجدول يتم كذلك فحص الـ Indexes المرتبطة بالجدول، وإحصائيات هذه الفهارس تظهر في الـ DBA_INDEXES View. هذه الإحصائيات يتم تخزينها في الـ Data Dictionary، وهي تعطي الـ Optimizer المعلومات التي يحتاجها لاتخاذ القرارات الحيوية حول ما هي أفضل طريقة لتنفيذ عبارات الـ SQL، إذا هذه الإحصائيات مفقودة أو خاطئة فإن الأداء سينخفض بشكل مثير. من المحتمل أيضاً لجمع الإحصائيات عن الفهارس أن تظهر الإحصائيات في الـ INDEX_STATS View.
Comments
لايوجد تعليق حتى الان