انتقل إلى محتوى الدرس

Balanced B Tree Index Structure كيف تعمل شجرة البحث B+Tree

تعلّم فهارس شجرة B Tree والمفتاح العنقودي والفحص الكامل في MySQL بأسلوب MySQL 8 الحديث مع أمثلة استعلامات SQL وتطبيقات تفاعلية.
1 صفوف تعليمية
MySQL
7 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

عندما تنشئ فهرساً من النوع الافتراضي USING BTREE في MySQL، يبني محرك InnoDB فعلياً بنية بيانات تُعرف هندسياً باسم شجرة البحث المتوازنة (B+Tree). تحافظ هذه الشجرة على توازنها تلقائياً بحيث تكون المسافة من العقدة الجذرية (Root Node) إلى أي عقدة ورقية (Leaf Page) متساوية دائماً.

تتكوّن شجرة B+Tree في InnoDB من ثلاث طبقات مترابطة:

  • العقدة الجذرية والعقد الفرعية (Root & Branch Nodes): تحتوي على قيم مفاتيح مرتبة ومؤشرات توجّه المحرك نحو الصفحة الفرعية الصحيحة (أكبر من أو أصغر من).
  • العقد الورقية (Leaf Pages): تقع في المستوى الأدنى وتحتوي على القيم المفهرسة مرتبةً ترتيباً تصاعدياً دقيقاً.
  • روابط ثنائية الاتجاه (Doubly-Linked List): ترتبط كل صفحة ورقية بالصفحة التي تسبقها والتي تليها، مما يجعل البحث في النطاقات مثل BETWEEN 100 AND 500 أو الترتيب ORDER BY سريعاً للغاية دون الحاجة للعودة إلى الجذر.
SQL
SELECT * FROM customers WHERE customer_id BETWEEN 101 AND 104;

محاكي شجرة B+Tree والفحص الكامل