עדכון התוויות
בדף הזה מוסבר איך לעדכן תוויות במשאבים של BigQuery.
לפני שמתחילים
להקצות תפקידים של ניהול זהויות והרשאות גישה (IAM) שנותנים למשתמשים את ההרשאות הנדרשות כדי לבצע כל משימה שמופיעה במסמך הזה. ההרשאות שנדרשות לביצוע משימה (אם יש כאלה) מפורטות בקטע "ההרשאות הנדרשות" של המשימה.
עדכון תוויות של מערך נתונים
אפשר לעדכן תווית של מערך נתונים באמצעות:
- באמצעות מסוף Google Cloud
- באמצעות הצהרות DDL ב-SQL
- שימוש בפקודה
bq updateשל כלי שורת הפקודה של BigQuery - שליחת קריאה ל-method
datasets.patchשל ה-API - שימוש בספריות הלקוח
ההרשאות הנדרשות
כדי לעדכן תווית של מערך נתונים, צריך את הרשאת ה-IAM bigquery.datasets.update.
כל אחד מהתפקידים הבאים שמוגדרים מראש ב-IAM כולל את ההרשאות שנדרשות כדי לעדכן תווית של מערך נתונים:
roles/bigquery.dataOwnerroles/bigquery.admin
בנוסף, אם יש לכם את ההרשאה bigquery.datasets.create, אתם יכולים לעדכן את התוויות של מערכי הנתונים שאתם יוצרים.
למידע נוסף על תפקידים והרשאות של IAM ב-BigQuery, קראו את המאמר תפקידים והרשאות מוגדרים מראש.
עדכון תווית של קבוצת נתונים
כדי לעדכן תוויות במערך נתונים, בוחרים באחת מהאפשרויות הבאות:
המסוף
במסוף Google Cloud , בוחרים את מערך הנתונים.
לוחצים על הכרטיסייה Details ואז על Edit details.
בקטע Labels, משנים את השדות הקיימים Key או Value כדי לעדכן תווית. כדי להוסיף עוד תוויות, לוחצים על Add labels. אפשר להשתמש בכל מפתח רק פעם אחת בכל מערך נתונים, אבל אפשר להשתמש באותו מפתח במערכי נתונים שונים באותו פרויקט.
לוחצים על Save.
SQL
משתמשים בהצהרת ה-DDL ALTER SCHEMA SET OPTIONS כדי להגדיר את התוויות במערך נתונים קיים. הגדרת תוויות מחליפה את כל התוויות הקיימות במערך הנתונים. בדוגמה הבאה מגדירים תווית אחת במערך הנתונים mydataset:
נכנסים לדף BigQuery במסוף Google Cloud .
בעורך השאילתות, מזינים את ההצהרה הבאה:
ALTER SCHEMA mydataset SET OPTIONS (labels = [('sensitivity', 'high')]);
לוחצים על Run.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
BQ
כדי להוסיף עוד תוויות או לעדכן תווית של מערך נתונים, מפעילים את הפקודה bq update עם הדגל set_label. חוזרים על הדגל כדי להוסיף או לעדכן כמה תוויות.
אם מערך הנתונים נמצא בפרויקט אחר, ולא בפרויקט ברירת המחדל, צריך להוסיף את מזהה הפרויקט למערך הנתונים בפורמט הבא: [PROJECT_ID]:[DATASET].
bq update \ --set_label key:value \ project_id:dataset
כאשר:
- key:value תואם לצמד מפתח:ערך של תווית שרוצים להוסיף או לעדכן. אם מציינים מפתח זהה לתווית קיימת, הערך של התווית הקיימת מתעדכן. המפתח חייב להיות ייחודי.
- project_id הוא מזהה הפרויקט.
- dataset הוא מערך הנתונים שמעדכנים.
דוגמה:
כדי לעדכן את התווית department ב-mydataset, מזינים את הפקודה bq update ומציינים את department כמפתח התווית. לדוגמה, כדי לעדכן את התווית department:shipping ל-department:logistics, מזינים את הפקודה הבאה. mydataset נמצא ב-myotherproject, ולא בפרויקט שמוגדר כברירת מחדל.
bq update \
--set_label department:logistics \
myotherproject:mydataset
הפלט אמור להיראות כך:
Dataset 'myotherproject:mydataset' successfully updated.
API
כדי להוסיף תוויות או לעדכן תווית של מערך נתונים קיים, מפעילים את ה-method datasets.patch ומוסיפים או מעדכנים את המאפיין labels של המשאב dataset.
השיטה datasets.update מחליפה את כל המשאב של מערך הנתונים, ולכן עדיף להשתמש בשיטה datasets.patch.
המשך
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Go API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Java
בדוגמה הזו נעשה שימוש בספריית הלקוח של Google HTTP ל-Java כדי לשלוח בקשה ל-BigQuery API.
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Node.js API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
עדכון תוויות של טבלאות ותצוגות
אחרי שיוצרים טבלה או תצוגה, אפשר לעדכן את התווית שלה בדרכים הבאות:
- באמצעות מסוף Google Cloud
- שימוש בפקודה
bq updateשל כלי שורת הפקודה של BigQuery - שליחת קריאה ל-method
tables.patchב-API- מכיוון שתצוגות מטופלות כמו משאבי טבלה, משתמשים ב-
tables.patchכדי לשנות גם תצוגות וגם טבלאות.
- מכיוון שתצוגות מטופלות כמו משאבי טבלה, משתמשים ב-
- שימוש בספריות הלקוח
ההרשאות הנדרשות
כדי לעדכן תווית של טבלה או תצוגה, צריך את הרשאת ה-IAM bigquery.tables.update.
כל אחד מהתפקידים הבאים שמוגדרים מראש ב-IAM כולל את ההרשאות שצריך כדי לעדכן תווית של טבלה או תצוגה:
roles/bigquery.dataEditorroles/bigquery.dataOwnerroles/bigquery.admin
בנוסף, אם יש לכם את ההרשאה bigquery.datasets.create, אתם יכולים לעדכן תוויות של הטבלאות והתצוגות במערכי הנתונים שאתם יוצרים.
במאמר תפקידים והרשאות מוגדרים מראש תוכלו לקרוא מידע נוסף על תפקידים והרשאות של IAM ב-BigQuery.
עדכון תווית של טבלה או תצוגה
כדי לעדכן תווית של טבלה או תצוגה:
המסוף
במסוף Google Cloud , בוחרים את הטבלה או התצוגה.
בחלונית הפרטים, לוחצים על עריכה > עריכת הפרטים.
בקטע Labels, משנים את השדות הקיימים Key או Value כדי לעדכן תווית. כדי להוסיף עוד תוויות, לוחצים על Add labels. אפשר להשתמש בכל מפתח רק פעם אחת בכל טבלה או תצוגה, אבל אפשר להשתמש באותו מפתח בטבלאות או בתצוגות בקבוצות נתונים שונות.
לוחצים על Save.
SQL
משתמשים בהצהרת ה-DDL ALTER TABLE SET OPTIONS כדי להגדיר את התוויות בטבלה קיימת, או בהצהרת ה-DDL ALTER VIEW SET OPTIONS כדי להגדיר את התוויות בתצוגה קיימת. הגדרת תוויות מחליפה את כל התוויות הקיימות בטבלה או בתצוגה. בדוגמה הבאה מוגדרות שתי תוויות בטבלה mytable:
נכנסים לדף BigQuery במסוף Google Cloud .
בעורך השאילתות, מזינים את ההצהרה הבאה:
ALTER TABLE mydataset.mytable SET OPTIONS ( labels = [('department', 'shipping'), ('cost_center', 'logistics')]);
לוחצים על Run.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
BQ
כדי להוסיף תוויות או לעדכן תווית של טבלה או תצוגה, מריצים את הפקודה bq
update עם הדגל set_label. חוזרים על הדגל כדי להוסיף או לעדכן כמה תוויות.
אם הטבלה או התצוגה נמצאות בפרויקט שהוא לא פרויקט ברירת המחדל, צריך להוסיף את מזהה הפרויקט למערך הנתונים בפורמט הבא: project_id:dataset.
bq update \ --set_label key:value \ project_id:dataset.table_or_view
כאשר:
- key:value תואם לצמד מפתח:ערך של תווית שרוצים להוסיף או לעדכן. אם תציינו מפתח זהה לתווית קיימת, הערך של התווית הקיימת יעודכן. המפתח חייב להיות ייחודי.
- project_id הוא מזהה הפרויקט.
- dataset היא קבוצת הנתונים שמכילה את הטבלה או התצוגה שמעדכנים.
- table_or_view הוא השם של הטבלה או התצוגה שמעדכנים.
דוגמה:
כדי לעדכן את התווית department של mytable, מזינים את הפקודה bq update ומציינים את department כמפתח התווית. לדוגמה, כדי לעדכן את התווית department:shipping ל-department:logistics ב-mytable, מזינים את הפקודה הבאה: mytable נמצא ב-myotherproject, ולא בפרויקט ברירת המחדל.
bq update \
--set_label department:logistics \
myotherproject:mydataset.mytable
הפלט אמור להיראות כך:
Table 'myotherproject:mydataset.mytable' successfully updated.
API
כדי להוסיף תוויות או לעדכן תווית של טבלה או תצוגה קיימת, מפעילים את ה-method tables.patch ומוסיפים או מעדכנים את המאפיין labels של משאב הטבלה.
מכיוון שתצוגות מטופלות כמו משאבי טבלה, משתמשים ב-tables.patch כדי לשנות גם תצוגות וגם טבלאות.
השיטה
tables.patch עדיפה על השיטה tables.update, כי השיטה מחליפה את כל המשאב של מערך הנתונים.
המשך
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Go API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Java
בדוגמה הזו משתמשים בספריית הלקוח של Google HTTP ל-Java כדי לשלוח בקשה ל-BigQuery API.
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Node.js API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
עדכון תוויות של משימות
אי אפשר לעדכן תווית של משימה. כדי לעדכן את התווית של משימה, שולחים מחדש את המשימה עם תווית חדשה.
עדכון תוויות ההזמנה
אתם יכולים לעדכן את התווית של ההזמנה. עדכון תווית באמצעות SQL מחליף את כל התוויות הקיימות בהזמנה.
התפקידים שצריך ב-IAM
כדי לקבל את ההרשאה שנדרשת לעדכון תווית של הזמנה, צריך לבקש מהאדמין להקצות לכם את התפקיד BigQuery Resource Editor (roles/bigquery.resourceEditor) ב-IAM בפרויקט הניהול.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקיד המוגדר מראש הזה כולל את ההרשאה bigquery.reservations.update, שנדרשת כדי לעדכן תווית להזמנה.
יכול להיות שתוכלו לקבל את ההרשאה הזו גם בתפקידים בהתאמה אישית או בתפקידים מוגדרים מראש.
עדכון תווית בהזמנה
כדי לעדכן תווית של הזמנה:
המסוף
נכנסים לדף BigQuery במסוף Google Cloud .
בתפריט הניווט, לוחצים על Workload management.
לוחצים על הכרטיסייה Slot reservations.
מוצאים את ההזמנה שרוצים לעדכן.
מרחיבים את האפשרות פעולות.
לוחצים על Edit.
כדי להרחיב את הקטע Advanced settings, לוחצים על החץ .
מעדכנים את השמות של צמד המפתח/ערך.
לוחצים על Save.
BQ
כדי לעדכן תווית של הזמנה, מריצים את הפקודה bq update עם הדגל set_label והדגל --reservation. כדי לעדכן כמה תוויות, חוזרים על הדגל.
bq update --set_label KEY:VALUE --reservation RESERVATION_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
KEY:VALUE: צמד מפתח/ערך של תווית שרוצים לעדכן בהזמנה. המפתח חייב להיות ייחודי. המפתחות והערכים יכולים להכיל רק אותיות קטנות, ספרות, קווים תחתונים ומקפים. כל התווים צריכים להיות בקידוד UTF-8, ואפשר להשתמש בתווים בינלאומיים. כדי לעדכן כמה תוויות בהזמנה, חוזרים על הדגל--set_labelומציינים מפתח ייחודי לכל תווית. -
RESERVATION_NAME: שם ההזמנה.
SQL
כדי לעדכן תווית של מקום שמור, משתמשים בהצהרת ה-DDL ALTER RESERVATION SET OPTIONS כדי להגדיר את התוויות במקום שמור קיים. הגדרת תוויות מחליפה את כל התוויות הקיימות בהזמנה. בדוגמה הבאה מוגדרת תווית להזמנה myreservation:
נכנסים לדף BigQuery במסוף Google Cloud .
בעורך השאילתות, מזינים את ההצהרה הבאה:
ALTER RESERVATION myreservation SET OPTIONS ( labels = [('sensitivity', 'high')]);
לוחצים על Run.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
המרת תוויות לתגים
תווית שיש לה מפתח עם ערך ריק משמשת כתג. אפשר ליצור תווית חדשה בלי ערך, או להפוך תווית קיימת לתג בקבוצת נתונים, בטבלה או בתצוגה. אי אפשר להמיר תווית של משימה לתג.
תגים יכולים להיות שימושיים במצבים שבהם אתם מתייגים משאב, אבל לא צריכים את הפורמט key:value. לדוגמה, אם יש לכם טבלה שמכילה נתוני בדיקה שמשמשים כמה קבוצות (תמיכה, פיתוח וכו'), אתם יכולים להוסיף לטבלה את התג test_data כדי לזהות אותה.
ההרשאות הנדרשות
כדי להמיר תווית לתג, צריך את הרשאות ה-IAM הבאות:
bigquery.datasets.update(מאפשר להמיר תווית של מערך נתונים)bigquery.tables.update(מאפשר להמיר טבלה או תווית תצוגה)
כל אחד מהתפקידים הבאים שמוגדרים מראש ב-IAM כולל את ההרשאות שנדרשות כדי להמיר תווית של מערך נתונים:
roles/bigquery.dataOwnerroles/bigquery.admin
כל אחד מהתפקידים הבאים שמוגדרים מראש ב-IAM כולל את ההרשאות שדרושות כדי להמיר תווית של טבלה או תצוגה:
roles/bigquery.dataEditorroles/bigquery.dataOwnerroles/bigquery.admin
בנוסף, אם יש לכם את ההרשאה bigquery.datasets.create, אתם יכולים לעדכן את התוויות של מערכי הנתונים שאתם יוצרים, ושל הטבלאות והתצוגות במערכי הנתונים האלה.
במאמר תפקידים והרשאות מוגדרים מראש תוכלו לקרוא מידע נוסף על תפקידים והרשאות של IAM ב-BigQuery.
המרת תווית לתג
כדי להמיר תווית לתג:
המסוף
במסוף Google Cloud , בוחרים את מערך הנתונים, הטבלה או התצוגה.
פותחים את החלונית עריכת פרטים:
- במערך נתונים, לוחצים על הכרטיסייה Details ואז על Edit details.
- בטבלה או בתצוגה, לוחצים על Edit > Edit details בחלונית הפרטים.
בקטע Labels, מוחקים את הערך בשדה Value של התווית שרוצים לעדכן.
לוחצים על Save.
BQ
כדי להמיר תווית לתג, משתמשים בפקודה bq update עם הדגל set_label. מציינים את המפתח, מוסיפים נקודתיים ומשאירים את הערך ריק. הפעולה הזו מעדכנת תווית קיימת לתג.
bq update \ --set_label key: \ resource_id
כאשר:
- key: הוא מפתח התווית שרוצים לעדכן לתג.
- resource_id הוא שם תקין של מערך נתונים, טבלה או תצוגה. אם המשאב נמצא בפרויקט אחר מפרויקט ברירת המחדל, מוסיפים את מזהה הפרויקט בפורמט הבא:
project_id:dataset.
דוגמאות:
מזינים את הפקודה הבאה כדי לשנות את התווית הקיימת test_data:development ב-mydataset לתג. mydataset נמצא ב-myotherproject, ולא בפרויקט ברירת המחדל.
bq update --set_label test_data: myotherproject:mydataset
הפלט אמור להיראות כך:
Dataset 'myotherproject:mydataset' successfully updated.
API
כדי להפוך תווית קיימת לתג, מפעילים את ה-method datasets.patch או את ה-method tables.patch ומחליפים את ערכי התווית במחרוזת הריקה ("") במשאב של מערך הנתונים או במשאב של הטבלה.
מכיוון שתצוגות מטופלות כמו משאבי טבלה, משתמשים ב-tables.patch כדי לשנות גם תצוגות וגם טבלאות. בנוסף, מכיוון שה-method tables.update מחליפה את כל המשאב של מערך הנתונים, עדיף להשתמש ב-method tables.patch.
המאמרים הבאים
- איך מוסיפים תוויות למשאבים ב-BigQuery
- איך מציגים תוויות במשאבים של BigQuery
- איך מסננים משאבים באמצעות תוויות
- איך מוחקים תוויות ממשאבים ב-BigQuery
- איך משתמשים בתוויות במנהל המשאבים.