سؤال

كنت أقرأ عن "خلاف الفهرس" ووجدت التفسير أدناه:

فهارس شجرة Oracle B هي "اليد اليمنى" والأوراق اليمنى من شجرة B تحتوي على أعلى مفتاح في أدنى مستوى شجرة.

فهرس ورقة الخلاف يحدث عندما يتم إدراج الصفوف بناء على مفتاح تم إنشاؤه للمستخدم (أي تسلسل) ولأن مفتاح التسلسل هو دائما مفتاح الترتيب العالي، يجب أن ينتشر كل إدراج عقدة شجرة الفهرس المنخفضة إلى أعلىمؤشرات عالية الرئيسية في مؤشر B-Tree.

هل هناك أي عيوب أخرى من مؤشرات شجرة Oracle B التي يتم تقديمها بشكل صحيح؟

وما يمكن أن يكون الأسباب الأخرى لتخفيف خلاف المؤشر / الإدراج؟

هل كانت مفيدة؟

المحلول 2

كان سؤالي خصيصا لمؤهلات Oracle B Tree ولا حول ما هو "خلاف الفهرس" في الواقع. على الرغم من أن ترغب في إضافة عدد قليل من النقاط إلى سؤالي وبالتالي الرد عليه.

فهرس ورقة الخلاف يحدث عندما يتم إدراج الصفوف بناء على مفتاح تم إنشاؤه للمستخدم (أي تسلسل) ولأن مفتاح التسلسل هو دائما مفتاح الترتيب العالي، يجب أن ينتشر كل إدراج عقدة شجرة الفهرس المنخفضة إلى أعلىمؤشرات عالية المستوى في مؤشر B-Tree.

هناك ثلاثة تقنيات تستخدم لتخفيف مشكلة خلاف الفهرس هذا:

  • فهارس المفتاح العكسي
  • تسلسل مع ذاكرة التخزين المؤقت وخيارات noorder
  • باستخدام الفهارس العالمية التقسيم التجزئة
  • ضبط حجم كتلة الفهرس

نصائح أخرى

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

لتجنب هذه المشكلة قدمت Oracle مفتاح عكس الخيار.في عكس إدخالات الفهرس الرئيسية، يتم حفظ عكس (ببساطة - سيتم تخزينها - 123 سيتم تخزينها 321) وسيتم إدراج جديد إدراج عبر الفهرس.

بشكل عام، سيحدث بقعة ساخنة في كل مرة تقوم فيها بإدخال الكثير من البيانات في كتلة الورقة نفسها.

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top