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

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

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

מהו אינדקס?

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

מדוע להשתמש באינדקס מסדי נתונים?

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

instagram viewer

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

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

אם לחברה היו 1,000,000 עובדים והערך האחרון היה "זק", היית צריך לחפש 50,000 שורות כדי למצוא את שמו. ואילו עם אינדקס אלפביתי, אתה יכול לעשות זאת בכמה צעדים. כעת אתה יכול לדמיין כמה בדיקת נתונים וגישה מהירים יותר יכולים להפוך עם יצירת אינדקסים למסדי נתונים.

קָשׁוּר: 13 פקודות SQL החשובות ביותר שכל מתכנת צריך לדעת

שיטות ארגון קבצים שונות לאינדקסי מסדי נתונים

יצירת אינדקס תלויה במידה רבה במנגנון ארגון הקבצים שבשימוש. בדרך כלל, ישנם שני סוגים של שיטות ארגון קבצים המשמשות לאינדקס מסדי נתונים לאחסון נתונים. להלן נדון:

1. קובץ אינדקס שהוזמן: זו השיטה המסורתית לאחסון נתוני אינדקס. בשיטה זו ערכי המפתח ממוינים לפי סדר מסוים. ניתן לשמור נתונים בקובץ אינדקס שהוזמן בשתי דרכים.

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

2. ארגון Hash File: בשיטת ארגון קבצים זו, פונקציית hash קובעת את המיקום או את חסימת הדיסק שבהם מאוחסנת רשומה.

סוגי אינדקסי מסדי נתונים

בדרך כלל ישנן שלוש שיטות לאינדקס מסדי נתונים. הם:

  • אינדקס מקובץ
  • אינדקס לא מקובץ
  • אינדקס רב-מפלסי

1. אינדקס מקובץ

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

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

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

לכן, בקיצור, מדדי אשכולות הם המקום בו מקובצים סוגי נתונים דומים ונוצרים עבורם מדדים.

דוגמא: נניח שיש חברה שמונה למעלה מ -1,000 עובדים בעשר מחלקות שונות. במקרה זה, החברה צריכה ליצור אינדקס אשכולות ב- DBMS שלהם כדי לאנדקס את העובדים שעובדים באותה מחלקה.

כל אשכול עם עובדים העובדים באותה מחלקה יוגדר כאשכול יחיד, ומצבי נתונים במדדים יתייחסו לאשכול כישות שלמה.

קָשׁוּר: מהם מפתחות זרים בבסיסי SQL?

2. אינדקס לא מקובץ

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

דוגמא: אינדקס לא מקובץ דומה לספר שיש בו דף תוכן שהוזמן. כאן, מצביע הנתונים או ההפניה הם דף התוכן המסודר שממוין לפי האלף בית, והנתונים בפועל הם המידע שבדפי הספר. דף התוכן אינו שומר את המידע בדפי הספר לפי סדרם.

3. אינדקס רב-מפלסי

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

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

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

קָשׁוּר: כיצד להתחבר למסד MySQL עם Java

מהו פיצול אינדקס של SQL?

כאשר סדר כלשהו של דפי האינדקס אינו תואם לסדר הפיזי בקובץ הנתונים גורם לפיצול אינדקס SQL. בתחילה, כל אינדקסי SQL נמצאים ללא פיצול, אך כאשר אתה משתמש במסד הנתונים (הוספה / מחיקה / שינוי נתונים) שוב ושוב, הוא עלול לגרום לפיצול.

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

אימייל
נתוני שרת SQL התקלקלו? נסה לשחזר אותו באמצעות ארגז הכלים לשחזור SQL

ארגז הכלים לשחזור עבור שרת SQL מסייע בתיקון קבצי MDF פגומים של שרת SQL SQL לכל הגרסאות.

קרא הבא

נושאים קשורים
  • תִכנוּת
  • SQL
  • ניתוח נתונים
  • מאגר מידע
על הסופר
זדהיד א. פאוול (12 מאמרים פורסמו)

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

עוד מאת זדהיד א. פאוול

הירשם לניוזלטר שלנו

הצטרף לניוזלטר שלנו לקבלת טיפים טכניים, ביקורות, ספרים אלקטרוניים בחינם ומבצעים בלעדיים!

צעד אחד נוסף !!!

אנא אשר את כתובת הדוא"ל שלך בדוא"ל ששלחנו לך זה עתה.

.