עדכון המטא-נתונים של קובץ snapshot של טבלה
במאמר הזה מוסבר איך לעדכן את התיאור, תאריך התפוגה או מדיניות הגישה של תמונת מצב של טבלה באמצעות מסוף Google Cloud , הפקודה bq update או ה-API של tables.patch.
הוא מיועד למשתמשים שמכירים את הטבלאות ואת תמונות המצב של הטבלאות ב-BigQuery.
הרשאות ותפקידים
בקטע הזה מפורטות ההרשאות של ניהול הזהויות והרשאות הגישה (IAM) שנדרשות כדי לעדכן את המטא-נתונים של תמונת מצב של טבלה, והתפקידים המוגדרים מראש ב-IAM שמעניקים את ההרשאות האלה.
הרשאות
כדי לעדכן את המטא-נתונים של תמונת מצב של טבלה, נדרשת ההרשאה הבאה:
| הרשאה | משאב |
|---|---|
bigquery.tables.update
|
Snapshot של הטבלה |
תפקידים
אלה התפקידים המוגדרים מראש ב-BigQuery שכוללים את ההרשאה הנדרשת:
| תפקיד | משאב |
|---|---|
כל אחד מהבאים:bigquery.dataEditorbigquery.dataOwnerbiguqery.admin
|
Snapshot של הטבלה |
מגבלות
אפשר לעדכן את המטא-נתונים של תמונת מצב של טבלה, אבל אי אפשר לעדכן את הנתונים שלה כי הנתונים של תמונת המצב של הטבלה הם לקריאה בלבד. כדי לעדכן את הנתונים של תמונת מצב של טבלה, קודם צריך לשחזר את תמונת המצב של הטבלה לטבלה רגילה, ואז לעדכן את הנתונים של הטבלה הרגילה. מידע נוסף זמין במאמר שחזור תמונות מצב של טבלאות.
עדכון המטא-נתונים של תמונת מצב של טבלה
אפשר לשנות את התיאור, את התפוגה ואת מדיניות הגישה של תמונת מצב של טבלה באותו אופן שבו משנים את המטא-נתונים של טבלה רגילה. בקטעים הבאים מופיעות כמה דוגמאות.
עדכון התיאור
כדי לשנות את התיאור של תמונת מצב של טבלה, אפשר להשתמש באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף BigQuery במסוף Google Cloud .
בחלונית השמאלית, לוחצים על Explorer:

אם החלונית הימנית לא מוצגת, לוחצים על הרחבת החלונית הימנית כדי לפתוח אותה.
בחלונית Explorer, מרחיבים את הפרויקט, לוחצים על Datasets ואז על מערך הנתונים שמכיל את קובץ ה-snapshot של הטבלה.
לוחצים על Overview > Tables ואז על השם של קובץ ה-snapshot של הטבלה שרוצים לעדכן.
עוברים לכרטיסייה פרטים ולוחצים על עריכת הפרטים.
בשדה Description, מוסיפים או מעדכנים את התיאור של קובץ ה-snapshot של הטבלה.
לוחצים על Save.
BQ
מזינים את הפקודה הבאה ב-Cloud Shell:
bq update \ --description="DESCRIPTION" \ PROJECT_ID:DATASET_NAME.SNAPSHOT_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
DESCRIPTION: טקסט שמתאר את תמונת המצב. לדוגמה,Snapshot after table schema change X.. -
PROJECT_ID: מזהה הפרויקט שמכיל את קובץ ה-snapshot. -
DATASET_NAME: שם מערך הנתונים שמכיל את קובץ ה-snapshot. -
SNAPSHOT_NAME: שם קובץ ה-snapshot.
API
מבצעים קריאה ל-method tables.patch עם הפרמטרים הבאים:
| פרמטר | ערך |
|---|---|
projectId |
מזהה הפרויקט שמכיל את קובץ ה-snapshot. |
datasetId |
שם מערך הנתונים שמכיל את קובץ ה-snapshot. |
tableId |
שם תמונת המצב. |
השדה description בגוף הבקשה |
טקסט שמתאר את תמונת המצב. לדוגמה, Snapshot after table schema change X. |
עדיף להשתמש ב-tables.patch ולא ב-tables.update, כי tables.update מחליפה את כל המשאב Table.
לעדכן את תאריך התפוגה
כדי לשנות את תאריך התפוגה של קובץ snapshot של טבלה, אפשר להשתמש באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף BigQuery במסוף Google Cloud .
בחלונית השמאלית, לוחצים על Explorer:

בחלונית Explorer, מרחיבים את הפרויקט, לוחצים על Datasets ואז על מערך הנתונים שמכיל את קובץ ה-snapshot של הטבלה.
לוחצים על Overview > Tables ואז על השם של קובץ ה-snapshot של הטבלה שרוצים לעדכן.
עוברים לכרטיסייה פרטים ולוחצים על עריכת הפרטים.
בשדה Expiration time, מזינים את מועד התפוגה החדש של קובץ ה-snapshot של הטבלה.
לוחצים על Save.
BQ
מזינים את הפקודה הבאה ב-Cloud Shell:
bq update \ --expiration=EXPIRATION_TIME \ PROJECT_ID:DATASET_NAME.SNAPSHOT_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
EXPIRATION_TIME: מספר השניות מהשעה הנוכחית עד למועד התפוגה. -
PROJECT_ID: מזהה הפרויקט שמכיל את קובץ ה-snapshot. -
DATASET_NAME: שם מערך הנתונים שמכיל את קובץ ה-snapshot. -
SNAPSHOT_NAME: שם קובץ ה-snapshot.
API
מבצעים קריאה ל-method tables.patch עם הפרמטרים הבאים:
| פרמטר | ערך |
|---|---|
projectId |
מזהה הפרויקט שמכיל את קובץ ה-snapshot. |
datasetId |
שם מערך הנתונים שמכיל את קובץ ה-snapshot. |
tableId |
שם תמונת המצב. |
השדה expirationTime בגוף הבקשה |
הזמן שבו פג התוקף של תמונת המצב, באלפיות השנייה מאז ראשית הזמן. |
עדיף להשתמש ב-tables.patch ולא ב-tables.update, כי tables.update מחליפה את כל המשאב Table.
עדכון הגישה
כדי לתת למשתמש גישה לצפייה בנתונים בתמונת מצב של טבלה, אפשר להשתמש באחת מהאפשרויות הבאות:
המסוף
נכנסים לדף BigQuery במסוף Google Cloud .
בחלונית השמאלית, לוחצים על Explorer:

בחלונית Explorer, מרחיבים את הפרויקט, לוחצים על Datasets ואז על מערך הנתונים שמכיל את קובץ ה-snapshot של הטבלה.
לוחצים על Overview > Tables, ואז על השם של קובץ ה-snapshot של הטבלה שרוצים לשתף.
בחלונית של תמונת המצב שמופיעה, לוחצים על Share ואז על Add principal.
בחלונית Add principals שמופיעה, מזינים את המזהה של המשתמש שרוצים לתת לו גישה לתמונת המצב של הטבלה.
בתפריט הנפתח Select a role, בוחרים באפשרות BigQuery ואז באפשרות BigQuery Data Viewer.
לוחצים על Save.
BQ
מזינים את הפקודה הבאה ב-Cloud Shell:
bq add-iam-policy-binding \ --member="user:PRINCIPAL" \ --role="roles/bigquery.dataViewer" \ PROJECT_ID:DATASET_NAME.SNAPSHOT_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
PRINCIPAL: חשבון המשתמש שרוצים לתת לו גישה לתמונת המצב של הטבלה. -
PROJECT_ID: מזהה הפרויקט שמכיל את קובץ ה-snapshot. -
DATASET_NAME: שם מערך הנתונים שמכיל את קובץ ה-snapshot. -
SNAPSHOT_NAME: שם קובץ ה-snapshot.
API
מבצעים קריאה ל-method tables.setIamPolicy עם הפרמטרים הבאים:
| פרמטר | ערך |
|---|---|
Resource |
projects/PROJECT_ID/datasets/DATASET_NAME/tables/SNAPSHOT_NAME |
| גוף הבקשה | { "policy": { "bindings": [ { "members": [ "user:PRINCIPAL" ], "role": "roles/bigquery.dataViewer" } ] } } |
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שמכיל את קובץ ה-snapshot. -
DATASET_NAME: שם מערך הנתונים שמכיל את קובץ ה-snapshot. -
SNAPSHOT_NAME: שם קובץ ה-snapshot. -
PRINCIPAL: חשבון המשתמש שרוצים לתת לו גישה לתמונת המצב של הטבלה.
המאמרים הבאים
- הצגת רשימה של קובצי snapshot של טבלאות במערך נתונים.
- הצגת המטא-נתונים של תמונת מצב של טבלה.
- מחיקת קובץ snapshot של טבלה.