בדף הזה מוסבר על שמירת נתונים ב-RDB (מסד נתונים של Redis) ב-Memorystore for Redis Cluster.
במאמר ניהול עמידות מוסבר איך להפעיל, להשבית ולעקוב אחרי עמידות RDB.
מידע על שיטות מומלצות לגבי שמירת נתונים ב-RDB זמין במאמר בנושא שיטות מומלצות לשמירת נתונים.
תכונת השמירה של RDB מגנה על הנתונים שלכם על ידי שמירת תמונות מצב של הנתונים באחסון עמיד. אתם בוחרים את התדירות של הצילומים האלה על ידי בחירת מרווח צילום שנע בין שעה אחת ל-24 שעות. אם מתרחשים כשלים בצומת, הנתונים משוחזרים גם במקרים שבהם מעבר לגיבוי לא אפשרי.
בצמתים עם רפליקות, שחזור הנתונים מתבצע קודם מהרפליקה. עם זאת, אם גם הנתונים הראשיים וגם הרפליקה נכשלים בו-זמנית, הצמתים משחזרים את הנתונים מה-snapshot האחרון.
התמדה של RDB לא מוסיפה עלות נוספת לחיוב של המופע. התכונה הזו מתאימה במיוחד למקרים שבהם אפשר להסתפק בנתונים לא עדכניים במידה מסוימת אחרי השחזור. מכיוון ש-Memorystore משתמש בתמונות מצב לשחזור אוטומטי, תמונות מצב לא זמינות לשחזור ידני. חשוב גם לזכור שרק תמונת המצב האחרונה שנוצרה בהצלחה נשמרת.
Memorystore for Redis Cluster תומך גם בשימור נתונים בפורמט AOF, אבל צריך לבחור בין שימור נתונים בפורמט AOF לבין שימור נתונים בפורמט RDB, כי אי אפשר להפעיל את שניהם בו-זמנית. מידע על בחירה בין שני מצבי ההתמדה זמין במאמר סקירה כללית על התמדה. כדי להשיג את הזמינות הכי גבוהה שאפשר, מומלץ להשתמש במופע עם זמינות גבוהה בנוסף להפעלת ההתמדה.
תזמון של תמונות מצב
תזמון של תמונות מצב נקבע לפי שתי הגדרות: זמן ההתחלה של תמונת המצב והמרווח בין תמונות המצב. המרווחים שאפשר להגדיר הם 1h, 6h, 12h ו-24h. לדוגמה, אם מגדירים את זמן ההתחלה לשעה 4:00 ואת המרווח לשעה אחת, תמונות המצב יתחילו בשעה 4:00 ביום שבו הן יופעלו, וימשיכו כל שעה לאחר מכן.
לוחות זמנים של תמונות מצב נבדקים לפי אזור הזמן UTC, ולכן אזורי זמן מקומיים עם שינויים בשעון הקיץ יחוו שינויים בלוח הזמנים. לדוגמה, בתחילת שעון הקיץ בארה"ב ובסופו, שעות ההתחלה המקומיות של משימות בלוח הזמנים של תמונות המצב יוקדמו או יוזזו אחורה בשעה אם אזור הזמן שלכם משתנה בהתאם לשעון הקיץ.
השהיית תמונות מצב
יכול להיות שתרצו להשהות באופן זמני את יצירת התמונות של מסד הנתונים של Redis למשך תקופה מסוימת. למשל, כדי לוודא שלא תהיה השפעה על הביצועים במהלך אירועים קריטיים, או כדי להשבית באופן זמני את התמונות לצורך פתרון בעיות בביצועים.
כדי להשהות את תמונות המצב, צריך להגדיר את שעת ההתחלה לעתיד. אם עושים את זה, תמונת המצב האחרונה נשמרת ומשמשת במקרה של שחזור. כדי להמשיך ליצור תמונות מצב, צריך לשנות את לוח הזמנים של תמונות המצב לשעה שבה רוצים ליצור את תמונת המצב הבאה. מידע נוסף על שינוי לוחות זמנים של תמונות מצב זמין במאמר שינוי המרווח בין תמונות מצב של RDB.
התנהגות השחזור
במקום לטעון מתוך תמונת מצב, הגיבוי האוטומטי של צמתים ב-Memorystore for Redis Cluster מתבצע על ידי מעבר לגיבוי בעותק (failover) של רפליקות. עם זאת, אם צומת נכשל ולא מצליח להתאושש מהעתק, הצומת מתאושש מ-snapshot.
עקביות הנתונים בשחזור
כשמפעילים את האפשרות הזו, המערכת עושה כמיטב יכולתה כדי לוודא שהגיבויים מתבצעים במרווח שצוין. יכולות להיות כמה סיבות לכך שצילום התמונה ייכשל. אם צילום התמונה נכשל ברצף בכמה מרווחים, יכול להיות שהגיבוי האחרון שזמין יהיה ישן מדי.
הזמן המקסימלי שבו הנתונים לא עדכניים בשחזור מתמונת מצב הוא סכום המרווח שצוין מאז תחילת תמונת המצב האחרונה ששוחזרה בהצלחה, והזמן שנדרש לשמירת תמונת המצב הבאה באחסון. במקרה של תקרית שחזור, אפשר להשתמש במדד rdb_save_ages כדי לראות את מסגרת הזמן שבה הנתונים לא עדכניים.
זמן התאוששות
אם צומת נכשל וצריך לשחזר נתונים מקובץ snapshot, הצומת לא זמין במהלך השחזור. זמן השחזור תלוי בגודל של תמונת המצב.
הצילום של תמונת המצב נכשל
אם תמונת מצב נכשלת, המערכת מנסה לשחזר אותה באופן מיידי עם השהיה מעריכית לפני ניסיון חוזר (exponential backoff) של 5 עד 300 שניות. אם יש כמה כשלים רצופים בצילום המצב, הנתונים יהיו ישנים יותר במקרה של שחזור.
השחזור נכשל
כשלים בשחזור הם נדירים אבל יכולים לקרות. אם מתרחשת שגיאת שחזור, הצומת מנסה שוב ושוב עד שהוא משוחזר בהצלחה.
תמונות מצב של מעקב
חשוב לעקוב אחרי תמונות המצב ולהגדיר התראות על תמונות מצב שנכשלו. מידע על שיטות מומלצות לשימוש ב-RDB לשימור נתונים זמין במאמר בנושא שיטות מומלצות לשימוש ב-RDB לשימור נתונים. תמונות מצב שנכשלו יכולות להצביע על צמתים עמוסים מדי, שאולי ימשיכו להתקשות בהתאוששות מתמונת המצב.
רשימת המדדים שזמינים למעקב אחרי תמונות מצב מופיעה במאמר בנושא מדדי נתונים קבועים.
ניהול ההשפעה על הביצועים
כדי לעקוב אחרי ההשפעה של תמונת מצב על הביצועים של מכונת Memorystore, אפשר לעיין במדדים שזמינים דרך Cloud Monitoring, כמו השימוש במעבד (CPU) והשימוש בזיכרון.