הגדרת ניקוי אוטומטי מותאם

בחירת גרסה של מאמר העזרה:

בדף הזה מובאת סקירה כללית על התכונה 'ניקוי אוטומטי אדפטיבי' ב-AlloyDB Omni, ומוסבר איך מגדירים אותה.

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

מידע נוסף על פעולת ה-vacuuming מופיע במאמר Routine vacuuming.

כדי לבצע אוטומציה של תהליך ה-vacuuming ועדכון נתוני הטבלה באופן קולקטיבי,‏ AlloyDB Omni תומך ב-autovacuum אדפטיבי. Adaptive autovacuum מאפשרת כוונון אוטומטי של עומס העבודה של vacuum כשעומס העבודה משתנה, מסירה טאפלים לא פעילים ומעדכנת את נתוני הטבלה.

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

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

יתרונות

היתרונות של התכונה 'התאמה אוטומטית של ניקוי אוטומטי':

  • כוונון אוטומטי של משאבים. ‫AlloyDB Omni מתאים באופן אוטומטי את המשאבים כמו מעבד, קלט/פלט, מספר תהליכי ה-vacuum וזיכרון לתהליך ה-vacuum, בהתאם לסטטוס בזמן אמת של עומס העבודה והמשאבים הזמינים, בלי להשפיע על ביצועי המערכת.

  • מניעה של חזרה למספרים נמוכים במזהי עסקאות ‫AlloyDB Omni עוקב אחרי ההתקדמות של vacuum ואחרי מהירות השימוש במזהה העסקה. במקרה הצורך, AlloyDB Omni מגביל את השימוש במזהי עסקאות על ידי ביצוע פעולת VACUUM בכל טבלה במסד הנתונים, וכך מונע מצב של חזרה למזהה עסקה קודם.

  • שאיבת אבק תקופתית לטבלאות. ‫AlloyDB Omni מפעיל autovacuum על סמך מספר הטופלים הלא פעילים והדפים שצריך לסרוק. הוא מסיר בזמן טאפלים לא פעילים כדי למנוע ניפוח של טבלה או אינדקס.

  • זיהוי אוטומטי של חסימות. ‫AlloyDB Omni מזהה באופן אוטומטי חסימות, כמו טרנזקציות שפועלות במשך זמן רב, טרנזקציות מוכנות יתומות, משבצות שכפול יתומות, ומציג הודעות אזהרה דומות לאלה ביומן postgres:

    Found a backend process PROCESS_ID with a long running transaction whose transaction
    id age AGE is larger than or equal to the transaction age threshold AGE_THRESHOLD.
    

הגדרת ניקוי אוטומטי אדפטיבי

כברירת מחדל, התכונה adaptive autovacuum מופעלת ב-AlloyDB Omni. אפשר להשבית את הניקוי האוטומטי האדפטיבי על ידי הגדרת הדגל enable_google_adaptive_autovacuum של מסד הנתונים של המכונה לערך off.

‫AlloyDB Omni תומך בכמה דגלים סטנדרטיים של מסד נתונים PostgreSQL שקשורים ל-vacuum ול-autovacuum, למשל, vacuum_cost_delay ו-autovacuum_vacuum_cost_delay. כדי להשתמש ב-adaptive autovacuum, לא צריך להגדיר ערכים באף אחד מהדגלים האלה, כי adaptive autovacuum מתאים את עצמו ומבצע אופטימיזציה של ההתנהגות שלו בהתאם לעומסי העבודה בפועל. אם מגדירים ערכים בדגלים האלה, המערכת של adaptive autovacuum משנה את ההתנהגות שלה כדי להתחשב בהעדפות שלכם.

כדי לראות את הרשימה המלאה של דגלים נתמכים של מסד נתונים PostgreSQL שקשורים ל-vacuum ול-autovacuum, אפשר לעיין בדגלי vacuum ובדגלי autovacuum.