פתרון בעיות במנוע מבוסס-עמודות

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

הוספתם עמודות עם הפניות למנוע מבוסס-העמודות, אבל שאילתת ה-SELECT לא משתמשת בהן

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

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

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

  1. בודקים את סוגי הנתונים הנתמכים.

    חשוב לוודא ש-AlloyDB תומך בכל סוגי הנתונים של העמודות שבהן אתם מתכוונים להשתמש במנוע מבוסס-העמודות. למידע נוסף, קראו את המאמר סוגי נתונים נתמכים. אם AlloyDB לא תומך בסוג נתונים קריטי, אפשר לפנות אל Cloud Customer Care.

  2. לבדוק אילו אופרטורים נתמכים.

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

  3. מריצים את הפקודה EXPLAIN COLUMNAR_ENGINE.

    כדי לזהות ולטפל בבעיות שמונעות משאילתות ספציפיות להשתמש במנוע מבוסס-העמודות, מריצים את הפקודה הבאה של EXPLAIN COLUMNAR_ENGINE:

    EXPLAIN (COLUMNAR_ENGINE, ANALYZE) SELECT column1, column2 FROM my_table WHERE column3 > 100;
    

אי אפשר להוסיף או להסיר טבלאות במנוע מבוסס-העמודות

תיאור: אתם רוצים להוסיף או להסיר טבלאות במנוע מבוסס-העמודות.

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

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

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

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

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

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