לסקירה כללית של המושגים שקשורים למנוע מבוסס-העמודות של AlloyDB, קראו את המאמר סקירה כללית של המנוע מבוסס-העמודות של AlloyDB Omni.
הפעלת המנוע מבוסס-העמודות
כדי להשתמש במנוע מבוסס-עמודות במכונה, מגדירים את הדגל google_columnar_engine.enabled של המכונה לערך on.
שרת יחיד
כדי להגדיר את google_columnar_engine.enabled ל-on, מבצעים את השלבים הבאים:
מריצים את הפקודה
ALTER SYSTEMב-PostgreSQL:ALTER SYSTEM SET google_columnar_engine.enabled = 'on'אם רוצים לשנות את ההגדרות של המנוע מבוסס-העמודות, צריך לפעול לפי ההוראות בקטע הבא לפני שמפעילים מחדש את שרת מסד הנתונים. אחרת, מבצעים את השלב הבא כדי להפעיל מחדש את שרת מסד הנתונים.
כדי שהשינוי בפרמטרים של ההגדרה ייכנס לתוקף, צריך להפעיל מחדש את שרת מסד הנתונים:
sudo systemctl restart alloydbomni18
הגדרת הגודל של מאגר העמודות
כשהמנוע מבוסס-העמודות מופעל במכונה, AlloyDB Omni מקצה חלק מהזיכרון של המכונה לאחסון הנתונים מבוססי-העמודות. הקצאת זיכרון RAM מהיר למאגר העמודות מוודאת ש-AlloyDB Omni יכול לגשת לנתונים העמודתיים במהירות המרבית.
הזיכרון ומטמון האחסון מייצגים יחד את הקיבולת הכוללת של המנוע מבוסס-העמודות.
הגדרת הזיכרון
אפשר להגדיר את ההקצאה לגודל קבוע באמצעות הדגל google_columnar_engine.memory_size_in_mb.
שרת יחיד
כדי להגדיר את הדגל google_columnar_engine.memory_size_in_mb במכונה:
מגדירים את הזיכרון באמצעות הפקודה
ALTER SYSTEMב-PostgreSQL:ALTER SYSTEM SET google_columnar_engine.memory_size_in_mb = COLUMN_MEMORY_SIZE;מחליפים את
COLUMN_MEMORY_SIZEבגודל החדש של נפח האחסון של העמודה, במגה-בייט – לדוגמה,256.כדי שהשינוי בפרמטרים של ההגדרה ייכנס לתוקף, צריך להפעיל מחדש את שרת מסד הנתונים:
sudo systemctl restart alloydbomni18
הגדרת מטמון אחסון
שרת יחיד
מכשירים משותפים או ייעודיים
אתם יכולים להגדיר את המטמון של המנוע מבוסס-העמודות במכשירים ייעודיים או במכשירים משותפים.
הקצאה וטעינה של ספריית המטמון
במכשירים ייעודיים, צריך להקצות דיסקים, ליצור מערכת קבצים, לטעון את ספריית המטמון בנתיב מארח (לדוגמה, /var/lib/postgresql/18/data/columnar_cache) ולוודא שיש לה הרשאות כתיבה למשתמש postgres.
הפעלת המטמון של האחסון העמודתי
מריצים את הפקודה
ALTER SYSTEMכדי להגדיר את הנתיב והגודל של ספריית המטמון:ALTER SYSTEM SET google_columnar_engine.omni_storage_cache_directory = 'CACHE_DIR_PATH'; ALTER SYSTEM SET google_columnar_engine.storage_cache_size = STORAGE_CACHE_SIZE;מחליפים את מה שכתוב בשדות הבאים:
-
CACHE_DIR_PATH: הנתיב לספריית המטמון (לדוגמה,/var/lib/postgresql/18/data/columnar_cache). -
STORAGE_CACHE_SIZE: גודל המטמון של מנוע אחסון העמודות, במגה-בייט.
-
מפעילים מחדש את שרת מסד הנתונים:
sudo systemctl restart alloydbomni18
הפעלת הצטרפות וקטורית
למנוע מבוסס-עמודות יש תכונה של איחוד וקטורי שיכולה לשפר את הביצועים של איחודים על ידי החלת עיבוד וקטורי על שאילתות שעומדות בדרישות.
אחרי שמפעילים את שאילתת האיחוד הווקטורית, מתכנן השאילתות של AlloyDB יכול להחיל את אופרטור שאילתת האיחוד הווקטורית במקום את אופרטור שאילתת האיחוד של הגיבוב (hash) הרגיל של PostgreSQL. ההחלטה מתקבלת על ידי השוואה בין עלות הרצת השאילתה בכל אחת מהשיטות.
כדי להפעיל שאילתת איחוד (join) וקטורית במכונה, מגדירים את הדגל google_columnar_engine.enable_vectorized_join של המכונה לערך on.
כדי להגדיר את הדגל הזה במופע, מריצים את הפקודה ALTER SYSTEM של PostgreSQL:
ALTER SYSTEM SET google_columnar_engine.enable_vectorized_join = 'on';
כברירת מחדל, מערכת AlloyDB Omni מקצה שרשור אחד לתכונה של צירוף וקטורי. כדי להגדיל את מספר השרשורים שזמינים לתכונה הזו, צריך להגדיר את הדגל google_columnar_engine.vectorized_join_threads לערך גבוה יותר. הערך המקסימלי הוא cpu_count * 2.
רענון ידני של המנוע מבוסס-העמודות
כברירת מחדל, כשהמנוע מבוסס-עמודות מופעל, הוא מרענן את מאגר העמודות ברקע.
כדי לרענן ידנית את מנוע העמודות, מריצים את שאילתת ה-SQL הבאה:
SELECT google_columnar_engine_refresh(relation =>'TABLE_NAME');
מחליפים את TABLE_NAME בשם של הטבלה או של התצוגה המהותית שרוצים לרענן ידנית.
השבתת המנוע מבוסס-העמודות
כדי להשבית את מנוע מבוסס-העמודות במכונה, מגדירים את הדגל google_columnar_engine.enabled לערך off.
שרת יחיד
כדי להגדיר את google_columnar_engine.enabled ל-off, מבצעים את הפעולות הבאות:
- מריצים את הפקודה
ALTER SYSTEMב-PostgreSQL:
ALTER SYSTEM SET google_columnar_engine.enabled = 'off'
כדי שהשינוי בפרמטרים של ההגדרה ייכנס לתוקף, צריך להפעיל מחדש את שרת מסד הנתונים:
sudo systemctl restart alloydbomni18
המאמרים הבאים
אפשר לנסות את ה-Codelab האצת שאילתות של ניתוח נתונים באמצעות מנוע מבוסס-עמודות ב-AlloyDB Omni.