תצוגה של JOBS_BY_FOLDER

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

התפקיד הנדרש

כדי לקבל את ההרשאה שנדרשת לשליחת שאילתה לתצוגה INFORMATION_SCHEMA.JOBS_BY_FOLDER, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ BigQuery Resource Viewer (roles/bigquery.resourceViewer) בתיקיית האב. להסבר על מתן תפקידים, קראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

התפקיד שמוגדר מראש מכיל את ההרשאה bigquery.jobs.listAll, שנדרשת כדי לבצע שאילתות בתצוגה INFORMATION_SCHEMA.JOBS_BY_FOLDER.

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

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

סכימה

הנתונים הבסיסיים מחולקים למחיצות לפי העמודה creation_time ומקובצים לפי project_id ו-user_email. העמודה query_info מכילה מידע נוסף על עבודות השאילתה.

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

שם העמודה סוג הנתונים ערך
bi_engine_statistics RECORD אם הפרויקט מוגדר לשימוש ב-BI Engine, השדה הזה מכיל BiEngineStatistics. אחרת NULL.
cache_hit BOOLEAN האם תוצאות השאילתה של העבודה הזו הגיעו ממטמון. אם יש לכם עבודת הצהרה עם כמה שאילתות, cache_hit עבור שאילתת האב היא NULL.
creation_time TIMESTAMP (עמודת חלוקה למחיצות (partitioning)) מועד היצירה של העבודה הזו. החלוקה למחיצות מבוססת על זמן UTC של חותמת הזמן הזו.
destination_table RECORD טבלת היעד של התוצאות, אם יש כאלה.
dml_statistics RECORD אם העבודה היא שאילתה עם פקודת DML, הערך הוא רשומה עם השדות הבאים:
  • inserted_row_count: מספר השורות שהוכנסו.
  • deleted_row_count: מספר השורות שנמחקו.
  • updated_row_count: מספר השורות שעודכנו.
לכל שאר המשרות, הערך הוא NULL.
העמודה הזו מופיעה בתצוגות INFORMATION_SCHEMA.JOBS_BY_USER ו-INFORMATION_SCHEMA.JOBS_BY_PROJECT.
end_time TIMESTAMP שעת הסיום של העבודה הזו, באלפיות השנייה מאז התקופה. השדה הזה מייצג את הזמן שבו העבודה נכנסה למצב DONE.
error_result RECORD פרטים של שגיאות כאובייקטים מסוג ErrorProto.
folder_numbers REPEATED INTEGER מזהי המספרים של התיקיות שמכילות את הפרויקט, החל מהתיקייה שמכילה ישירות את הפרויקט, ואחריה התיקייה שמכילה את תיקיית הבן וכן הלאה. לדוגמה, אם folder_numbers הוא [1, 2, 3], אז התיקייה 1 מכילה מיד את הפרויקט, התיקייה 2 מכילה את 1 והתיקייה 3 מכילה את 2. העמודה הזו מאוכלסת רק ב-JOBS_BY_FOLDER.
job_creation_reason.code STRING מציין את הסיבה ברמה גבוהה ליצירת המשימה.
הערכים האפשריים הם:
  • REQUESTED: נשלחה בקשה ליצירת משימה.
  • LONG_RUNNING: השאילתה פעלה מעבר לזמן קצוב לתפוגה מוגדר במערכת שצוין בשדה timeoutMs ב-QueryRequest. כתוצאה מכך, היא נחשבה לפעולה ממושכת, ולכן נוצרה משימה.
  • LARGE_RESULTS: התוצאות מהשאילתה לא יכולות להיכנס לתגובה בגוף ההודעה.
  • OTHER: המערכת קבעה שצריך להריץ את השאילתה כמשימה.
job_id STRING המזהה של המשרה אם היא נוצרה. אחרת, מזהה השאילתה של שאילתה שמשתמשת במצב יצירה אופציונלי של משימות. לדוגמה, bquxjob_1234.
job_stages RECORD שלבי שאילתה של המשרה.

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

job_type STRING סוג המשרה. יכול להיות QUERY, LOAD, EXTRACT, COPY או NULL. הערך NULL מציין עבודה ברקע.
labels RECORD מערך של תוויות שמוחלות על העבודה כצמדי מפתח/ערך.
parent_job_id STRING המזהה של עבודת ההורה, אם יש כזו.
priority STRING העדיפות של העבודה הזו. הערכים התקפים כוללים INTERACTIVE ו-BATCH.
project_id STRING ‫(Clustering column) מזהה הפרויקט.
project_number INTEGER מספר הפרויקט.
referenced_tables RECORD מערך של ערכי STRUCT שמכילים את השדות הבאים של STRING לכל טבלה שהשאילתה מפנה אליה: project_id, dataset_id ו-table_id. השדה הזה מאוכלס רק עבור משימות של שאילתות שלא נמצאות במטמון.
reservation_id STRING שם ההזמנה הראשית שהוקצתה לעבודה הזו, בפורמט RESERVATION_ADMIN_PROJECT:RESERVATION_LOCATION.RESERVATION_NAME.
בפלט הזה:
  • RESERVATION_ADMIN_PROJECT: השם של הפרויקט בענן של Google שבו מנוהלת ההזמנה
  • RESERVATION_LOCATION: המיקום של ההזמנה
  • RESERVATION_NAME: השם של ההזמנה
edition STRING המהדורה שמשויכת להזמנה שהוקצתה למשרה הזו. מידע נוסף על מהדורות זמין במאמר מבוא למהדורות של BigQuery.
session_info RECORD פרטים על הסשן שבו המשימה הזו הופעלה, אם יש כזה.
start_time TIMESTAMP שעת ההתחלה של העבודה הזו, באלפיות השנייה מאז התקופה. השדה הזה מייצג את הזמן שבו המשימה עוברת מהסטטוס PENDING לסטטוס RUNNING או DONE.
state STRING מצב ההפעלה של העבודה. מדינות תקפות כוללות את PENDING, RUNNING ו-DONE.
statement_type STRING סוג הצהרת השאילתה. לדוגמה, DELETE, INSERT, SCRIPT, SELECT או UPDATE. רשימת הערכים התקינים מופיעה בקטע QueryStatementType.
timeline RECORD ציר הזמן של השאילתה של העבודה. מכיל תמונות מצב של הרצת שאילתות.
total_bytes_billed INTEGER אם הפרויקט מוגדר לשימוש בתמחור על פי דרישה, השדה הזה מכיל את סך הבייטים שחויבו על העבודה. אם הפרויקט מוגדר לשימוש בתמחור לפי תעריף קבוע, לא מחייבים אתכם על בייטים והשדה הזה הוא רק לצורכי מידע.

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

total_bytes_processed INTEGER

המספר הכולל של בייטים שעובדו על ידי העבודה.

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

total_modified_partitions INTEGER המספר הכולל של המחיצות שהעבודה שינתה. השדה הזה מאוכלס עבור משרות LOAD וQUERY.
total_slot_ms INTEGER משבצת הזמן באלפיות השנייה של העבודה במהלך כל משך הזמן שלה במצב RUNNING, כולל ניסיונות חוזרים.
total_services_sku_slot_ms INTEGER סך אלפיות השנייה של משבצות הזמן של המשימה שמופעלת בשירותים חיצוניים ושמחויבת לפי המק"ט של השירותים. השדה הזה מאוכלס רק עבור משימות שכוללות עלויות של שירותים חיצוניים, והוא מכיל את סך העלויות של השימוש ששיטת החיוב שלו היא "SERVICES_SKU".
transaction_id STRING המזהה של העסקה שבה המשימה הזו הופעלה, אם יש כזה.
user_email STRING (Clustering column) כתובת האימייל או חשבון השירות של המשתמש שביצע את העבודה.
principal_subject STRING ייצוג מחרוזת של הזהות של חשבון המשתמש שהפעיל את העבודה.
query_info.resource_warning STRING הודעת האזהרה שמופיעה אם השימוש במשאבים במהלך עיבוד השאילתה חורג מהסף הפנימי של המערכת.
אם עבודת השאילתה הושלמה בהצלחה, השדה resource_warning יאוכלס. בעזרת resource_warning, אתם מקבלים נקודות נתונים נוספות כדי לבצע אופטימיזציה של השאילתות ולהגדיר מעקב אחר מגמות הביצועים של קבוצה שוות ערך של שאילתות באמצעות query_hashes.
query_info.query_hashes.normalized_literals STRING מכיל את ערך הגיבוב של השאילתה. ‫normalized_literals הוא גיבוב הקסדצימלי שמתעלם מהערות, מערכי פרמטרים, מפונקציות מוגדרות על ידי המשתמש וממילוליים.STRING ערך הגיבוב יהיה שונה אם התצוגות הבסיסיות ישתנו, או אם השאילתה מפנה באופן מרומז לעמודות, כמו SELECT *, וסכימת הטבלה משתנה.
השדה הזה מופיע בשאילתות GoogleSQL שבוצעו בהצלחה ולא נמצאו במטמון.
query_info.performance_insights RECORD תובנות לגבי הביצועים של המשימה.
query_info.optimization_details STRUCT אופטימיזציות מבוססות-היסטוריה של המשרה. העמודה הזו מופיעה רק בתצוגה JOBS_BY_PROJECT.
transferred_bytes INTEGER המספר הכולל של בייטים שהועברו בשאילתות בין עננים, כמו משימות העברה בין עננים ב-BigQuery Omni.
materialized_view_statistics RECORD נתונים סטטיסטיים של תצוגות חומריות שנלקחים בחשבון בעבודת שאילתה. (תצוגה מקדימה)
metadata_cache_statistics RECORD נתונים סטטיסטיים על השימוש באינדקס של עמודות מטא-נתונים בטבלאות שהופנו אליהן בעבודת שאילתה.
search_statistics RECORD נתונים סטטיסטיים של שאילתת חיפוש.
query_dialect STRING השדה הזה יהיה זמין במהלך מאי 2025. ניב השאילתה שמשמש לעבודה. הערכים התקפים כוללים:
  • GOOGLE_SQL: נשלחה בקשה לעבודה לשימוש ב-GoogleSQL.
  • LEGACY_SQL: הבקשה לעבודה הייתה להשתמש ב-LegacySQL.
  • DEFAULT_LEGACY_SQL: לא צוין דיאלקט שאילתה בבקשת העבודה. המערכת של BigQuery השתמשה בערך ברירת המחדל של LegacySQL.
  • DEFAULT_GOOGLE_SQL: לא צוין דיאלקט שאילתה בבקשת העבודה. מערכת BigQuery השתמשה בערך ברירת המחדל של GoogleSQL.

השדה הזה מאוכלס רק עבור משימות של שאילתות. אפשר לשלוט בבחירה של דיאלקט השאילתה שמוגדר כברירת מחדל באמצעות הגדרות התצורה.
continuous BOOLEAN האם העבודה היא שאילתה מתמשכת.
continuous_query_info.output_watermark TIMESTAMP מייצג את הנקודה שעד אליה השאילתה המתמשכת עיבדה נתונים בהצלחה.
vector_search_statistics RECORD נתונים סטטיסטיים של שאילתת חיפוש וקטורי.

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

שמירת נתונים

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

היקף ותחביר

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

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

דוגמאות

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

`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.JOBS_BY_FOLDER

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

  • PROJECT_ID: מזהה הפרויקט
  • REGION_NAME: האזור של הפרויקט

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

הצגת משרות אינטראקטיביות

השאילתה הבאה מציגה את מזהה העבודה, זמן היצירה והמצב (PENDING,‏ RUNNING או DONE) של כל העבודות האינטראקטיביות בתיקייה של הפרויקט שצוין:

SELECT
  job_id,
  creation_time,
  state
FROM
  `region-REGION_NAME`.INFORMATION_SCHEMA.JOBS_BY_FOLDER
WHERE
  priority = 'INTERACTIVE';
INFORMATION_SCHEMA

התוצאה אמורה להיראות כך:

+--------------+---------------------------+---------------------------------+
| job_id       |  creation_time            |  state                          |
+--------------+---------------------------+---------------------------------+
| bquxjob_1    |  2019-10-10 00:00:00 UTC  |  DONE                           |
| bquxjob_4    |  2019-10-10 00:00:03 UTC  |  RUNNING                        |
| bquxjob_5    |  2019-10-10 00:00:04 UTC  |  PENDING                        |
+--------------+---------------------------+---------------------------------+