פוסטים

כמה מילים על אינדקסים ועל Reverse Key Index

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

מכוון שהאינדקס הזה נמצא איתנו כבר לא מעט זמן (אורקל 8 אם אני זוכר נכון) הוא עדיין לא מאוד נפוץ והרגשתי שזה יהיה מעניין לכתוב קצת על אינדקסים באופן כללי ועל האינדקס הזה בפרט.
המשך קריאה…

פיצ'ר חדש: המרה של אינדקסים באורקל 12c

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

הבעיה עם הפעילות הייתה שהאינדקס החדש שרצינו ליצור הכיל את אותן עמודות של האינדקס הקודם. זה אמר שאם רצינו ליצור אינדקס נוסף, לא יכולנו – אורקל מניח (ובצדק) שאין משמעות לשני אינדקסים על אותן עמודות ובאותו סדר ולא מאפשר את זה (ORA-1408).

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

אז מה עושים?
המשך קריאה…