لماذا يهم هذا الدرس؟

فهم لماذا نستخدم الفهارس وربطه بمثال علائقي عملي واضح. تقايض Indexes مساحة وWrite Work إضافيين مقابل Access Paths أسرع. تعتمد قيمتها على Predicates وSelectivity وOrdering وQuery Plan الذي تختاره القاعدة.

كيف تفكر فيه؟

  • في درس لماذا نستخدم الفهارس، النتيجة التي يجب أن تتحقق: نفّذ الاستعلام على بيانات تجريبية واقرأ النتيجة قبل الانتقال إلى الحالة التالية.
  • في سياق لماذا نستخدم الفهارس، الخطر الذي يجب أن يبقى تحت السيطرة: إضافة Index لكل Column تزيد Write Cost وMaintenance دون ضمان استخدام Optimizer لها.
  • تطبيق لماذا نستخدم الفهارس: قارن EXPLAIN قبل وبعد Index على Filter انتقائي وسجل تغير Rows Scanned وAccess Method.
Diagram

متى يساعد الفهرس؟

تطبيق عملي

في التطبيق الخاص بدرس لماذا نستخدم الفهارس: نفّذ الاستعلام على بيانات تجريبية واقرأ النتيجة قبل الانتقال إلى الحالة التالية.

example.sqlsql
CREATE INDEX idx_orders_customer_id
ON orders(customer_id);

جرّب بنفسك

Practice

تمرين لماذا نستخدم الفهارس

قارن EXPLAIN قبل وبعد Index على Filter انتقائي وسجل تغير Rows Scanned وAccess Method.

  • سجل النتيجة المتوقعة قبل التنفيذ
  • اختبر حالة صحيحة وحالة فشل مرتبطة بالدرس
  • اشرح في سطرين أين يوجد الحد المسؤول عن القرار

الخلاصة