מנוע מבוסס-עמודות של AlloyDB Omni מאיץ את העיבוד של שאילתות SQL של סריקות, צירופים וצבירות באמצעות הרכיבים הבאים:
מאגר עמודות שמכיל נתונים של טבלה ותצוגה חומרית של עמודות נבחרות, מאורגנים מחדש בפורמט של עמודות.
מנוע לביצוע שאילתות ותכנון שאילתות בעמודות, שתומך בשימוש במאגר העמודות בשאילתות.
אפשר להשתמש במנוע מבוסס-עמודות במכונה הראשית, במכונה של מאגר קריאה או בשתיהן. אפשר גם להשתמש בהוספה אוטומטית של עמודות כדי לנתח את עומס העבודה ולאכלס באופן אוטומטי את מאגר העמודות בעמודות שמספקות את שיפור הביצועים הכי טוב.
כדי להשתמש במנוע מבוסס-עמודות עם שאילתה ספציפית, כל העמודות שאליהן מתייחסת השאילתה, כמו הצטרפויות וסריקות, צריכות להיות במאגר העמודות.
כברירת מחדל, מנוע העמודות מוגדר לשימוש בזיכרון של המכונה בנפח 1GB. בהתאם לעומס העבודה, לשימוש בזיכרון ולשאלה אם הגדרתם מאגר קריאה, אתם יכולים להקטין את הקצאת הזיכרון של מנוע מבוסס-עמודות במופע הראשי ולהקצות יותר זיכרון למופע של מאגר הקריאה.
כדי לראות ולעקוב אחרי השימוש בזיכרון על ידי מנוע העמודות, אפשר לעיין במאמר בנושא הצגת השימוש בזיכרון של מאגר העמודות. כדי לשנות את גודל הזיכרון שמשמש את מאגר העמודות, אפשר לעיין במאמר בנושא הגדרת הגודל של מאגר העמודות. כדי למצוא את גודל הזיכרון המומלץ של מנוע מבוסס-עמודות למופע שלכם, אפשר לעיין במאמר המלצה על גודל הזיכרון של מאגר העמודות.
סוגי שאילתות שמרוויחות מהשימוש במנוע העמודות
יש שאילתות שמומלץ להריץ באמצעות מנוע עמודות. הרשימה הבאה כוללת פעולות ודפוסי שאילתות שהכי מפיקים תועלת ממנוע העמודות:
| פעולה | דפוסי שאילתות |
|---|---|
| סריקת טבלה | מסננים סלקטיביים, כמו סעיפים WHERE.מספר קטן של עמודות מטבלה גדולה יותר או מתצוגה חומרית. ביטויים כמו LIKE, SUBSTR או TRIM. |
| פונקציות צבירה | רק ביטויים כמו SUM, MIN, MAX, AVG ו-COUNT.בתחילת השאילתה של סריקה עמודתית. לא מקובץ או מקובץ לפי עמודות. |
ORDER-BY |
רק אם האופרטור נמצא בתחילת השאילתה של סריקה עמודתית. |
SORT |
רק אם האופרטור נמצא בתחילת השאילתה של סריקה עמודתית וממיין רק את עמודות הבסיס של הטבלה או התצוגה החומרית. |
LIMIT |
רק אם האופרטור נמצא בתחילת השאילתה של סריקה עמודתית ולפני האופרטורים SORT או GROUP BY. |
INNER HASH JOIN |
רק אם המפתחות שבהם נעשה שימוש הם עמודות ולא נעשה שימוש במגדירי הצטרפות. |
| איחודים סלקטיביים | רק אם ההצטרפות מתבצעת בתחילת השאילתה של סריקה עמודתית. |
למידע נוסף על השאילתות שמתאימות ביותר למנוע העמודות, על השאילתות שבהן נעשה שימוש במנוע העמודות ועל אופן השימוש בו, אפשר לעיין במאמר אימות השימוש במנוע העמודות באמצעות EXPLAIN.
הדרכה: איך משתמשים במנוע מבוסס-עמודות במופע AlloyDB Omni
כדי להשתמש במנוע מבוסס-עמודות במופע AlloyDB Omni, מבצעים את השלבים הבאים ברמה גבוהה:
מפעילים את המנוע במופע.
הפעלת המנוע היא פעולה חד-פעמית שמחייבת הפעלה מחדש של מסד הנתונים.
מוסיפים עמודות למאגר העמודות.
כדי להוסיף עמודות למאגר העמודות, משתמשים באחת מהשיטות הבאות:
שימוש באוטומציה של הוספת עמודות, שכוללת ניתוח של עומס העבודה והוספה אוטומטית של עמודות.
מוסיפים את העמודות באופן ידני על סמך הידע שלכם לגבי עומס העבודה במסדי הנתונים במופע.
אפשר לעקוב אחרי מה שנמצא בחנות העמודות באמצעות התצוגה
g_columnar_relations, ואחרי הוספת העמודות אפשר להשתמש בהצהרהEXPLAINכדי לאמת את השימוש במנוע העמודות בשאילתות SQL.
הוראות מפורטות לשימוש במנוע העמודות מופיעות במאמר הגדרת מנוע העמודות.
אילו נתונים אפשר להוסיף למאגר העמודות
יש מגבלות מסוימות על סוגי הנתונים ומקורות הנתונים שבהם אפשר להשתמש כשמוסיפים עמודות למאגר העמודות.
סוגי נתונים נתמכים
מנוע מבוסס-עמודות תומך רק בעמודות עם סוגי הנתונים המובנים הבאים:
arraybigintbooleanbyteachardatedecimaldouble precisionenumfloat4float8integerjsonjsonbnumericrealserialshortsmallinttexttimestampuuidvarchar
מנוע מבוסס-עמודות מתעלם מניסיונות להוסיף באופן ידני עמודות עם סוגי נתונים לא נתמכים למאגר העמודות.
מקורות נתונים לא נתמכים
מנוע מבוסס-עמודות לא תומך בטבלאות או בתצוגות מהותיות עם המאפיינים הבאים כמקורות נתונים:
טבלאות מחולקות למחיצות (Partitions) שהן לא עלה
טבלאות בשפות זרות
טבלאות או תצוגות עם פחות מ-5,000 שורות
מגבלות של מנוע מבוסס-עמודות
- אם מריצים שאילתת ניתוח בעמודה שיש לה אינדקס, יכול להיות שהאופטימיזציה של AlloyDB Omni תבחר להשתמש בחנות שורות.
- עמודות שנוספו ידנית למאגר העמודות לא יוסרו באופן אוטומטי. כדי להסיר בכוח עמודות שהוספתם באופן ידני, משתמשים בפקודה
google_columnar_engine_dropבמופע. - יכול להיות שהמערכת תוסיף או תסיר עמודות באופן דינמי בהתאם לשימוש בשאילתה.
- לא כל סוגי הנתונים נתמכים במנוע מבוסס-עמודות. לרשימת סוגי הנתונים הנתמכים, ראו סוגי נתונים נתמכים.
עדכונים תכופים בשורות מבטלים את התוקף של נתונים בעמודות. כדי לאמת טבלה או תצוגה חומרית בחנות העמודות, אפשר להפחית את תדירות העדכון או לתזמן רענון של מנוע העמודות בתדירות גבוהה יותר.
כדי לבדוק אם הטבלה או התצוגה מושפעות, אפשר להשוות בין העמודות
invalid_block_countו-total_block_countבg_columnar_relations. אם יש שינויים תכופים או שינויים בהיקף גדול בטבלה או בתצוגה, הערך שלinvalid_block_countיהיה גבוה.