שחזור של מערכי נתונים שנמחקו
במאמר הזה מוסבר איך לשחזר (או לבטל את המחיקה) של מערך נתונים שנמחק ב-BigQuery.
אתם יכולים לשחזר מערך נתונים כדי להחזיר אותו למצב שבו הוא היה כשהוא נמחק. אפשר לשחזר רק קבוצות נתונים שנמצאות בחלון הזמן של הנסיעה אחורה בזמן. השחזור הזה כולל את כל האובייקטים שהיו במערך הנתונים, את מאפייני מערך הנתונים ואת הגדרות האבטחה. בקטע מגבלות מוסבר על משאבים שלא ניתן לשחזר.
מידע על שחזור של טבלה או תמונת מצב שנמחקו זמין במקורות המידע הבאים:
מגבלות
ריכזנו רשימה של מגבלות שקשורות לשחזור של מערך נתונים:
- יכול להיות שקבוצות הנתונים ששוחזרו יפנו למנהלי אבטחה שכבר לא קיימים.
- הפניה למערך נתונים שנמחק במערכי נתונים מקושרים לא משוחזרת כשמבצעים את הפעולה הזו. כדי לשחזר את הקישורים באופן ידני, המנויים צריכים להירשם מחדש.
- כדי לשחזר מערך נתונים שנמחק ולהשתמש בתכונה 'מסע בזמן' כדי לשחזר את הטבלאות שלו, צריך ליצור מחדש את מערך הנתונים באותו אזור שבו הוא אוחסן במקור. אם יוצרים מחדש את מערך הנתונים באזור אחר, השחזור באמצעות תכונת Time Travel נכשל.
- תגי העסק לא ישוחזרו כשמבצעים את הפעולה הזו.
- צריך לרענן באופן ידני תצוגות חומריות ולאשר מחדש תצוגות מורשות, מערכי נתונים מורשים ושגרות מורשות.
- אי אפשר לשחזר תצוגה לוגית ישירות. עם זאת, אפשר לבטל את המחיקה של מערך הנתונים או ליצור מחדש את התצוגה כדי לשחזר את התצוגה הלוגית. מידע נוסף על הפתרונות האלה זמין במאמר שחזור תצוגה.
- טבלה ב-BigQuery עם CDC לא מפעילה מחדש משימות של החלת שינויים ברקע כשמשחזרים אותה כחלק ממערך נתונים שבוטל בו המחיקה.
יכולות לעבור עד 24 שעות עד שמערך נתונים משוחזר יופיע בתוצאות החיפוש ב-BigQuery.
כשמוחקים משאבים מורשים (תצוגות, מערכי נתונים ושגרות), יכולות לחלוף עד 24 שעות עד שההרשאה נמחקת. לכן, אם תשחזרו מערך נתונים עם משאב מורשה תוך פחות מ-24 שעות אחרי המחיקה, יכול להיות שלא יהיה צורך בהרשאה מחדש. מומלץ תמיד לאמת את ההרשאה אחרי שמשחזרים משאבים.
אחרי שמבטלים את המחיקה של מערך נתונים, אי אפשר למחוק אותו במשך שבעת הימים הבאים. אפשר למחוק את הישויות של קבוצות הנתונים, כמו טבלאות ושגרות. אם אתם צריכים תקופה קצרה יותר, אתם יכולים לפנות אל Google Cloud התמיכה.
לפני שמתחילים
חשוב לוודא שיש לכם את ההרשאות הנדרשות לניהול זהויות והרשאות גישה (IAM) כדי לשחזר מערך נתונים שנמחק.
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות לשחזור מערך נתונים שנמחק, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM BigQuery User (roles/bigquery.user) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות לשחזור מערך נתונים שנמחק. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי לשחזר מערך נתונים שנמחק, צריך את ההרשאות הבאות:
-
bigquery.datasets.createבפרויקט -
bigquery.datasets.getבמערך הנתונים
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
שחזור של מערך נתונים
כדי לשחזר מערך נתונים, בוחרים באחת מהאפשרויות הבאות:
SQL
משתמשים ב
UNDROP SCHEMAהצהרת שפת הגדרת נתונים (DDL):
במסוף Google Cloud , עוברים לדף BigQuery.
בעורך השאילתות, מזינים את ההצהרה הבאה:
UNDROP SCHEMA
DATASET_ID;מחליפים את
DATASET_IDבמערך הנתונים שרוצים לבטל את המחיקה שלו.מציינים את המיקום של מערך הנתונים שרוצים לבטל את המחיקה שלו. כדי לציין את החלק של המיקום בהצהרת SQL, משתמשים באפשרויות
locationUNDROP SCHEMA
DATASET_ID OPTIONS (location=location);לוחצים על הפעלה.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
API
מבצעים קריאה ל-datasets.undelete.
כשמשחזרים מערך נתונים, יכולות להופיע השגיאות הבאות:
-
ALREADY_EXISTS: כבר קיים מערך נתונים באותו שם באזור שבו ניסיתם לשחזר. אי אפשר להשתמש בביטול מחיקה כדי להחליף או למזג מערכי נתונים. -
NOT_FOUND: חלף הזמן שבו אפשר לשחזר את מערך הנתונים, הוא לא היה קיים אף פעם או שלא ציינתם את המיקום הנכון של מערך הנתונים.
ACCESS_DENIED: אין לכם את ההרשאות הנדרשות לביטול המחיקה של מערך הנתונים הזה.המאמרים הבאים
מידע על שליחת שאילתות לנתונים בנקודת זמן מסוימת זמין במאמר גישה לנתונים היסטוריים.
מידע על שמירת נתונים זמין במאמר שמירת נתונים עם תכונות Time Travel ו-Fail-safe.
במאמר ניהול קבוצות נתונים מוסבר איך למחוק קבוצת נתונים.