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

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

בדף הזה מובאת סקירה כללית על התכונה AlloyDB Omni adaptive autovacuum ומוסבר איך להגדיר אותה.

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

מידע נוסף על ניקוי מופיע במאמר ניקוי שגרתי.

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

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

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

יתרונות

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

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

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