פתרון השגיאה 'אין מספיק זיכרון משותף'
אם מריצים את AlloyDB Omni בלי מספיק זיכרון משותף למנוע מבוסס-עמודות, יכול להיות שתופיע השגיאה הבאה:
Insufficient shared memory for generating the columnar formats.
כדי לפתור את הבעיה הזו, צריך לציין את כמות הזיכרון המשותף שזמין לקונטיינר של AlloyDB Omni.
Linux
מוודאים שכבר התקנתם את AlloyDB Omni עם ספריית
/dev/shmשמועלית למאגר. מידע נוסף מופיע במאמר בנושא התאמה אישית של ההתקנה של AlloyDB Omni.כדי להגדיל את הגודל של מחיצת
/dev/shmבמכונת המארח, אפשר להשתמש בטכניקה כמו עריכה של קובץ/etc/fstab.
איתור הטבלאות שאוכלסו במנוע מבוסס-עמודות
בתצוגה g_columnar_relations, יוצרים שאילתות כדי למצוא את הטבלאות שקיימות במנוע העמודות.
SELECT * FROM g_columnar_relations;
איך בודקים את הזיכרון הכולל שבו נעשה שימוש במנוע העמודות
משתמשים בפונקציית ה-SQL google_columnar_engine_memory_available() כדי לקבוע את כמות הזיכרון שבה נעשה שימוש במנוע העמודות.
SELECT google_columnar_engine_memory_available();
איך בודקים אם עמודות מסוימות לא מאוכלסות במנוע העמודות
כדאי לנסות את הפתרונות האפשריים הבאים:
- בודקים אם מנוע מבוסס-עמודות תומך בסוג הנתונים של העמודה.
- אם הוספתם או הסרתם עמודות ממסד הנתונים הטבלאי לאחרונה, צריך לוודא שביצעתם את אותה הפעולה במנוע מבוסס-עמודות.
איך בודקים אם שאילתה משתמשת במנוע מבוסס-עמודות
בתוכנית השאילתה, בודקים אם יש צומת מתכנן מסוג Custom Scan (סריקה עמודתית).
איתור משימות התחזוקה בתהליך
מריצים שאילתה בתצוגה g_columnar_jobs כדי למצוא את העבודות בתהליך.
SELECT * FROM g_columnar_jobs;
הגדרת כמות המשאבים שפעולות התחזוקה משתמשות בהם במנוע העמודות
כברירת מחדל, מנוע מבוסס-עמודות משתמש בעד 20% ממשאבי מסד הנתונים. כדי להגדיל או להקטין את השימוש הזה, משנים את ההגדרה google_columnar_engine.maintenance_cpu_percentage (GUC). מידע נוסף זמין במאמר בנושא שינוי משאבי ה-CPU למשימות תחזוקה.