סקירה כללית של מנוע מבוסס-עמודות ב-AlloyDB Omni זמינה במאמר בנושא סקירה כללית של מנוע מבוסס-עמודות ב-AlloyDB Omni.
הפעלת מנוע מבוסס-עמודות
כדי להשתמש במנוע מבוסס-עמודות במכונה, מגדירים את הדגל google_columnar_engine.enabled של המכונה לערך on.
שרת יחיד
כדי להגדיר את google_columnar_engine.enabled ל-on, פועלים לפי השלבים הבאים:
מריצים את הפקודה
ALTER SYSTEMPostgreSQL: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 SYSTEMPostgreSQL: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 יש אפשרות להחיל את אופרטור ההצטרפות הווקטורית במקום אופרטור ההצטרפות הרגיל של PostgreSQL. המתכנן מקבל את ההחלטה הזו על ידי השוואה בין העלות של ביצוע השאילתה באמצעות כל אחת מהשיטות.
כדי להפעיל את התכונה 'צירוף וקטורי' במופע, מגדירים את הדגל 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 בשם הטבלה או התצוגה החומרית שרוצים לרענן באופן ידני.
השבתת מנוע מבוסס-עמודות
כדי להשבית את מנוע Columbar במכונה, מגדירים את הדגל google_columnar_engine.enabled לערך off.
שרת יחיד
כדי להגדיר את google_columnar_engine.enabled ל-off, פועלים לפי השלבים הבאים:
- מריצים את הפקודה
ALTER SYSTEMPostgreSQL:
ALTER SYSTEM SET google_columnar_engine.enabled = 'off'
כדי שהשינוי בפרמטרים של התצורה ייכנס לתוקף, צריך להפעיל מחדש את שרת מסד הנתונים:
sudo systemctl restart alloydbomni18
המאמרים הבאים
מומלץ לנסות את ה-codelab בנושא האצת שאילתות של ניתוח נתונים באמצעות מנוע מבוסס-עמודות ב-AlloyDB Omni.