תצוגת המטלות

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

ההרשאה הנדרשת

כדי לשלוח שאילתה לתצוגה INFORMATION_SCHEMA.ASSIGNMENTS, צריך את ההרשאה bigquery.reservationAssignments.list לניהול זהויות והרשאות גישה (IAM) בפרויקט. כל אחד מהתפקידים הבאים שמוגדרים מראש ב-IAM כולל את ההרשאה הנדרשת:

  • roles/bigquery.resourceAdmin
  • roles/bigquery.resourceEditor
  • roles/bigquery.resourceViewer
  • roles/bigquery.user
  • roles/bigquery.admin

מידע נוסף על הרשאות ב-BigQuery זמין במאמר בקרת גישה באמצעות IAM.

סכימה

לתצוגה INFORMATION_SCHEMA.ASSIGNMENTS יש את הסכימה הבאה:

שם העמודה סוג נתונים ערך
ddl STRING הצהרת ה-DDL ששימשה ליצירת המטלה הזו.
project_id STRING המזהה של פרויקט הניהול.
project_number INTEGER מספר פרויקט הניהול.
assignment_id STRING מזהה שמזהה באופן ייחודי את ההקצאה.
reservation_name STRING שם ההזמנה שמשמשת להקצאה.
job_type STRING סוג העבודה שיכולה להשתמש בהזמנה. יכול להיות PIPELINE, QUERY, CONTINUOUS, ML_EXTERNAL או BACKGROUND.
assignee_id STRING מזהה שמזהה באופן ייחודי את משאב הנמען.
assignee_number INTEGER מספר שמזהה באופן ייחודי את משאב הנמען.
assignee_type STRING סוג המשאב של מקבל ההקצאה. יכול להיות organization,‏ folder או project.

כדי לשמור על יציבות, מומלץ לציין במפורש את העמודות בשאילתות של סכימת המידע, במקום להשתמש בתו כל כללי (SELECT *). ציון מפורש של העמודות מונע את השבירה של השאילתות אם הסכימה הבסיסית משתנה.

היקף ותחביר

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

שם התצוגה היקף המשאבים היקף האזור
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.ASSIGNMENTS[_BY_PROJECT]
ברמת הפרויקט REGION
מחליפים את מה שכתוב בשדות הבאים:
  • אופציונלי: PROJECT_ID: מזהה הפרויקט ב- Google Cloud . אם לא מציינים פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל.
  • REGION: כל שם של אזור במערך נתונים. לדוגמה, `region-us`.

דוגמה

כדי להריץ את השאילתה בפרויקט שאינו פרויקט ברירת המחדל, מוסיפים את מזהה הפרויקט בפורמט הבא:

`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.ASSIGNMENTS
.

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

  • PROJECT_ID: מזהה הפרויקט שהקציתם לו הזמנות.
  • REGION_NAME: שם האזור.

לדוגמה, `myproject`.`region-us`.INFORMATION_SCHEMA.ASSIGNMENTS.

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

SELECT
  reservation.reservation_name,
  reservation.slot_capacity
FROM
  `RESERVATION_ADMIN_PROJECT.region-REGION_NAME`.
  INFORMATION_SCHEMA.ASSIGNMENTS_BY_PROJECT assignment
INNER JOIN
  `RESERVATION_ADMIN_PROJECT.region-REGION_NAME`.
  INFORMATION_SCHEMA.RESERVATIONS_BY_PROJECT AS reservation
ON
  (assignment.reservation_name = reservation.reservation_name)
WHERE
   assignment.assignee_id = "PROJECT_ID"
  AND job_type = "QUERY";