מדדים של אינדקס וקטורים

בחירת גרסת תיעוד:

בדף הזה מפורטות המדדים שקשורים לאינדקסים הווקטוריים שאתם יוצרים ב-AlloyDB Omni. אפשר לראות את המדדים האלה בתצוגה pg_stat_ann_indexes שזמינה כשמתקינים את התוסף alloydb_scann.

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

מדדי נוחות שימוש

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

שם המדד סוג נתונים תיאור
relid OID מזהה ייחודי של הטבלה שמכילה את אינדקס הווקטורים
indexrelid OID מזהה ייחודי של אינדקס הווקטור
schemaname NAME שם הסכימה שהאינדקס שייך לה
relname NAME שם הטבלה שמכילה את האינדקס
indexrelname NAME שם האינדקס
indextype NAME סוג האינדקס. הערך הזה תמיד מוגדר ל-alloydb_scann
indexconfig TEXT[] ההגדרה, כמו ספירת העלים והקוונטיזציה, שהוגדרה לאינדקס כשהוא נוצר
indexsize TEXT גודל האינדקס
indexscan BIGINT מספר הסריקות של האינדקס שהופעלו באינדקס
partitioncount BIGINT מספר המחיצות (צמתי עלים) בעץ.

מדדי התאמה

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

שם המדד סוג נתונים תיאור
insertcount BIGINT מספר פעולות ההוספה באינדקס. המדד הזה כולל גם את מספר השורות שהיו קיימות לפני יצירת האינדקס.
updatecount BIGINT מספר פעולות העדכון באינדקס. המדד הזה לא כולל עדכוני HOT.
deletecount BIGINT מספר פעולות המחיקה באינדקס.
distribution JSONB התפלגויות וקטורים בכל המחיצות של האינדקס.

השדות הבאים מציגים את ההתפלגות:
  • maximum (INT8): המספר המקסימלי של וקטורים בכל המחיצות.
  • minimum (INT8): מספר הווקטורים המינימלי בכל המחיצות.
  • average (FLOAT) : המספר הממוצע של וקטורים בכל המחיצות.
  • outliers (INT8[]): חריגים מובילים בכל המחיצות. הערך הזה מציג את 20 החריגים המובילים.

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

המלצה לשיפור על סמך המדדים

מוטציה
המדדים insertcount, updatecount, deletecount מציגים יחד את השינויים או המוטציות בווקטור של האינדקס.
האינדקס נוצר עם מספר מסוים של וקטורים ומחיצות. כשמבצעים פעולות כמו הוספה, עדכון או מחיקה באינדקס הווקטורים, הפעולות משפיעות רק על קבוצת המחיצות הראשונית שבה נמצאים הווקטורים. כתוצאה מכך, מספר הווקטורים בכל מחיצה משתנה לאורך זמן, ויכול להיות שזה ישפיע על ההחזרה, על QPS או על שניהם.
אם אתם נתקלים בבעיות של איטיות או דיוק, כמו QPS נמוך או recall נמוך, בשאילתות החיפוש של ANN לאורך זמן, כדאי לבדוק את המדדים האלה. מספר גבוה של מוטציות ביחס למספר הכולל של וקטורים יכול להצביע על הצורך באינדוקס מחדש.
הפצה
המדד distribution מציג את התפלגויות הווקטורים בכל המחיצות.
כשיוצרים אינדקס, הוא נוצר עם מספר מסוים של וקטורים ומחיצות קבועות. תהליך החלוקה וההפצה מתבצעים על סמך השיקול הזה. אם מוסיפים עוד וקטורים, הם מחולקים בין המחיצות הקיימות, וכתוצאה מכך מתקבלת חלוקה שונה בהשוואה לחלוקה שהתקבלה כשנוצר האינדקס. מכיוון שהחלוקה הסופית לא מתבססת על כל הווקטורים בו-זמנית, יכול להיות שההיזכרות, ה-QPS או שניהם יושפעו.
אם אתם מבחינים בירידה הדרגתית בביצועים של שאילתות החיפוש של ANN, כמו זמני תגובה איטיים יותר או דיוק מופחת בתוצאות (שנמדד על ידי QPS או recall), כדאי לבדוק את המדד הזה ולבצע אינדוקס מחדש.