סקירה כללית של השחזור

אפשר לשחזר גיבוי של מסד נתונים ב-Spanner למסד נתונים חדש. במסד הנתונים המשוחזר יהיו כל הנתונים והסכימה ממסד הנתונים המקורי בנקודת הזמן version_time של הגיבוי, כולל כל האפשרויות של מסד הנתונים שהוגדרו באמצעות הפקודה ALTER DATABASE SET OPTIONS. עם זאת, הפריטים הבאים לא נכללים במסד הנתונים המשוחזר:

  • הרשאות לניהול זהויות וגישה (IAM) (למעט אלה שמתקבלות בירושה מהמופע שמכיל את מסד הנתונים המשוחזר). אחרי שהשחזור מסתיים, צריך להגדיר הרשאות IAM מתאימות.
  • נתונים פנימיים של כל שינוי בזרם.
  • אורך החיים (TTL) מוגדר על ידי המדיניות בנושא מחיקת נתונים של שורות. צריך להגדיר מחדש את כללי המדיניות האלה אחרי שהשחזור יסתיים. מידע נוסף זמין במאמר בנושא גיבויים ו-TTL.
  • נקודות פיצול שיצרתם כשפיצלתם מראש מסד נתונים. מידע נוסף מופיע במאמר סקירה כללית על פיצול מראש.

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

אפשר להשתמש בשחזור מגיבוי בדרכים הבאות:

איך מתבצע שחזור של מסד נתונים מגיבוי

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

כשמשחזרים מסד נתונים, חשוב לקחת בחשבון את כללי התאימות הבאים לגבי מהדורת Spanner:

  • ‫Spanner תומך בשחזור מסד הנתונים למופע שמשתמש במהדורה באותה רמה או ברמה גבוהה יותר מזו של מופע הגיבוי.
  • אפשר לשחזר את מסד הנתונים למופע שמשתמש במהדורה ברמה נמוכה יותר. עם זאת, פעולת השחזור תיכשל אם במסד הנתונים נעשה שימוש בתכונות שלא זמינות במהדורות ברמה נמוכה יותר.

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

לדוגמה, אם יש לכם גיבוי במכונה שמשתמשת בהגדרה us-west3, אתם יכולים לשחזר את הגיבוי לכל מכונה בפרויקט שמשתמשת גם היא בהגדרה us-west3. עם זאת, כדי לשחזר את הגיבוי הזה למופע שמשתמש בהגדרה us-east1 או למופע בפרויקט אחר, צריך קודם להעתיק את הגיבוי למופע באזור או בפרויקט היעד, ואז לשחזר מהגיבוי שהועתק.

תהליך השחזור מיועד לזמינות גבוהה. אפשר לשחזר את מסד הנתונים אם רוב האזורים והתחומים במופע היעד זמינים.

כדי לשחזר גיבוי שמופעל בו מפתחות הצפנה בניהול הלקוח (CMEK), המפתח והגרסה של המפתח צריכים להיות זמינים ל-Spanner. כברירת מחדל, מסד הנתונים המשוחזר משתמש באותן הגדרות הצפנה כמו הגיבוי. אפשר לשנות את ההתנהגות הזו על ידי ציון הגדרת הצפנה שונה כשמשחזרים את מסד הנתונים. מידע נוסף זמין במאמר בנושא שחזור מגיבוי עם הפעלה של CMEK.

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

שחזור גיבוי לאזור או לפרויקט אחר

אם אתם צריכים לשחזר את הגיבוי לאזור או לפרויקט אחרים, קודם צריך להעתיק את הגיבוי לאזור או לפרויקט הרצויים. אפשר לשחזר את הגיבוי שהועתק מיד אחרי שההעתקה מסתיימת. לפני השחזור, צריך לוודא שמוקצים מספיק צמתים או יחידות עיבוד למופע היעד כדי לתמוך בגודל מסד הנתונים, בהתאם למגבלת האחסון של 10TB לכל צומת. לדוגמה, כדי לשחזר גיבוי של 20TB, צריך לפחות 2 צמתים. אם העתקתם את הגיבוי לפרויקט אחר ואתם רוצים לשחזר אותו שם, ודאו שלפרויקט היעד יש מספיק מכסות של צמתים שנדרשות לשחזור. שחזור של גיבוי שהועתק מתבצע באותו אופן כמו שחזור רגיל.

מצבי שחזור

מסד נתונים משוחזר עובר דרך שלושה מצבים, שמנוהלים על ידי שתי פעולות ממושכות.

  • CREATING: Spanner מתחיל לשחזר על ידי יצירת מסד נתונים חדש והעלאת קבצים מהגיבוי. במהלך המצב הראשוני הזה CREATING מסד הנתונים המשוחזר עדיין לא מוכן לשימוש. בדרך כלל, המצב הזה מסתיים תוך שעה. אחרי שהסטטוס של CREATING יהיה Complete, מסד הנתונים יהיה מוכן לשימוש.

    כדי לעקוב אחרי ההתקדמות של המצב הזה, אפשר להריץ שאילתה על פעולת השחזור הממושכת ש-Spanner מציג במהלך התהליך הזה. היא מחזירה אובייקט RestoreDatabaseMetadata.

    חשוב לשים לב להערות הבאות לגבי הסטטוס CREATING:

    • אם אתם משחזרים למופע אחר, פעולת השחזור שייכת למופע שמכיל את מסד הנתונים המשוחזר, ולא למופע שמכיל את הגיבוי.
    • אי אפשר למחוק את הגיבוי בזמן השחזור ב-Spanner. אפשר למחוק אותו אחרי שהשחזור מסתיים ומסד הנתונים עובר למצב READY.
    • במופע יכולות להיות לכל היותר עשר מסדי נתונים במצב CREATING בגלל שחזור מגיבויים. לא תהיה אפשרות לשחזר גיבוי אחר למופע עד שאחד מעשרת מסדי הנתונים ששוחזרו יעבור למצב READY_OPTIMIZING או READY.
  • READY_OPTIMIZING: אחרי ש-Spanner מטמיע את הגיבוי, הוא מתחיל להעתיק את נתוני הגיבוי למסד הנתונים החדש תוך אופטימיזציה של גודל האחסון שלו. במהלך התהליך הזה, מסד הנתונים מוכן לשימוש. בדרך כלל השלב הזה של השחזור נמשך כמה שעות אם גודל מסד הנתונים הוא פחות מ-100TB.

    אפשר להשתמש במסד הנתונים כרגיל במהלך READY_OPTIMIZING, אבל צריך לשים לב להערות הבאות:

    • זמני האחזור של פעולות קריאה עשויים להיות גבוהים מהרגיל.
    • מדדי האחסון מציגים את הגודל של מסד הנתונים החדש, ולא של הגיבוי. לכן, אם העברת הנתונים עדיין מתבצעת, יכול להיות שבמדדי האחסון של Spanner יוצגו תוצאות שלא משקפות את הגודל הכולל של כל הנתונים.
    • בדומה למצב CREATING, מערכת Spanner לא תאפשר לכם למחוק את הגיבוי המצורף.

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

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

בקרת גישה (IAM)

התפקיד spanner.restoreAdmin נותן לכם הרשאה לשחזר מגיבוי. מידע נוסף מופיע במאמר בקרת גישה באמצעות IAM.

גם לתפקידים הבאים יש גישה לפעולות שחזור ב-Spanner:

  • spanner.admin: יש גישה מלאה לשחזור. לתפקיד הזה יש גישה מלאה לכל המשאבים של Spanner.
  • owner: יש גישה מלאה לשחזור.
  • editor: יש גישה מלאה לשחזור.
  • viewer: יש לו גישה לצפייה בפעולות שחזור ולביצוע פעולות שחזור. לתפקיד הזה אין אפשרות ליצור, לעדכן, למחוק או להעתיק גיבוי.

תמחור

אין חיוב על שחזור מגיבוי.

המאמרים הבאים

  • כדי לשחזר מסד נתונים מגיבוי, אפשר לעיין במאמר בנושא שחזור מגיבוי.