ההבדל בין B-Tree ו- Bitmap

B-Tree ו- Bitmap

קיימים שני סוגים של אינדקסים המשמשים ב- Oracle. אלה הם B- עץ מפת סיביות. אינדקסים אלה משמשים כוונון ביצועים, אשר למעשה עושה מחפש רשומות אחזור די מהר. פונקציות המדד יוצרות רשומה עבור כל הערכים המופיעים בעמודות המפתחות. מדדי B-Tree הם הסוג המשמש במערכות OLTP ומיושמים בעיקר כברירת מחדל. מפת סיביות, לעומת זאת, מגיעה כתבנית אינדקס דחוסה מאוד, אשר ברוב המקרים מועסקת במחסני נתונים.

- <->

מפת סיביות יכולה להיות מכונה בדרך כלל כשיטה לאינדקס, למרות אילו יתרונות ביצועים וחיסכון באחסון ניתן לחפש. השימוש שלה, כאמור לעיל, הוא בעיקר בסביבת אחסון נתונים. הסיבה לכך היא כי העדכונים של הנתונים הם לא תכופים שאילתות אד הוק הם יותר בסביבה. ביישום מפת סיביות, נתונים מועדפים נמוכים מועדפים. מפת סיביות היא הבחירה המועדפת לפריטי עמודות בעלי אפשרויות נמוכות כגון מין, שיהיו להם 2 ערכים בלבד ויעדיפו. נתונים סטטיים במחסן הם גם מאפיין טוב של נתונים כי יהיה מיושם מצוין באמצעות מפת סיביות. מאפיין נוסף של Bitmap הוא זרם של סיביות לפיהן כל ביט מיושם לערך טור בשורה אחת של טבלה.

אינדקס עץ B, לעומת זאת, הוא מדד שנוצר על עמודות המכילות ערכים ייחודיים מאוד. אינדקס B-Tree מכיל רשומות שבהן לכל ערך יש ערך מפתח חיפוש ומצביע שמתייחס לשורה וערך מסוימים. אם שרת מוצא מגבלה תואמת המתייחסת לערך המדובר, המצביע נפרס כדי לאחזר את השורה.

אחד ההבדלים בין השניים הוא כי יש שכפול נמוך גבוהה co-cordiality ב B- עץ בעוד ההיפך קורה מפת סיביות. מפת סיביות יש מקרים כפילות גבוהה וחביבות נמוכה. מדד Bitmap נראה יתרון על מדד B-Tree, שכן יש טבלאות כי יש מיליוני שורות כמו בעמודות שצוין יש קרדינליות נמוכה. המדדים ב Bitmap, ולכן, מציעים ביצועים טובים יותר לעומת המדדים B-Tree.

B- עצים נראה מהיר מאוד כאשר אוסף נתונים קטן נאסף, ברוב המקרים, הנתונים לא יעלה על 10% של גודל מסד הנתונים. אלה שני עובדים יחד כאשר יש הרבה ערכים נפרדים מהם הם באינדקס. זה גם ייחודי ל B-Tree כי מספר מדדים ניתן למזג כדי לייצר תוכנית יעילה מאוד. מפת סיביות, לעומת זאת, נוטה לעבוד בצורה הטובה ביותר כאשר קיימים ערכי אינדקס נמוכים ליעילות מרבית.

עצים B ירודים כשמדובר בחיפוש אחר קבוצות נתונים גדולות יותר, העולות על 10% מנתוני המשנה.מפת סיביות לוקחת את האתגר הזה כדי לספק תוצאות באיכות גבוהה, כפי שהוא עובד טוב יותר כאשר יש כמה ערכים נפרדים.

אם יש אינדקסים רבים בטבלה עסוקה באמצעות B-Tree, בעיה יכולה להתעורר כתוצאה מעונשים קטנים המוטלים בעת הוספת נתונים באינדקס או במקרה שאתה צריך להיות הוספה ועדכון של נתונים באינדקס. אין זו בעיה עם Bitmap, שכן היא יעילה מאוד בהוספת ועדכון ערכים, ללא קשר לגודל הנדון.

סיכום

B-Tree ו- Bitmap הם שני סוגים של אינדקסים המשמשים את Oracle
Bitmap היא שיטת אינדקס, המציעה יתרונות ביצועים וחיסכון באחסון
מדד B-Tree הוא אינדקס שנוצר עמודות המכילות ערכים ייחודיים מאוד
B-Tree פועל בצורה הטובה ביותר עם ערכים רבים ומובחנים שונים
מפת סיביות פועלת בצורה הטובה ביותר עם ערכים רבים ומובחנים שונים