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

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

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

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

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

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

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

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

יתרונות

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

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

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

  • שאיבת אבק תקופתית לטבלאות. ‫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 משנה את ההתנהגות שלה כדי להתחשב בהעדפות שלכם.

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