הפניה לכלי שורת הפקודה של BigQuery

במאמר הזה מוסבר על התחביר, הפקודות, האפשרויות והארגומנטים של bq, כלי שורת הפקודה מבוסס Python ל-BigQuery.

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

דרכים לשימוש בכלי שורת הפקודה של BigQuery

אפשר להזין פקודות של כלי שורת הפקודה של BigQuery ב-Cloud Shell, דרך מסוף Google Cloud או דרך התקנה מקומית של Google Cloud CLI.

פורמט הפקודה

כלי שורת הפקודה של BigQuery משתמש בפורמט הבא:

bq COMMAND [FLAGS] [ARGUMENTS]

אפשר להשתמש בדגלים מסוימים עם כמה פקודות של כלי שורת הפקודה של BigQuery. הדגלים האלה מתוארים בקטע דגלים גלובליים.

דגלים אחרים הם ספציפיים לפקודה, ואפשר להשתמש בהם רק עם פקודה מסוימת של כלי שורת הפקודה של BigQuery. הדגלים הספציפיים לפקודה מתוארים בקטעי הפקודה.

ציון ערכים לדגלים

כשמציינים ערך לדגל, סימן השוויון (=) הוא אופציונלי. לדוגמה, שתי הפקודות הבאות שקולות:

bq ls --format prettyjson myDataset
bq ls --format=prettyjson myDataset

במסמך הזה אנחנו משתמשים בסימן השוויון לשם הבהרה.

חלק מהדגלים בכלי שורת הפקודה של BigQuery הם בוליאניים. אפשר להגדיר את הערך של הדגל ל-true או ל-false. כלי שורת הפקודה של BigQuery מקבל את הפורמטים הבאים להגדרת דגלים בוליאניים.

ערך פורמט דוגמה
true --FLAGNAME=true --debug_mode=true
true --FLAGNAME --debug_mode
false --FLAGNAME=false --debug_mode=false
false --noFLAGNAME --nodebug_mode

במסמך הזה אנחנו משתמשים בפורמט --FLAGNAME=VALUE לסימון דגלים בוליאניים.

כל הדגלים הבוליאניים הם אופציונליים. אם דגל בוליאני לא מופיע, BigQuery משתמש בערך ברירת המחדל של הדגל.

ציון משאבי BigQuery בארגומנטים

הפורמט לציון משאב תלוי בהקשר. במקרים מסוימים, המפריד בין הפרויקט למערך הנתונים הוא נקודתיים (:), ובמקרים אחרים הוא נקודה (.). בטבלה הבאה מוסבר איך לציין טבלה ב-BigQuery בהקשרים שונים.

הקשר פורמט דוגמה
כלי שורת הפקודה של BigQuery PROJECT:DATASET.TABLE myProject:myDataset.myTable
שאילתת GoogleSQL PROJECT.DATASET.TABLE myProject.myDataset.myTable
שאילתת SQL מדור קודם PROJECT:DATASET.TABLE myProject:myDataset.myTable

אם לא מציינים פרויקט, BigQuery משתמש בפרויקט הנוכחי. לדוגמה, אם הפרויקט הנוכחי הוא myProject, אז BigQuery מפרש את myDataset.myTable כ-myProject:myDataset.myTable (או כ-myProject.myDataset.myTable).

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

איך מריצים פקודות

ממקמים את הדגלים הגלובליים לפני הפקודה bq, ואז כוללים דגלים ספציפיים לפקודה. אפשר לכלול כמה דגלים גלובליים או דגלים ספציפיים לפקודה. לדוגמה:

bq --location=us mk --reservation --project_id=project reservation_name

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

  • --FLAG ARGUMENT (כמו בדוגמאות הקודמות)
  • --FLAG=ARGUMENT
  • --FLAG='ARGUMENT'
  • --FLAG="ARGUMENT"
  • --FLAG 'ARGUMENT'
  • --FLAG "ARGUMENT"

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

  • FLAG: דגל גלובלי או דגל שספציפי לפקודה
  • ARGUMENT: הארגומנט של הדגל

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

בדוגמה הזו מוצג איך להריץ שאילתת GoogleSQL בשורת הפקודה:

bq query --nouse_legacy_sql \
'SELECT
   COUNT(*)
 FROM
   `bigquery-public-data`.samples.shakespeare'

אפשר לציין דגלים עם ערכים בוליאניים בלי ארגומנט. אם מציינים את הערך true או false, צריך להשתמש בפורמט FLAG=ARGUMENT.

לדוגמה, הפקודה הזו מציינת את הערך false לדגל הבוליאני --use_legacy_sql על ידי הצבת no לפני הדגל:

bq query --nouse_legacy_sql \
'SELECT
   COUNT(*)
 FROM
   `bigquery-public-data`.samples.shakespeare'

לחלופין, כדי לציין את false כארגומנט של הדגל, אפשר להזין את הפקודה הבאה:

bq query --use_legacy_sql=false \
'SELECT
   COUNT(*)
 FROM
   `bigquery-public-data`.samples.shakespeare'

הרצת פקודות בסקריפט

אפשר להריץ את כלי שורת הפקודה של BigQuery בסקריפט, כמו שמריצים פקודה של Google Cloud CLI. בדוגמה הבאה מוצגות פקודות gcloud ו-bq בסקריפט bash:

#!/bin/bash
gcloud config set project myProject
bq query --use_legacy_sql=false --destination_table=myDataset.myTable \
'SELECT
   word,
   SUM(word_count) AS count
 FROM
   `bigquery-public-data`.samples.shakespeare
 WHERE
   word LIKE "%raisin%"
 GROUP BY
   word'

שימוש בחשבון שירות

אתם יכולים להשתמש בחשבון שירות כדי לבצע קריאות מורשות ל-API או להריץ משימות של שאילתות בשמכם. כדי להשתמש בחשבון שירות בכלי שורת הפקודה של BigQuery, צריך לתת לחשבון השירות הרשאת גישה ל- Google Cloud . למידע נוסף, ראו gcloud auth activate-service-account.

כדי להתחיל להריץ פקודות של bq באמצעות התחזות לחשבון שירות, מריצים את הפקודה הבאה:

gcloud config set auth/impersonate_service_account SERVICE_ACCOUNT_NAME

מחליפים את SERVICE_ACCOUNT_NAME בשם של חשבון השירות.

פקודות bq שמריצים עכשיו משתמשות בפרטי הכניסה של חשבון השירות.

כדי להפסיק להריץ פקודות bq מחשבון שירות, מריצים את הפקודה הבאה:

gcloud config unset auth/impersonate_service_account

הגדרת ערכי ברירת מחדל לתכונות ניסיוניות של שורת הפקודה

אפשר להגדיר ערכי ברירת מחדל לסימון שורת הפקודה על ידי הכללתם בקובץ התצורה של כלי שורת הפקודה bq, ‏ .bigqueryrc. לפני שמגדירים את אפשרויות ברירת המחדל, צריך ליצור קובץ .bigqueryrc. אפשר להשתמש בעורך הטקסט המועדף כדי ליצור את הקובץ. אחרי שיוצרים את הקובץ .bigqueryrc, אפשר לציין את הנתיב לקובץ באמצעות הדגל הגלובלי --bigqueryrc.

אם לא מציינים את הדגל --bigqueryrc, נעשה שימוש במשתנה הסביבה BIGQUERYRC. אם לא מציינים נתיב, המערכת משתמשת בנתיב ~/.bigqueryrc. נתיב ברירת המחדל הוא $HOME/.bigqueryrc.

איך מוסיפים דגלים ל-.bigqueryrc

כדי להוסיף ערכי ברירת מחדל לדגלים של שורת הפקודה אל .bigqueryrc:

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

לדוגמה:

--apilog=stdout
--format=prettyjson
--location=US

[query]
--use_legacy_sql=false
--max_rows=100
--maximum_bytes_billed=10000000

[load]
--destination_kms_key=projects/myproject/locations/mylocation/keyRings/myRing/cryptoKeys/myKey

בדוגמה שלמעלה מוגדרים ערכי ברירת מחדל לדגלים הבאים:

  • הדגל הגלובלי --apilog מוגדר לערך stdout כדי להדפיס את פלט ניפוי הבאגים במסוףGoogle Cloud .
  • הדגל הגלובלי --format מוגדר ל-prettyjson כדי להציג את פלט הפקודה בפורמט JSON שקריא לאנשים.
  • הדגל הגלובלי --location מוגדר למיקום במספר אזורים US.
  • הדגל query הספציפי לפקודה --use_legacy_sql מוגדר לערך false כדי להגדיר את תחביר השאילתות של GoogleSQL כברירת מחדל.

  • הדגל הספציפי לפקודה query,‏ --max_rows, מוגדר לערך 100 כדי לשלוט במספר השורות בפלט של השאילתה.

  • הדגל --maximum_bytes_billed הספציפי לפקודה query מוגדר ל-10,000,000 בייט (10MB) כדי להפסיק שאילתות שקוראות יותר מ-10MB של נתונים.

  • הדגל הספציפי לפקודה load --destination_kms_key מוגדר לערך projects/myproject/locations/mylocation/keyRings/myRing/cryptoKeys/myKey.

עזרה בנושא CLI

כדי לקבל עזרה בכלי שורת הפקודה של BigQuery, מריצים את הפקודות הבאות:

תיאור הפורמט של פקודת העזרה דוגמה
הגרסה המותקנת bq version bq version
רשימה של כל הפקודות עם דוגמאות bq help bq help
תיאור של דגלים כלליים bq --help bq --help
תיאור של פקודה מסוימת bq help COMMAND bq help mk

פתרון בעיות בפקודות CLI

כדי לתעד בקשות שנשלחו והתקבלו:

מוסיפים את הדגל --apilog=PATH_TO_FILE כדי לשמור יומן של פעולות בקובץ מקומי. מחליפים את PATH_TO_FILE במיקום שבו רוצים לשמור את היומן. כלי שורת הפקודה של BigQuery פועל על ידי ביצוע קריאות רגילות ל-API מבוסס-REST, שיכולות להיות שימושיות כשמנסים לפתור בעיות. כדאי גם לצרף את היומן הזה כשמדווחים על בעיות ל-Cloud Customer Care.

אם משתמשים ב-- או ב-stdout במקום בנתיב, היומן מודפס במסוף Google Cloud . הגדרת --apilog ל-stderr מוציאה פלט לקובץ השגיאה הרגיל. כדי לרשום ביומן עוד בקשות, משתמשים בדגל --httplib2_debuglevel=LOG_LEVEL. ערך גבוה יותר של LOG_LEVEL ירשום ביומן מידע נוסף על בקשות ה-HTTP.

כדי לפתור את הבעיה:

מזינים את הדגל --format=prettyjson כשמקבלים סטטוס של משרה או כשצופים במידע מפורט על משאבים כמו טבלאות וערכות נתונים. שימוש בדגל הזה יגרום להצגת התגובה בפורמט JSON, כולל המאפיין reason. אפשר להשתמש בנכס reason כדי למצוא הודעות שגיאה.

כדי לקבל מידע נוסף על שגיאות כשמריצים פקודה, משתמשים בדגל --debug_mode.

דגלים כלליים

אפשר להשתמש בדגלים הבאים עם כל פקודת bq, במקרים הרלוונטיים:

--api=ENDPOINT
מציינים את נקודת הקצה ל-API שאליה רוצים לשלוח קריאה. ערך ברירת המחדל הוא https://www.googleapis.com.
--api_version=VERSION
מציינים את גרסת ה-API שבה רוצים להשתמש. ערך ברירת המחדל הוא v2.
--apilog=FILE

כל הבקשות והתשובות של ה-API מתועדות ביומן בקובץ שצוין על ידי FILE. הערכים האפשריים הם:

  • הנתיב לקובץ – יומנים לקובץ שצוין
  • stdout – יומנים לפלט רגיל
  • stderr – יומנים לשגיאה רגילה
  • false – בקשות ותגובות של API לא נרשמות ביומן (ברירת מחדל)
--use_google_auth={true|false}

אם הערך הוא true, האימות מופעל באמצעות ספריות Google Auth. ערך ברירת המחדל הוא true.

--bigqueryrc=PATH

מציין את הנתיב לקובץ התצורה של כלי שורת הפקודה של BigQuery. אם לא מציינים את הדגל --bigqueryrc, הפקודה משתמשת במשתנה הסביבה BIGQUERYRC. אם משתנה הסביבה לא מוגדר, נעשה שימוש ב-$HOME/.bigqueryrc. אם הקובץ הזה לא קיים, המערכת משתמשת ב-~/.bigqueryrc. מידע נוסף מופיע במאמר הגדרת ערכי ברירת מחדל לתכונות ניסיוניות בשורת הפקודה.

--ca_certificates_file=PATH

מציינים את המיקום של קובץ שירות רשות האישורים (CA).

--dataset_id=DATASET_ID

מציינת את מערך הנתונים שמוגדר כברירת מחדל לשימוש בפקודה. המערכת מתעלמת מהדגל הזה אם הוא לא רלוונטי. אפשר לציין את הארגומנט DATASET_ID בפורמט PROJECT:DATASET או DATASET. אם החלק PROJECT חסר, המערכת משתמשת בפרויקט ברירת המחדל. אפשר לשנות את הגדרת ברירת המחדל של הפרויקט באמצעות ציון --project_id הדגל.

--debug_mode={true|false}

אם המדיניות מוגדרת לערך true, מוצגים מעקב אחר שגיאות בחריגות של Python. ערך ברירת המחדל הוא false.

--disable_ssl_validation={true|false}

אם ההגדרה היא true, אימות אישור ה-HTTPS מופעל. ערך ברירת המחדל הוא false.

--discovery_file=PATH

מציין את קובץ ה-JSON לקריאה לצורך גילוי.

--enable_gdrive={true|false}

אם הערך מוגדר ל-false, המערכת מבקשת טוקן OAuth חדש ללא היקף Google Drive. ערך ברירת המחדל הוא true. הבקשה היא לאסימון OAuth חדש עם היקף הרשאות ל-Drive. כדי להגדיר את הדגל הזה לערך false כשמבצעים אימות באמצעות חשבון משתמש, צריך להגדיר את הדגל --use_google_auth לערך false.

--fingerprint_job_id={true|false}

כדי להשתמש במזהה משימה שנגזר מטביעת אצבע של הגדרת המשימה, מגדירים את הערך true. כך נמנעת הרצה של אותה עבודה כמה פעמים בטעות. ערך ברירת המחדל הוא false.

--format=FORMAT

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

  • pretty: פלט של טבלה מעוצבת
  • sparse: פלט טבלה פשוט יותר
  • prettyjson: פורמט JSON קל לקריאה
  • json: קובץ JSON דחוס
  • csv: פורמט csv עם כותרת

הערכים pretty, sparse ו-prettyjson מיועדים לקריאה על ידי בני אדם. הקבצים json ו-csv מיועדים לשימוש בתוכנית אחרת. אם מציינים את none, הפקודה לא יוצרת פלט. אם הדגל --format לא מופיע, פורמט פלט מתאים נבחר על סמך הפקודה.

--headless={true|false}

כדי להפעיל את הסשן bq בלי אינטראקציה של המשתמש, מגדירים את הערך ל-true. לדוגמה, פקודת debug_mode לא נכנסת למאגר הבאגים, והתדירות של הדפסת המידע יורדת. ערך ברירת המחדל הוא false.

--httplib2_debuglevel=DEBUG_LEVEL

ההגדרה הזו קובעת אם יוצג מידע על תוצאות ניפוי הבאגים ב-HTTP. אם הערך של DEBUG_LEVEL גדול מהערך של 0, הפקודה מתעדת ב-stderr את הבקשות והתגובות של שרת ה-HTTP, בנוסף להודעות השגיאה. אם הערך של DEBUG_LEVEL הוא לא גדול מ-0, או אם לא משתמשים בדגל --httplib2_debuglevel, מוצגות רק הודעות שגיאה.

לדוגמה:

--httplib2_debuglevel=1

--job_id=JOB_ID

מציין מזהה משימה למשימה חדשה. הדגל הזה רלוונטי רק לפקודות שיוצרות משימות: cp,‏ extract,‏ load ו-query. אם לא משתמשים בדגל --job_id, הפקודות יוצרות מזהה ייחודי של המשימה. מידע נוסף זמין במאמר בנושא הפעלת עבודות באופן פרוגרמטי.

--job_property=KEY:VALUE

צמד מפתח/ערך שייכלל בשדה המאפיינים של הגדרות העבודה. חוזרים על האפשרות הזו כדי לציין מאפיינים נוספים.

--location=LOCATION

מחרוזת שמתאימה למיקום של אזור או מספר אזורים. חובה להשתמש בדגל המיקום בפקודה bq cancel ובפקודה bq show כשמשתמשים בדגל --jobs כדי להציג מידע על משרות. הדגל של המיקום הוא אופציונלי בפקודות הבאות:

  • query
  • cp
  • load
  • extract
  • partition
  • update
  • wait
  • mk כשמשתמשים בדגלים --dataset, --reservation, --capacity_commitment או --reservation_assignment
  • ls כשמשתמשים בדגלים --reservation, --capacity_commitment או --reservation_assignment

המערכת מתעלמת מהדגל --location בכל הפקודות האחרות.

--max_rows_per_request=MAX_ROWS

מספר שלם שמציין את המספר המקסימלי של שורות שיוחזרו לכל קריאה.

--project_id=PROJECT

מציינת את הפרויקט שבו יש להשתמש בפקודות.

--proxy_address=PROXY

קביעת השם או כתובת ה-IP של מארח ה-proxy שישמש לחיבור אל Google Cloud.

--proxy_password=PASSWORD

קביעת הסיסמה לשימוש באימות מול מארח ה-proxy.

--proxy_port=PORT

מציינים את מספר היציאה שמשמש לחיבור למארח ה-proxy.

--proxy_username=USERNAME

מציינת את שם המשתמש שבו יש להשתמש כשמבצעים אימות מול מארח ה-proxy.

--quiet={true|false} או -q={true|false}

כדי להשבית את עדכוני הסטטוס בזמן שהמשימות פועלות, צריך להגדיר את הערך true. ערך ברירת המחדל הוא false.

--synchronous_mode={true|false} או -sync={true|false}

כדי ליצור את העבודה ולחזור מיד, עם סטטוס השלמה מוצלח כקוד השגיאה, צריך להגדיר את הערך false. אם הערך הוא true, הפקודה ממתינה עד שהעבודה תושלם לפני שהיא חוזרת, ומחזירה את סטטוס השלמת העבודה כקוד השגיאה. ערך ברירת המחדל הוא true.

--trace=token:TOKEN

מציין טוקן מעקב שייכלל בבקשות ל-API.

--use_regional_endpoints={true|false}

בתצוגה מקדימה. כדי להתחבר לנקודת קצה אזורית, מגדירים את הדגל --use_regional_endpoints לערך true ואת הדגל --location לאזור שאליו רוצים להתחבר. ערך ברירת המחדל הוא false.

דגלים גלובליים שיצאו משימוש

הדגל הגלובלי הבא לציון דגלים של כלי שורת הפקודה של BigQuery מקובץ הוצא משימוש: כדי לציין דגלים מקובץ, משתמשים בדגל --bigqueryrc.

--flagfile=PATH

אם מציינים קובץ, הגדרות הדגלים מהקובץ שסופק מוכנסות לכלי שורת הפקודה של BigQuery. ערך ברירת המחדל הוא ''. מידע נוסף זמין במאמר בנושא הגדרת ערכי ברירת מחדל לתכונות ניסיוניות בשורת הפקודה.

פקודות

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

bq add-iam-policy-binding

משתמשים בפקודה bq add-iam-policy-binding כדי לאחזר את מדיניות ניהול הזהויות והרשאות הגישה (IAM) של טבלה או תצוגה, ולהוסיף קישור למדיניות, בפעולה אחת.

הפקודה הזו היא חלופה לתהליך הבא שכולל שלושה שלבים:

  1. משתמשים בפקודה bq get-iam-policy כדי לאחזר את קובץ המדיניות (בפורמט JSON).
  2. עריכת קובץ המדיניות.
  3. משתמשים בפקודה bq set-iam-policy כדי לעדכן את המדיניות עם קישור חדש.

תקציר

bq add-iam-policy-binding [FLAGS] --member=MEMBER_TYPE:MEMBER --role=ROLE
  [--table] RESOURCE

דוגמה

bq add-iam-policy-binding --member=user:myAccount@gmail.com \
  --role=roles/bigquery.dataViewer myDataset.myTable

דגלים וארגומנטים

בפקודה bq add-iam-policy-binding נעשה שימוש בדגלים ובארגומנטים הבאים:

--member=MEMBER_TYPE:MEMBER

חובה. משתמשים בדגל --member כדי לציין את החבר שהוא חלק מקישור מדיניות ה-IAM. חובה להשתמש בדגל --member יחד עם הדגל --role. שילוב אחד של הדגלים --member ו---role שווה לקישור אחד.

הערך MEMBER_TYPE מציין את סוג החבר בקישור מדיניות IAM. אפשר להשתמש באחד מהערכים הבאים:

  • user
  • serviceAccount
  • group
  • domain

הערך MEMBER מציין את כתובת האימייל או הדומיין של החבר בקישור למדיניות IAM.

--role=ROLE

חובה. מציינת את חלק התפקיד בקישור של מדיניות IAM. חובה להשתמש בדגל --role יחד עם הדגל --member. שילוב אחד של הדגלים --member ו---role שווה לקישור אחד.

--table={true|false}

כדי להחזיר שגיאה אם הארגומנט RESOURCE הוא לא מזהה של טבלה או תצוגה, מגדירים את הדגל --table לערך true. ערך ברירת המחדל הוא false. הסימון הבוליאני הזה נתמך כדי לשמור על עקביות עם פקודות אחרות.

RESOURCE

הטבלה או התצוגה שרוצים להוסיף להן את המדיניות.

מידע נוסף זמין במאמר הסבר על מדיניות IAM.

bq cancel

משתמשים בפקודה bq cancel כדי לבטל עבודות של BigQuery.

תקציר

bq [--synchronous_mode=false] cancel JOB_ID

דוגמאות

bq cancel bqjob_12345
bq --synchronous_mode=false cancel bqjob_12345

דגלים וארגומנטים

הפקודה bq cancel משתמשת בדגלים ובארגומנטים הבאים:

--synchronous_mode=false
אם לא רוצים לחכות לסיום הפקודה bq cancel ,מגדירים את הדגל הגלובלי --synchronous_mode לערך false. ערך ברירת המחדל הוא true.
JOB_ID
המשימה שרוצים לבטל.

מידע נוסף על השימוש בפקודה bq cancel זמין במאמר ניהול משימות.

bq cp

משתמשים בפקודה bq cp למשימות הבאות:

תקציר

bq cp [FLAGS] SOURCE_TABLE DESTINATION_TABLE

דוגמה

bq cp myDataset.myTable myDataset.myTableCopy

דגלים וארגומנטים

הפקודה bq cp משתמשת בדגלים ובארגומנטים הבאים:

--append_table={true|false} או -a={true|false}

כדי לצרף טבלה לטבלה קיימת, מגדירים את הערך true. ערך ברירת המחדל הוא false.

אי אפשר להשתמש בהגדרות הדגל --append_table=true ו---clone=true בו-זמנית.

--clone={true|false}

כדי ליצור שיבוט של טבלה, מגדירים את הערך true. טבלת הבסיס יכולה להיות טבלה רגילה, שיבוט של טבלה או תמונת מצב של טבלה. טבלת היעד היא שיבוט של טבלה. ברירת המחדל היא false. אם לא מציינים את --clone=true או את --snapshot=true, טבלת היעד היא מאותו סוג של טבלת הבסיס. נדרש הסימון --no_clobber.

אי אפשר להשתמש בהגדרות הדגל --append_table=true ו---clone=true בו-זמנית.

--destination_kms_key=KEY

מציין מזהה משאב מפתח של Cloud KMS להצפנת הנתונים בטבלת היעד.

לדוגמה:

--destination_kms_key=projects/myProject/locations/global/keyRings/myKeyRing/cryptoKeys/myKey

--expiration=SECONDS

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

--force={true|false} או -f={true|false}

כדי להחליף את טבלת היעד, אם היא קיימת, בלי להציג בקשה, מגדירים את הערך true. ערך ברירת המחדל הוא false. אם טבלת היעד קיימת, הפקודה תציג בקשה לאישור לפני שתדרוס את הטבלה.

--no_clobber={true|false} או -n={true|false}

כדי למנוע דריסה של טבלת היעד, אם היא קיימת, מגדירים את הערך true. ערך ברירת המחדל הוא false. אם טבלת היעד קיימת, היא תידרס.

--restore={true|false}

הסימון הזה יוצא משימוש. כדי ליצור טבלה שאפשר לכתוב בה מתוך תמונת מצב של טבלה, משתמשים בפקודה bq cp או בפקודה bq cp --clone.

--snapshot={true|false}

כדי ליצור snapshot של הטבלה שצוינה בארגומנט SOURCE_TABLE, מגדירים את הערך true. טבלת הבסיס יכולה להיות טבלה רגילה, שיבוט של טבלה או תמונת מצב אחרת של טבלה. ברירת המחדל היא false. אם לא מציינים את --clone=true או את --snapshot=true, טבלת היעד היא מאותו סוג של טבלת הבסיס. נדרש הדגל --no_clobber.

SOURCE_TABLE

הטבלה שרוצים להעתיק.

DESTINATION_TABLE

הטבלה שאליה רוצים להעתיק.

למידע נוסף על השימוש בפקודה cp:

bq extract

משתמשים בפקודה bq extract כדי לייצא נתונים מטבלה אל Cloud Storage.

תקציר

bq extract [FLAGS] RESOURCE DESTINATION

דוגמאות

bq extract --compression=GZIP --destination_format=CSV --field_delimiter=tab \
    --print_header=false myDataset.myTable gs://my-bucket/myFile.csv.gzip
bq extract --destination_format=CSV --field_delimiter='|' myDataset.myTable \
  gs://myBucket/myFile.csv

דגלים וארגומנטים

הפקודה bq extract משתמשת בדגלים ובארגומנטים הבאים:

--compression=COMPRESSION_TYPE

מציין את סוג הדחיסה שבה יש להשתמש עבור קבצים מיוצאים. הערכים האפשריים הם:

  • GZIP
  • DEFLATE
  • SNAPPY
  • NONE

ערך ברירת המחדל הוא NONE.

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

--destination_format=FORMAT

מציינת את הפורמט של הנתונים המיוצאים. הערכים האפשריים הם:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • PARQUET

ערך ברירת המחדל הוא CSV.

--field_delimiter=DELIMITER

בייצוא ל-CSV, מציין את התו שמסמן את הגבול בין העמודות בקובץ הפלט. התו המפריד יכול להיות כל תו יחיד בקידוד ISO-8859-1. אפשר להשתמש ב-\t או ב-tab כדי לציין מפרידי טאבים.

--print_header={true|false}

כדי למנוע הדפסה של שורות כותרת בפורמטים שיש בהם כותרות, צריך להגדיר את הערך false. ערך ברירת המחדל הוא true, ושורות הכותרת נכללות.

RESOURCE

הטבלה שממנה מייצאים.

DESTINATION

מיקום האחסון שאליו מועברים הנתונים המיוצאים.

מידע נוסף על השימוש בפקודה bq extract זמין במאמר ייצוא נתונים מטבלה.

bq get-iam-policy

משתמשים בפקודה bq get-iam-policy כדי לאחזר את מדיניות ה-IAM של משאב ולהדפיס אותה ב-stdout. המשאב יכול להיות טבלה, תצוגה או הזמנת משבצת זמן. המדיניות היא בפורמט JSON.

תקציר

bq get-iam-policy [FLAGS] RESOURCE

דוגמאות

bq get-iam-policy myDataset.myTable
bq get-iam-policy --reservation myReservation

דגלים וארגומנטים

הפקודה bq get-iam-policy משתמשת בדגלים ובארגומנטים הבאים:

--table={true|false} או --t={true|false}
כדי להחזיר שגיאה אם RESOURCE הוא לא מזהה של טבלה או תצוגה, מגדירים את הדגל --table לערך true. ערך ברירת המחדל הוא false. הסימון הבוליאני הזה נתמך כדי לשמור על עקביות עם פקודות אחרות.
--reservation={true|false}
כדי לקבל את מדיניות ה-IAM של הזמנה, מגדירים את האפשרות true (תצוגה מקדימה). ערך ברירת המחדל הוא false. כשמשתמשים בדגל הזה, המערכת מתייחסת אל RESOURCE כאל מזהה הזמנה. להזמנה יכולות להיות קידומות אופציונליות של פרויקט ומיקום: myProject:myLocation.myReservation.
RESOURCE
הטבלה או התצוגה שרוצים לקבל את המדיניות שלהן.

מידע נוסף על הפקודה bq get-iam-policy זמין במאמר שליטה בגישה למשאבים באמצעות IAM.

bq head

משתמשים בפקודה bq head כדי להציג את השורות והעמודות שצוינו בטבלה. כברירת מחדל, מוצגות כל העמודות של 100 השורות הראשונות.

תקציר

bq head [FLAGS] [TABLE]

דוגמה

bq head --max_rows=10 --start_row=50 --selected_fields=field1,field3 \
  myDataset.myTable

דגלים וארגומנטים

הפקודה bq head משתמשת בדגלים ובארגומנטים הבאים:

--job=JOB or -j=JOB
כדי לקרוא את התוצאות של משימת שאילתה, צריך לציין את הדגל הזה עם מזהה משימה תקין.
--max_rows=MAX or -n=MAX
מספר שלם שמציין את מספר השורות המקסימלי להדפסה כשמוצגים נתוני טבלה. ערך ברירת המחדל הוא 100.
--selected_fields=COLUMN_NAMES or -c=COLUMN_NAMES
רשימה מופרדת בפסיקים שמציינת קבוצת משנה של שדות (כולל שדות מקוננים ושדות חוזרים) שיוחזרו כשמוצגים נתוני טבלה. אם לא מציינים את הדגל הזה, כל העמודות מוחזרות.
--start_row=START_ROW or -s=START_ROW
מספר שלם שמציין את מספר השורות שיש לדלג עליהן לפני הצגת נתוני הטבלה. ערך ברירת המחדל הוא 0, והנתונים בטבלה מתחילים בשורה הראשונה.
--table={true|false} או -t={true|false}
כדי להחזיר שגיאה אם ארגומנט הפקודה הוא לא טבלה או תצוגה, צריך להגדיר את הערך true. ערך ברירת המחדל הוא false. הסימון הבוליאני הזה נתמך כדי לשמור על עקביות עם פקודות אחרות.
TABLE
הטבלה שרוצים לאחזר ממנה את הנתונים.

מידע נוסף על השימוש בפקודה bq head זמין במאמר ניהול נתונים בטבלה.

bq help

משתמשים בפקודה bq help כדי להציג את התיעוד של כלי שורת הפקודה של BigQuery בתוך הכלי.

תקציר

bq help [COMMAND]

דגלים וארגומנטים

הפקודה bq help משתמשת בדגלים ובארגומנטים הבאים:

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

bq insert

משתמשים בפקודה bq insert כדי להוסיף שורות של נתונים בפורמט JSON שמופרדים באמצעות שורות חדשות לטבלה מקובץ באמצעות הזנת זרם נתונים. סוגי הנתונים מומרים בהתאם לסוגי העמודות בטבלת היעד. הפקודה הזו מיועדת למטרות בדיקה בלבד. כדי להזרים נתונים ל-BigQuery, משתמשים בשיטת ה-API‏ insertAll.

תקציר

bq insert [FLAGS] TABLE FILE

דוגמאות

bq insert --ignore_unknown_values --template_suffix=_insert myDataset.myTable /tmp/myData.json
echo '{"a":1, "b":2}' | bq insert myDataset.myTable

דגלים וארגומנטים

הפקודה bq insert משתמשת בדגלים ובארגומנטים הבאים:

--ignore_unknown_values={true|false} או -i={true|false}
אם הערך הוא true, מערכת BigQuery מתעלמת מצמדי מפתח/ערך שלא תואמים לסכימה של הטבלה, ומוסיפה את השורה עם הנתונים שתואמים לסכימה. אם מגדירים את הערך false, השורות עם נתונים שלא תואמים לסכימה של הטבלה לא מוכנסות. ערך ברירת המחדל הוא false.
--skip_invalid_rows={true|false} או -s={true|false}
אם בוחרים באפשרות true, מערכת BigQuery מנסה להוסיף את כל השורות התקינות, גם אם יש שורות לא תקינות. אם הערך הוא false, הפקודה תיכשל אם יש שורות לא תקינות. ערך ברירת המחדל הוא false.
--template_suffix=SUFFIX or -x=SUFFIX
אם מציינים את האפשרות הזו, המערכת מתייחסת לטבלת היעד TABLE כתבנית בסיס, ומוסיפה את השורות לטבלת מופע בשם {destination}{templateSuffix}. ‫BigQuery יוצר את טבלת המופע באמצעות הסכימה של תבנית הבסיס.
TABLE
הטבלה שאליה רוצים להוסיף נתונים.
FILE
הקובץ שמכיל את הנתונים שרוצים להוסיף.

מידע נוסף על השימוש בפקודה bq insert זמין במאמר הזרמת נתונים ל-BigQuery.

bq load

משתמשים בפקודה bq load כדי לטעון נתונים לטבלה.

תקציר

bq load [FLAGS] DESTINATION_TABLE SOURCE_DATA [SCHEMA]

דוגמה

bq load myDataset.newTable gs://mybucket/info.csv ./info_schema.json

דגלים וארגומנטים

הפקודה bq load משתמשת בדגלים ובארגומנטים הבאים:

--allow_jagged_rows={true|false}
כדי לאפשר עמודות אופציונליות חסרות בסוף נתוני ה-CSV, מגדירים את הערך true.
--preserve_ascii_control_characters={true|false}
כדי לאפשר הטמעה של תווי בקרה של ASCII בנתוני CSV, מגדירים את הערך ל-true.
--allow_quoted_newlines={true|false}
כדי לאפשר מעברי שורה בתוך מירכאות בנתוני CSV, מגדירים את הערך true.
--autodetect={true|false}
כדי להפעיל זיהוי אוטומטי של סכימה לנתוני CSV ו-JSON, מגדירים את הערך true. ערך ברירת המחדל הוא false. אם --autodetect הוא false ולא צוינה סכימה באמצעות הדגל --schema, וטבלת היעד קיימת, אז נעשה שימוש בסכימה של טבלת היעד.
--clustering_fields=COLUMNS
רשימה מופרדת בפסיקים של עד ארבעה שמות עמודות שמציינת את השדות שבהם יש להשתמש לאשכולות בטבלה.
--column_name_character_map=SCOPE
הגדרה של ההיקף והטיפול בתווים בשמות של עמודות, עם אפשרות להפעלה של שמות גמישים של עמודות. נדרשת האפשרות --autodetect לקובצי CSV. רשימה של הערכים האפשריים זמינה במאמר בנושא load_option_list.
--destination_kms_key=KEY
מציין מזהה של משאב מפתח ב-Cloud KMS להצפנת הנתונים בטבלת היעד.
--encoding=ENCODING_TYPE or -E=ENCODING_TYPE
קידוד התווים שמשמש בנתונים. משתמשים באחד מהערכים הבאים:
  • ISO-8859-1 (נקרא גם Latin-1)
  • UTF-8
--field_delimiter=DELIMITER or -F=DELIMITER
מציין את התו שמסמן את הגבול בין העמודות בנתונים. התו המפריד יכול להיות כל תו יחיד בקידוד ISO-8859-1. אפשר להשתמש ב-\t או ב-tab כדי לציין תווי הפרדה של טאבים.
--ignore_unknown_values={true|false}
אם מגדירים את הערך true לקובצי CSV ו-JSON, המערכת טוענת שורות עם ערכי עמודות נוספים שלא תואמים לסכימת הטבלה, אבל מתעלמת מהעמודות הנוספות. אם מגדירים את הערך true לקובצי Avro,‏ Parquet ו-ORC, המערכת מתעלמת משדות בסכימת הקובץ שלא קיימים בסכימת הטבלה, והם לא נטענים.
--json_extension=JSON_TYPE

מציין את סוג קובץ ה-JSON שצריך לטעון. ההגדרה חלה רק על קובצי JSON. הערכים האפשריים הם:

  • GEOJSON – קובץ GeoJSON שמופרד בתו שורה חדשה

כדי להשתמש בדגל הזה, צריך להגדיר את הדגל --source_format ל-NEWLINE_DELIMITED_JSON.

מידע נוסף זמין במאמר בנושא טעינת קובצי GeoJSON שמופרדים בתו שורה חדשה.

--max_bad_records=MAX

מספר שלם שמציין את המספר המקסימלי של רשומות פגומות שמותרות לפני שהעבודה כולה נכשלת. ערך ברירת המחדל הוא 0. לכל היותר, מוחזרות חמש שגיאות מכל סוג, ללא קשר לערך של --max_bad_records. הדגל הזה רלוונטי רק לטעינת נתונים בפורמט CSV,‏ JSON ו-Google Sheets.

--null_marker=STRING

מחרוזת מותאמת אישית אופציונלית שמייצגת ערך NULL בנתוני CSV.

--projection_fields=PROPERTY_NAMES

אם מגדירים את --source_format ל-DATASTORE_BACKUP, הדגל הזה מציין אילו מאפייני ישות לטעון מייצוא של Datastore. מציינים את שמות הנכסים ברשימה מופרדת בפסיקים. שמות הנכסים הם תלויי אותיות רישיות, והם חייבים להתייחס לנכסים ברמה העליונה. אפשר להשתמש בדגל הזה גם בייצוא של Firestore.

--quote=CHARACTER

מציין תו מרכאות להקפת שדות בנתוני CSV. הארגומנט CHARACTER יכול להיות כל תו באורך בית אחד. ערך ברירת המחדל הוא מירכאות כפולות ("). כדי לציין שאין תו מירכאות, משתמשים במחרוזת ריקה "".

--replace={true|false}

כדי למחוק נתונים וסכימות קיימים כשנטענים נתונים חדשים, צריך להגדיר את האפשרות true. כל מפתח Cloud KMS יוסר גם כן, אלא אם תציינו את הדגל --destination_kms_key. ערך ברירת המחדל הוא false.

שווה לערך WRITE_TRUNCATE של JobConfigurationLoad.writeDisposition.

--schema={SCHEMA_FILE|SCHEMA}

מציינים את הנתיב לקובץ סכימת JSON מקומי או רשימה מופרדת בפסיקים של הגדרות עמודות בפורמט FIELD:DATA_TYPE, FIELD:DATA_TYPE. אם אתם משתמשים בקובץ סכימה, אל תוסיפו סיומת לשם הקובץ.

לדוגמה:

--schema=/tmp/tabledef
--schema=Region:STRING,Quarter:STRING,Total_sales:INTEGER

אם לא מציינים סכימה, הערך של --autodetect הוא false, וטבלת היעד קיימת, המערכת משתמשת בסכימה של טבלת היעד.

--schema_update_option=OPTION

כשמוסיפים נתונים לטבלה (במשימת טעינה או במשימת שאילתה), או כשמחליפים מחיצה בטבלה, צריך לציין איך לעדכן את הסכימה של טבלת היעד. אפשר להשתמש באחד מהערכים הבאים:

  • ALLOW_FIELD_ADDITION: אפשר להוסיף שדות חדשים
  • ALLOW_FIELD_RELAXATION: אפשר להרחיב את ההגדרות של השדות REQUIRED ל-NULLABLE

אפשר לחזור על הדגל הזה כדי לציין כמה אפשרויות לעדכון הסכימה.

--skip_leading_rows=NUMBER_OF_ROWS

מספר שלם שמציין את מספר השורות שצריך לדלג עליהן בתחילת קובץ המקור. ערך ברירת המחדל הוא 0.

--file_set_spec_type=FILE_SET_SPEC_TYPE

מציין איך לפרש כתובות URI של מקורות.

  • FILE_SYSTEM_MATCH: מרחיב את ה-URI של המקור על ידי הצגת רשימת הקבצים ממאגר האובייקטים. זו התנהגות ברירת המחדל אם לא מוגדר FileSetSpecType.
  • NEW_LINE_DELIMITED_MANIFEST: מציין שכתובות ה-URI שסופקו הן קובצי מניפסט שמופרדים באמצעות שורות חדשות, עם URI אחד בכל שורה. לא ניתן להשתמש ב-URI עם תווים כלליים בקובצי המניפסט, וכל קובצי הנתונים שאליהם יש הפניה חייבים להיות באותו מאגר כמו המניפסט.

לדוגמה, אם יש לכם URI של מקור "gs://bucket/path/file" וה-file_set_spec_type הוא FILE_SYSTEM_MATCH, הקובץ ישמש ישירות כקובץ נתונים. אם הערך של file_set_spec_type הוא NEW_LINE_DELIMITED_MANIFEST, כל שורה בקובץ מתפרשת כ-URI שמפנה לקובץ נתונים.

--source_format=FORMAT

הפורמט של נתוני המקור. אפשר להשתמש באחד מהערכים הבאים:

  • CSV
  • NEWLINE_DELIMITED_JSON
  • AVRO
  • DATASTORE_BACKUP (הערך הזה משמש ל-Filestore)
  • PARQUET
  • ORC
--time_partitioning_expiration=SECONDS

מספר שלם שמציין (בשניות) מתי צריך למחוק מחיצה מבוססת-זמן. זמן התפוגה הוא תאריך ה-UTC של המחיצה בתוספת הערך השלם. מספר שלילי מציין שאין תאריך תפוגה.

--time_partitioning_field=COLUMN_NAME

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

--time_partitioning_type=INTERVAL

הגדרה של חלוקה למחיצות (partitioning) לפי זמן בטבלה והגדרת סוג המחיצה. אפשר להשתמש באחד מהערכים הבאים:

  • DAY
  • HOUR
  • MONTH
  • YEAR

סוג המחיצה שמוגדר כברירת מחדל לחלוקה למחיצות לפי זמן הוא DAY.

--use_avro_logical_types={true|false}

אם הדגל --source_format מוגדר לערך AVRO, צריך להגדיר את הדגל הזה לערך true כדי להמיר סוגים לוגיים לסוגים התואמים שלהם (כמו TIMESTAMP) במקום להשתמש רק בסוגים הגולמיים שלהם (כמו INTEGER).

--decimal_target_types=DECIMAL_TYPE

קובעת איך להמיר סוג לוגי של Decimal. שווה ערך ל-JobConfigurationLoad.decimalTargetTypes. אפשר לחזור על האפשרות הזו כדי לציין כמה סוגים של טירגוט.

--parquet_enum_as_string={true|false}

אם הדגל --source_format מוגדר ל-PARQUET ואתם רוצים ש-BigQuery יסיק את סוגי הנתונים הלוגיים של Parquet כערכים מסוג STRING, צריך להגדיר את הדגל הזה ל-true.ENUM ערך ברירת המחדל הוא false.

--parquet_enable_list_inference={true|false}

אם הדגל --source_format מוגדר ל-PARQUET, הדגל הזה מציין אם להשתמש בהסקת סכימה עבור סוגים לוגיים של Parquet LIST.

--reference_file_schema_uri=URI

מציין את הנתיב לקובץ עזר עם סכימת הטבלה הצפויה ליצירת טבלאות חיצוניות. שווה ערך ל-ExternalDataConfiguration.referenceFileSchemaUri. הסימון הבוליאני הזה מופעל בפורמטים Avro,‏ ORC ו-PARQUET.

DESTINATION_TABLE

הטבלה שאליה רוצים לטעון נתונים.

SOURCE_DATA

ה-URI של Cloud Storage של הקובץ שמכיל את הנתונים שרוצים לטעון.

SCHEMA

הסכימה של טבלת היעד.

למידע נוסף על טעינת נתונים מ-Cloud Storage באמצעות הפקודה bq load, אפשר לעיין במאמרים הבאים:

למידע נוסף על טעינת נתונים ממקור מקומי באמצעות הפקודה bq load:

bq ls

משתמשים בפקודה bq ls כדי להציג רשימה של אובייקטים באוסף.

תקציר

bq ls [FLAGS] [RESOURCE]

דוגמה

bq ls myDataset

דגלים וארגומנטים

הפקודה bq ls משתמשת בדגלים ובארגומנטים הבאים:

--all={true|false} או -a={true|false}
כדי להציג את כל התוצאות, מגדירים את האפשרות true. הצגת משימות מכל המשתמשים או מכל מערכי הנתונים, כולל משימות מוסתרות. אין צורך בדגל הזה כשמציגים רשימה של הגדרות העברה או של הפעלות העברה. ערך ברירת המחדל הוא false.
--capacity_commitment={true|false}

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

לדוגמה: bq ls --capacity_commitment=true --location='us'

--datasets={true|false} או -d={true|false}

כדי להציג רשימה של מערכי נתונים, מגדירים את הערך true. ערך ברירת המחדל הוא false.

--filter="FILTER"

מסנן את המשאבים שמופיעים ברשימה כך שיתאימו לארגומנט FILTER.

במערכי נתונים, FILTER מורכב מטריפלט אחד או יותר של ערכים מופרדים ברווח בפורמט labels.KEY:VALUE. אם מספקים יותר משלשה אחת, הפקודה מחזירה רק מערכי נתונים שתואמים לכל השלשות (כלומר, הפקודה משתמשת באופרטור הלוגי AND ולא ב-OR). אם רוצים לציין יותר משלשה אחת, צריך להקיף את הערך FILTER במירכאות.

כדי לסנן לפי תוויות של קבוצות נתונים, משתמשים במפתחות ובערכים שהגדרתם לקבוצות הנתונים.

לדוגמה:

 --filter "labels.department:marketing labels.team:sales"
 

בהגדרות העברה, משתמשים ב-dataSourceIds כמפתח ובאחד ממקורות הנתונים הבאים כערך:

לדוגמה:

   --filter labels.dataSourceIds:dcm_dt
   

להרצות העברה, משתמשים ב-states כמפתח ובאחד או יותר ממצבי ההעברה הבאים כערך:

  • SUCCEEDED
  • FAILED
  • PENDING
  • RUNNING
  • CANCELLED

לדוגמה:

--filter="states:FAILED"

למשימות, משתמשים ב-states כמפתח ובאחד או יותר מהסטטוסים הבאים של המשימה כערך:

  • RUNNING
  • PENDING
  • DONE

לדוגמה:

bq ls --jobs --filter="states:RUNNING"

bq ls --jobs --filter="states:RUNNING,PENDING"
--jobs={true|false} או -j={true|false}
כדי להציג משרות, מגדירים את הערך true. ערך ברירת המחדל הוא false. כברירת מחדל, אפשר לקבל עד 100,000 תוצאות.
--max_creation_time=MAX_CREATION_TIME_MS
מספר שלם שמייצג חותמת זמן של Unix epoch באלפיות השנייה. אם מציינים את האפשרות הזו עם הדגל --jobs, הדגל הזה מציג רק את המשימות שנוצרו לפני חותמת הזמן.
--max_results=MAX_RESULTS or -n=MAX_RESULTS
מספר שלם שמציין את המספר המקסימלי של התוצאות. ערך ברירת המחדל הוא 50, והערך המקסימלי הוא 1,000. אם יש לכם יותר מ-1,000 משימות, אתם יכולים page_tokenלהשתמש בדגל כדי להציג את כל המשימות באמצעות עימוד
.
--min_creation_time=MIN_CREATION_TIME_MS
מספר שלם שמייצג חותמת זמן של ראשית זמן יוניקס (Unix epoch) באלפיות השנייה. אם מציינים את האפשרות --jobs, האפשרות הזו מציגה רק את המשימות שנוצרו אחרי חותמת הזמן.
--message_type=messageTypes:MESSAGE_TYPE

כדי להציג רק הודעות ביומן של העברת נתונים מסוג מסוים, מציינים את messageTypes:MESSAGE_TYPE. הערכים האפשריים הם:

  • INFO
  • WARNING
  • ERROR
--models={true|false} או -m={true|false}

כדי להציג רשימה של מודלים של BigQuery ML, מגדירים את הערך true. ערך ברירת המחדל הוא false.

--page_token=TOKEN או -k=TOKEN

רשימת הפריטים שמתחילה מאסימון הדף שצוין.

--projects={true|false} או -p={true|false}

כדי להציג את כל הפרויקטים, מגדירים את הערך true. ערך ברירת המחדל הוא false.

--reservation={true|false}

כדי להציג רשימה של כל ההזמנות בפרויקט ובמיקום מסוימים, מגדירים את הערך true. ערך ברירת המחדל הוא false. משתמשים בדגלים --project_id ו---location.

לדוגמה:

bq ls --reservation=true --project_id=myProject --location=us

--reservation_assignment={true|false}

כדי להציג רשימה של כל ההקצאות של הזמנות לפרויקט ולמיקום מסוימים, מגדירים את הערך true. ערך ברירת המחדל הוא false. משתמשים בדגלים --project_id ו---location.

--routines={true|false}

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

--row_access_policies

אם מציינים את האפשרות הזו, מוצגות כל מדיניות הגישה ברמת השורה בטבלה. כללי מדיניות גישה ברמת השורה משמשים לאבטחה ברמת השורה. צריך לציין את שם הטבלה בפורמט dataset.table.

--run_attempt=RUN_ATTEMPT

משתמשים בדגל --transfer_run. כדי להציג רשימה של כל הניסיונות להרצת ההעברה שצוינה, מגדירים את הערך RUN_ATTEMPT_UNSPECIFIED. כדי להציג רק את ניסיון ההרצה האחרון, מגדירים את הערך LATEST. ערך ברירת המחדל הוא LATEST.

--transfer_config={true|false}

כדי להציג רשימה של הגדרות העברה בפרויקט ובמיקום שצוינו, מגדירים את הערך true. משתמשים בדגלים --transfer_location ו---project_id. ערך ברירת המחדל הוא false.

--transfer_location=LOCATION

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

--transfer_log={true|false}

משתמשים בדגל --transfer_run. כדי להציג את ההודעות ביומן ההעברה של ההרצה הספציפית של ההעברה, צריך להגדיר את הערך true. ערך ברירת המחדל הוא false.

--transfer_run={true|false}

רשימת ההרצות של ההעברה עבור הגדרת ההעברה שצוינה.

לדוגמה:

bq ls --transfer_run=true projects/myProject/locations/us/transferConfigs/12345

RESOURCE

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

למידע נוסף על השימוש בפקודה bq ls:

bq mk

משתמשים בפקודה bq mk כדי ליצור משאב BigQuery.

תקציר

bq mk TYPE_FLAG [OTHER FLAGS] [ARGS]

דגלים וארגומנטים

הפקודה bq mk מקבלת דגל type שמציין את סוג המשאב שרוצים ליצור, ודגלים נוספים שמשתנים בהתאם לסוג המשאב.

TYPE_FLAG: מגדירים את אחד מהדגלים הבאים לערך true. הבחירה שלכם מציינת את סוג המשאב שייווצר.

הפקודה bq mk תומכת בדגל הבא לכל סוגי המשאבים:

--force={true|false} או -f={true|false}
כדי להתעלם משגיאות אם כבר קיים משאב עם אותו שם, מגדירים את הערך ל-true. אם המשאב כבר קיים, קוד היציאה הוא 0, אבל הגדרת הדגל הזה ל-true לא גורמת לפקודה bq mk להחליף את המשאב. ערך ברירת המחדל הוא false.

הפקודה bq mk תומכת בדגלים נוספים, בהתאם לסוג המשאב שיוצרים, כפי שמתואר בקטעים הבאים.

bq mk --capacity_commitment

כדי לרכוש התחייבות לקיבולת, מגדירים את --capacity_commitment ל-true ומשתמשים בדגלים הבאים:

--location=LOCATION
מציין את המיקום של ההתחייבות.
--plan=PLAN_TYPE

מציין את סוג תוכנית ההתחייבות. צריך להזין אחד מהערכים הבאים:

  • ANNUAL
  • THREE_YEAR

לקוחות שמשתמשים בתמחור קבוע מדור קודם יכולים גם להשתמש באחד מהערכים הבאים:

  • FLEX
  • MONTHLY
  • ANNUAL
--renewal_plan=RENEWAL_TYPE

מציין את סוג תוכנית החידוש. חובה בתוכניות מחויבות ל-ANNUAL או ל-THREE_YEAR. אחת מהאפשרויות הבאות:

  • ANNUAL
  • THREE_YEAR
  • NONE

לקוחות שמשתמשים בתמחור מדור קודם לפי תעריף קבוע יכולים גם להשתמש באחד מהערכים הבאים:

  • FLEX
  • MONTHLY
  • ANNUAL
--project_id=PROJECT_ID

מציינים את הפרויקט שמנהל את המשבצות.

--slots=NUMBER_OF_BASELINE_SLOTS

מציין את מספר המשבצות הבסיסיות לרכישה.

--edition=EDITION

המהדורה שמשויכת להתחייבות לקיבולת. הערך חייב להיות אחד מהערכים הבאים:

  • ENTERPRISE
  • ENTERPRISE_PLUS

מידע נוסף זמין במאמר בנושא התחייבויות לרכישה.

bq mk --connection

יצירת חיבור. יש תמיכה בדגלים הבאים:

--connection_type=CONNECTION_TYPE
סוג החיבור, לדוגמה CLOUD_SQL לחיבורים ל-Cloud SQL.
--properties=PROPERTIES

פרמטרים ספציפיים לחיבור בפורמט JSON. חובה לציין את הערכים instanceId, ‏ database ו-type.

אם יוצרים קישור ל-Spanner ורוצים להשתמש ב-Data Boost, צריך לכלול את זוגות הערכים "useParallelism":true ו-"useDataBoost":true.

--connection_credential=CONNECTION_CREDENTIAL

פרטי הכניסה של החיבור בפורמט JSON. חובה לציין את הערכים של username ו-password.

--project_id=PROJECT_ID

מציינים את מזהה הפרויקט שהחיבור שייך אליו.

--location=LOCATION

קובע את המיקום שבו החיבור יאוחסן.

--display_name=DISPLAY_NAME

קביעת שם ידידותי לחיבור (לא חובה).

--description=DESCRIPTION

תיאור אופציונלי של החיבור.

--iam_role_id=ROLE_ID

ב-BigQuery Omni ב-AWS, מציינים תפקיד IAM שמאפשר גישה למשאב.

צריך להשתמש בפורמט הבא: "arn:aws:iam::AWS_ACCOUNT_ID:role/POLICY_NAME", כאשר:

  • AWS_ACCOUNT_ID הוא מספר המזהה של משתמש AWS IAM של החיבור.
  • POLICY_NAME הוא שם המדיניות.

לדוגמה: "arn:aws:iam::0123456789AB:policy/s3-read-role"

--tenant_id=TENANT_ID

ב-BigQuery Omni ב-Microsoft Azure, מצוין מזהה הדייר של ספריית Microsoft Azure שמכילה את חשבון Microsoft Azure Storage.

CONNECTION_ID

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

מידע נוסף זמין במאמר מבוא לחיבורים.

bq mk --dataset

יצירת מערך נתונים. יש תמיכה בדגלים הבאים:

--add_tags=TAGS
מציינים את התגים שמצורפים למערך הנתונים החדש, בהפרדה באמצעות פסיקים. לדוגמה: 556741164180/env:prod,myProject/department:sales. לכל תג צריך להיות שם מפתח במרחב השמות ושם מקוצר של ערך.
--default_kms_key=KEY
מציין את מזהה משאב המפתח של Cloud KMS שמוגדר כברירת מחדל להצפנת נתוני הטבלה במערך נתונים, אם לא סופק מפתח מפורש במהלך יצירת הטבלה או השאילתה.
--default_partition_expiration=SECONDS
מספר שלם שמציין את זמן התפוגה שמוגדר כברירת מחדל, בשניות, לכל המחיצות בטבלאות מחולקות למחיצות שנוצרו לאחרונה במערך הנתונים. מועד התפוגה של מחיצה מוגדר כתאריך ה-UTC של המחיצה בתוספת הערך המספרי. אם הנכס הזה מוגדר, הערך שלו מבטל את ברירת המחדל של טבלת התפוגה ברמת מערך הנתונים, אם היא קיימת. אם מציינים את האפשרות --time_partitioning_expiration כשיוצרים או מעדכנים טבלה מחולקת למחיצות, תאריך התפוגה של המחיצות ברמת הטבלה מקבל עדיפות על פני תאריך התפוגה של המחיצות שמוגדר כברירת מחדל ברמת מערך הנתונים.
--default_table_expiration=SECONDS
מספר שלם שמציין את משך החיים שמוגדר כברירת מחדל, בשניות, לטבלאות חדשות שנוצרות במערך נתונים. זמן התפוגה מוגדר לשעה הנוכחית ב-UTC בתוספת ערך זה.
--description=DESCRIPTION
מציין את התיאור של מערך הנתונים.
--external_source=EXTERNAL_SOURCE
מציין את מקור הנתונים החיצוני כשיוצרים מערך נתונים מאוחד.
--label=KEY:VALUE
מציינת תווית למערך הנתונים. חוזרים על האפשרות הזו כדי לציין כמה תוויות.
--location=LOCATION או --data_location=LOCATION
מציין את המיקום של מערך הנתונים. מומלץ להשתמש בדגל --location. הדגל --data_location הוא דגל מדור קודם.
--max_time_travel_hours=HOURS
מציינת את משך הזמן בשעות של חלון הזמן לשינוי נתונים של מערך הנתונים. הערך --max_time_travel_hours צריך להיות מספר שלם שהוא כפולה של 24 (48, ‏ 72, ‏ 96, ‏ 120, ‏ 144, ‏ 168) בין 48 (יומיים) ל-168 (7 ימים). אם לא מציינים את הדגל הזה, ברירת המחדל היא 168 שעות.
--storage_billing_model=BILLING_MODEL

מציינת את מודל החיוב על אחסון של מערך נתונים. מגדירים את הערך --storage_billing_model ל-PHYSICAL כדי להשתמש בבייטים פיזיים בחישוב עלויות האחסון, או ל-LOGICAL כדי להשתמש בבייטים לוגיים. ברירת המחדל היא LOGICAL.

כשמשנים את מודל החיוב של מערך נתונים, חולפות 24 שעות עד שהשינוי נכנס לתוקף.

אחרי שמשנים את מודל החיוב של האחסון של מערך נתונים, צריך לחכות 14 ימים לפני שאפשר לשנות שוב את מודל החיוב של האחסון.

מידע נוסף זמין במאמר בנושא יצירת מערכי נתונים.

bq mk --materialized_view

יוצרת תצוגה מהותית. יש תמיכה בדגלים הבאים:

--enable_refresh={true|false}
כדי להשבית את הרענון האוטומטי של תצוגה חומרית, מגדירים את הערך false. ברירת המחדל כשיוצרים תצוגה מהותית היא true.
--refresh_interval_ms=MILLISECONDS
מציין את מספר אלפיות השנייה של מרווח הרענון של תצוגה חומרית. אם לא מציינים את הדגל הזה, מרווח הרענון שמוגדר כברירת מחדל לתצוגה חומרית שהרענון שלה מופעל הוא 1,800,000 אלפיות שנייה, כלומר 30 דקות.

מידע נוסף זמין במאמר יצירה ושימוש בתצוגות חומריות.

bq mk --reservation

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

--target_job_concurrency=CONCURRENCY
מציין את מספר השאילתות שמופעלות בו-זמנית. ערך ברירת המחדל הוא 0, כלומר, הבו-זמניות מחושבת באופן אוטומטי על סמך גודל ההזמנה. מידע נוסף זמין במאמר שימוש בתורים של שאילתות.
--ignore_idle_slots={true|false}
כדי להגביל את העבודות שמופעלות בהזמנה הזו כך שישתמשו רק במשבצות שהוקצו להזמנה, מגדירים את הערך true. ערך ברירת המחדל הוא false. משימות בהזמנה הזו יכולות להשתמש במשבצות בלי פעילות מהזמנות אחרות, או במשבצות שלא הוקצו לאף הזמנה. מידע נוסף זמין במאמר בנושא משבצות זמן פנויות.
--location=LOCATION
מציין את מיקום ההזמנה.
--project_id=PROJECT_ID
מציין את הפרויקט שבבעלותו המקום השמור.
--slots=NUMBER_OF_BASELINE_SLOTS
Specifies the number of baseline slots to allocate to this reservation.
--edition=EDITION
המהדורה שמשויכת להתחייבות לקיבולת. הפורמט חייב להיות אחד מהפורמטים הבאים:
  • STANDARD
  • ENTERPRISE
  • ENTERPRISE_PLUS
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
מספר המשבצות להתאמה אוטומטית לעומס שהוקצו להזמנה. הערך הזה שווה לערך של גודל ההזמנה המקסימלי פחות מספר המשבצות הבסיסיות.
--max_slots=MAXIMUM_NUMBER_OF_SLOTS
המספר המקסימלי של משבצות הזמן שההזמנה תתפוס. צריך להגדיר את הדגל --scaling_mode (תצוגה מקדימה).
--scaling_mode=SCALING_MODE

מצב ההתאמה של ההזמנה. הערך חייב להיות אחד מהערכים הבאים:

  • IDLE_SLOTS_ONLY
  • ALL_SLOTS
  • AUTOSCALE_ONLY
  • SCALING_MODE_UNSPECIFIED

צריך להגדיר את האפשרות עם הסימון --max_slots (תצוגה מקדימה).

מידע נוסף זמין במאמר יצירת הזמנה עם משבצות זמן ייעודיות.

bq mk --reservation_assignment

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

--assignee_id=ASSIGNEE_ID
ID של התיקייה, הארגון או הפרויקט.
--assignee_type=ASSIGNEE_TYPE
מציין את סוג הישות להקצאה להזמנה. אחת מהאפשרויות הבאות:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--job_type=JOB_TYPE
Specifies the type of job to assign to the reservation. אחת מהאפשרויות הבאות:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
  • BACKGROUND
--location=LOCATION
מציין את מיקום ההזמנה.
--project_id=PROJECT_ID
מציין את הפרויקט שבבעלותו המקום השמור.
--reservation_id=RESERVATION_ID
מציין את המזהה של המקום השמור.

מידע נוסף מופיע במאמר בנושא עבודה עם הקצאות של הזמנות.

bq mk --alpha=reservation_groups --reservation-group

יוצרים קבוצת הזמנות. יש תמיכה בדגלים הבאים:

--location=LOCATION
מציין את מיקום ההזמנה.
--project_id=PROJECT_ID
מציין את הפרויקט שהמקום השמור בבעלותו.

צריך להגדיר את הדגל --alpha=reservation_groups (תצוגה מקדימה).

מידע נוסף מופיע במאמר איך עובדים עם קבוצות של הזמנות.

bq mk --table

יוצר טבלה. יש תמיכה בדגלים הבאים:

--add_tags=TAGS
מציינים את התגים שמצרפים לטבלה החדשה, בהפרדה באמצעות פסיקים. לדוגמה: 556741164180/env:prod,myProject/department:sales. לכל תג צריך להיות שם מפתח במרחב השמות ושם מקוצר של ערך.
--clustering_fields=COLUMNS
רשימה מופרדת בפסיקים של עד ארבעה שמות עמודות שמציינת את השדות שבהם יש להשתמש לאשכולות של טבלאות. אם מציינים חלוקה למחיצות, הטבלה מחולקת למחיצות ואז כל מחיצה מקובצת באמצעות העמודות שצוינו.
--description=DESCRIPTION
מציין את תיאור הטבלה.
--destination_kms_key=KEY
מציין מזהה של משאב מפתח ב-Cloud KMS להצפנת הנתונים בטבלת היעד.
--expiration=SECONDS
מציין את משך החיים של הטבלה. אם לא מציינים את הדגל --expiration, ‏ BigQuery יוצר את הטבלה עם משך החיים שמוגדר כברירת מחדל למערך הנתונים, או שהתוקף של הטבלה לא פג.
--external_table_definition=STRING

מציין הגדרת טבלה ליצירת טבלה חיצונית.

בטבלאות חיצוניות של Cloud Storage ושל Google Drive:

--external_table_definition={PATH_TO_FILE|DEFINITION}
הערך יכול להיות נתיב לקובץ שמכיל הגדרת טבלה (PATH_TO_FILE) או הגדרת טבלה מוטבעת (DEFINITION).
  • הפורמט של השדה DEFINITION הוא SCHEMA@FORMAT=URI.
  • הפורמט של הערך SCHEMA הוא רשימה מופרדת בפסיקים של הגדרות עמודות, בצורה FIELD:DATA_TYPE, FIELD:DATA_TYPE. אפשר להשמיט את הערך SCHEMA אם פורמט הנתונים מתאר את עצמו (למשל Avro) או אם משתמשים בזיהוי אוטומטי של סכימה.

  • הערך FORMAT מציין את פורמט הנתונים. אפשר להשתמש באחד מהערכים הבאים:

    • AVRO
    • CSV
    • DATASTORE_BACKUP (הערך הזה משמש ל-Filestore)
    • ICEBERG
    • NEWLINE_DELIMITED_JSON
    • ORC
    • PARQUET

אם מציינים קובץ הגדרת טבלה, לא מוסיפים סיומת לשם הקובץ.

לדוגמה:

--external_table_definition=/tmp/tabledef
--external_table_definition=Region:STRING,Quarter:STRING,Total_sales:INTEGER@CSV=gs://mybucket/sales.csv

לטבלאות חיצוניות של Bigtable, ולטבלאות BigLake שמבוססות על AWS ועל Azure:

--external_table_definition=PATH_TO_FILE
הערך חייב להיות נתיב לקובץ שמכיל הגדרת טבלה.

לטבלאות BigLake שמבוססות על Cloud Storage:

--external_table_definition=FORMAT=BUCKET_PATH@REGION.CONNECTION_NAME :

  • הערך FORMAT מציין את פורמט הנתונים. אפשר להשתמש באחד מהערכים הבאים:

    • AVRO
    • CSV
    • NEWLINE_DELIMITED_JSON
    • ICEBERG
    • ORC
    • PARQUET
  • BUCKET_PATH הוא הנתיב לקובץ אחד או יותר ב-Cloud Storage שמכילים את נתוני הטבלה של BigLake. אפשר לציין את BUCKET_PATH בפורמטים הבאים:

    • לקובץ אחד: gs://bucket_name/[folder_name/]file_name.
    • לכמה קבצים בדלי אחד: gs://bucket_name/[folder_name/]*.
    • לגבי מספר קבצים בכמה דליים: gs://mybucket1/*,gs://mybucket2/folder5/*.

      אפשר להשתמש בתווים כלליים לחיפוש כדי להגביל את הקבצים שנכללים בטבלת BigLake. לדוגמה, אם ה-bucket מכיל כמה סוגים של נתונים, אפשר להגדיר שהטבלה תשתמש רק בקובצי PARQUET על ידי ציון gs://bucket_name/*.parquet. מידע נוסף על שימוש בתווים כלליים לחיפוש זמין במאמר תווים כלליים לחיפוש ב-URI.

  • הערך REGION מציין את האזור או את האזור במספר אזורים שמכיל את החיבור.

  • הערך CONNECTION_NAME מציין את השם של החיבור למשאב בענן שבו רוצים להשתמש עם הטבלה החיצונית הזו. החיבור קובע באיזה חשבון שירות המערכת תשתמש כדי לקרוא נתונים מ-Cloud Storage.

בטבלאות של אובייקטים:

--external_table_definition=BUCKET_PATH@REGION.CONNECTION_NAME :

  • BUCKET_PATH הוא הנתיב לקטגוריה של Cloud Storage שמכילה את האובייקטים שמיוצגים בטבלת האובייקטים, בפורמט gs://bucket_name/[folder_name/]*.אפשר לציין כמה קטגוריות על ידי ציון כמה נתיבים, לדוגמה gs://mybucket1/*,gs://mybucket2/folder5/*.

    אפשר להשתמש בתווים כלליים לחיפוש כדי להגביל את האובייקטים שכלולים בטבלת האובייקטים. לדוגמה, אם בקטע הנתונים יש כמה סוגים של נתונים לא מובְנים, אפשר ליצור את טבלת האובייקטים רק על אובייקטים מסוג PDF על ידי ציון gs://bucket_name/*.pdf. מידע נוסף על שימוש בתווים כלליים לחיפוש מופיע במאמר תווים כלליים לחיפוש של URI.

  • הערך REGION מציין את האזור או את האזור במספר אזורים שמכיל את החיבור.

  • הערך CONNECTION_NAME מציין את השם של החיבור למשאב בענן שבו רוצים להשתמש עם הטבלה החיצונית הזו. החיבור קובע באיזה חשבון שירות המערכת תשתמש כדי לקרוא נתונים מ-Cloud Storage.

--file_set_spec_type=FILE_SET_SPEC_TYPE

מציין איך לפרש את כתובות ה-URI של המקור.

  • FILE_SYSTEM_MATCH: מרחיב את ה-URI של המקור על ידי הצגת רשימת הקבצים ממאגר האובייקטים. זו התנהגות ברירת המחדל אם לא מוגדר FileSetSpecType.
  • NEW_LINE_DELIMITED_MANIFEST: מציין שכתובות ה-URI שסופקו הן קובצי מניפסט שמופרדים באמצעות שורות חדשות, עם URI אחד בכל שורה. לא ניתן להשתמש ב-URI עם תווים כלליים בקובצי המניפסט, וכל קובצי הנתונים שאליהם יש הפניה חייבים להיות באותו מאגר כמו המניפסט.

לדוגמה, אם יש לכם URI של מקור "gs://bucket/path/file" וה-file_set_spec_type הוא FILE_SYSTEM_MATCH, הקובץ ישמש ישירות כקובץ נתונים. אם הערך של file_set_spec_type הוא NEW_LINE_DELIMITED_MANIFEST, כל שורה בקובץ מתפרשת כ-URI שמפנה לקובץ נתונים.

--reference_file_schema_uri=URI

מציינת את הנתיב לקובץ עזר עם סכימת הטבלה הצפויה ליצירת טבלאות חיצוניות. שווה ערך ל-ExternalDataConfiguration.referenceFileSchemaUri. הסימון הבוליאני הזה מופעל בפורמטים Avro,‏ ORC ו-PARQUET.

--label=KEY:VALUE

מציין תווית לטבלה. אפשר לחזור על האפשרות הזו כדי לציין כמה תוויות.

--max_staleness=INTERVAL

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

האפשרות הזו רלוונטית לטבלאות BigLake ולטבלאות אובייקטים.

כדי להשבית את השמירה במטמון של המטא-נתונים, מציינים את הערך 0. (זוהי ברירת המחדל)

כדי להפעיל שמירת מטא-נתונים במטמון, צריך לציין ערך של מרווח זמן בין 30 דקות ל-7 ימים, באמצעות הפורמט Y-M D H:M:S שמתואר במסמכי התיעוד של סוג הנתונים INTERVAL. לדוגמה, כדי להגדיר את מרווח הזמן של הנתונים הלא עדכניים ל-4 שעות, צריך לציין 0-0 0 4:0:0. אם הערך הזה מוגדר, פעולות שמתבצעות בטבלה משתמשות במטא נתונים שנשמרו במטמון אם הם רעננו ב-4 השעות האחרונות. אם המטא-נתונים שנשמרו במטמון ישנים יותר, הפעולה חוזרת לאחור לאחזור מטא-נתונים מ-Cloud Storage.

--object_metadata=STRING

מגדירים את הערך של הדגל הזה ל-SIMPLE כשיוצרים טבלת אובייקטים.

נדרש רק כשיוצרים טבלת אובייקטים.

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

מציינים אפשרויות לחלוקה למחיצות של טווח מספרים שלמים, באופן הבא:

  • column_name היא העמודה שמשמשת ליצירת מחיצות של טווח מספרים שלמים.
  • start היא ההתחלה של חלוקה למחיצות (partitioning) של הטווח, כולל.
  • end הוא סוף חלוקת הטווח, לא כולל.
  • interval הוא הרוחב של כל טווח במחיצה.

לדוגמה:

--range_partitioning=customer_id,0,10000,100

--require_partition_filter={true|false}

כדי לדרוש מסנן מחיצות לשאילתות בטבלה שצוינה, מגדירים את הערך true. הדגל הזה רלוונטי רק לטבלאות עם חלוקה למחיצות. ערך ברירת המחדל הוא false.

--schema={SCHEMA_FILE|SCHEMA}

מציינים את הנתיב לקובץ סכימת JSON מקומי או רשימה מופרדת בפסיקים של הגדרות עמודות בפורמט FIELD:DATA_TYPE, FIELD:DATA_TYPE. אם אתם משתמשים בקובץ סכימה, אל תוסיפו סיומת לשם הקובץ.

דוגמאות:

--schema=/tmp/tabledef
--schema=Region:STRING,Quarter:STRING,Total_sales:INTEGER

--time_partitioning_expiration=SECONDS

מספר שלם שמציין (בשניות) מתי צריך למחוק מחיצה מבוססת-זמן. זמן התפוגה הוא תאריך ה-UTC של המחיצה בתוספת הערך השלם. מספר שלילי מציין שאין תאריך תפוגה.

--time_partitioning_field=COLUMN_NAME

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

--time_partitioning_type=INTERVAL

הגדרה של חלוקה למחיצות (partitioning) לפי זמן בטבלה והגדרת סוג המחיצה. אפשר להשתמש באחד מהערכים הבאים:

  • DAY
  • HOUR
  • MONTH
  • YEAR
--use_avro_logical_types={true|false}

אם החלק FORMAT של הדגל --external_table_definition מוגדר לערך AVRO, הדגל הזה מציין אם להמיר סוגים לוגיים לסוגים התואמים שלהם (למשל TIMESTAMP) במקום להשתמש רק בסוגים הגולמיים שלהם (למשל INTEGER).

--parquet_enable_list_inference={true|false}

אם החלק FORMAT של הדגל --external_table_definition מוגדר לערך PARQUET, הדגל הזה מציין אם להשתמש בהסקת סכימה עבור סוגים לוגיים של Parquet LIST.

--parquet_enum_as_string={true|false}

אם החלק FORMAT של הדגל --external_table_definition מוגדר כ-PARQUET, הדגל הזה מציין אם להסיק סוגים לוגיים של Parquet ENUM כערכים של STRING.

מידע נוסף זמין במאמר יצירה ושימוש בטבלאות.

bq mk --transfer_config

יצירת הגדרת העברה. יש תמיכה בדגלים הבאים:

--data_source=DATA_SOURCE
מציין את מקור הנתונים. חובה כשיוצרים הגדרת העברה. משתמשים באחד מהערכים הבאים:
--display_name=DISPLAY_NAME
מציין את השם המוצג של הגדרת ההעברה.
--no_auto_scheduling={true|false}
האפשרות הזו משביתה את התזמון האוטומטי של הרצות של העברת נתונים להגדרה הזו. ערך ברירת המחדל הוא false.
--params={"PARAMETER":"VALUE"} או -p={"PARAMETER":"VALUE"}
מציין את הפרמטרים של הגדרת ההעברה בפורמט JSON. הפרמטרים משתנים בהתאם למקור הנתונים.
--refresh_window_days=DAYS
מספר שלם שמציין את חלון הרענון של הגדרת ההעברה בימים. ערך ברירת המחדל הוא 0.
--service_account_name=SERVICE_ACCOUNT
ההגדרה מציינת חשבון שירות שישמש כפרטי הכניסה להגדרת ההעברה.
--target_dataset=DATASET
מציין את מערך נתוני היעד להגדרת ההעברה.
--table_filter=TABLES
המאפיין הזה נמצא בשימוש רק עם מקור הנתונים google_ads. הפרמטר TABLES הוא רשימה מופרדת בפסיקים של טבלאות שרוצים לכלול בהעברה. כדי להחריג טבלה, מוסיפים מקף (-) לפני שם הטבלה. ערך ברירת המחדל כולל את כל הטבלאות בהעברה.
--destination_kms_key=KEY
מציין מזהה משאב מפתח של Cloud KMS להצפנת הנתונים בטבלת היעד.

למידע על שימוש בפקודה bq mk עם שירות העברת נתונים ל-BigQuery, אפשר לעיין במאמרים הבאים:

bq mk --transfer_run

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

תקציר
bq mk --transfer_run [--run_time=RUN_TIME | --start_time=START_TIME --end_time=END_TIME] CONFIG

יש תמיכה בדגלים הבאים:

--run_time=RUN_TIME
חותמת זמן שמציינת את השעה שבה יתבצע תזמון של הרצת העברת הנתונים.
--start_time=START_TIME
חותמת זמן שמציינת את שעת ההתחלה של טווח הפעלות של העברת נתונים.
--end_time=END_TIME
חותמת זמן שמציינת את שעת הסיום של טווח של הפעלות של העברת נתונים.

הפורמט של חותמות הזמן הוא RFC3339 UTC ‏'זולו'.

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

דוגמאות
bq mk --transfer_run \
      --run_time=2021-01-20T17:00:00.00Z \
      projects/p/locations/l/transferConfigs/c
bq mk --transfer_run \
      --start_time=2020-12-19T16:39:57-08:00 \
      --end_time=2020-12-19T20:39:57-08:00 \
      projects/p/locations/l/transferConfigs/c

bq mk --view

יצירת תצוגה. יש תמיכה בדגלים הבאים:

--add_tags=TAGS
מציינים את התגים שמצורפים לתצוגה החדשה, בהפרדה באמצעות פסיקים. לדוגמה: 556741164180/env:prod,myProject/department:sales. לכל תג צריך להיות שם מפתח במרחב השמות ושם מקוצר של ערך.
--description=DESCRIPTION
מציינת את תיאור התצוגה.
--expiration=SECONDS
מציין את משך החיים של התצוגה. אם הערך של SECONDS הוא 0, התוקף של התצוגה לא יפוג. אם לא מציינים את האפשרות --expiration, ‏ BigQuery יוצר את התצוגה עם משך החיים של הטבלה שמוגדר כברירת מחדל במערך הנתונים.
--label=KEY:VALUE
מציינים תווית לתצוגה. חוזרים על האפשרות הזו כדי לציין כמה תוויות.
--use_legacy_sql={true|false}
הגדרה ל-false כדי להשתמש בשאילתת GoogleSQL ליצירת תצוגה. ערך ברירת המחדל נקבע לפי הגדרות התצורה. אם לא מציינים את הגדרת התצורה, ערך ברירת המחדל הוא true; נעשה שימוש ב-SQL מדור קודם.
--view_udf_resource=FILE
מציין את ה-URI של Cloud Storage או את הנתיב לקובץ קוד מקומי שנטען ומוערך באופן מיידי כמשאב של פונקציה בהגדרת המשתמש שמשמשת את שאילתת ה-SQL של התצוגה. אפשר לחזור על האפשרות הזו כדי לציין כמה קבצים.

מידע נוסף זמין במאמר יצירת תצוגות.

bq mkdef

משתמשים בפקודה bq mkdef כדי ליצור הגדרת טבלה בפורמט JSON לנתונים שמאוחסנים ב-Cloud Storage או ב-Google Drive.

תקציר

bq mkdef [FLAGS] URI [ > FILE ]

דגלים וארגומנטים

הפקודה bq mkdef משתמשת בדגלים ובארגומנטים הבאים:

--autodetect={true|false}
מציינים אם להשתמש בזיהוי אוטומטי של סכימה לנתוני CSV ו-JSON. ערך ברירת המחדל הוא false.
--connection_id=CONNECTION_ID
המזהה של משאב חיבור שמשמש לאימות.
--hive_partitioning_mode

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

  • AUTO: מסיק אוטומטית את השמות והסוגים של מפתחות החלוקה.
  • STRINGS: הסקת שמות של מפתחות חלוקה אוטומטית. כל הסוגים מטופלים כמחרוזות.
  • CUSTOM: מציינים את סכימת החלוקה למחיצות בקידומת של ה-URI במקור.

ערך ברירת המחדל הוא AUTO.

--hive_partitioning_source_uri_prefix

מציינת את הקידומת המשותפת של כתובות ה-URI של המקור. הערך של הקידומת הנפוצה הוא החלק ב-URI שמופיע מיד לפני הקידוד של מפתח המחיצה. אם ציינתם CUSTOM במצב, אתם צריכים לציין גם את סכימת החלוקה למחיצות.

לדוגמה, קבצים עם המבנה הבא:

  • gs://bucket/path_to_table/dt=2019-06-01/country=USA/id=7/file.avro
  • gs://bucket/path_to_table/dt=2019-05-31/country=CA/id=3/file.avro

אם משתמשים במצבים AUTO או STRINGS, אפשר להשתמש בערכים הבאים:

  • gs://bucket/path_to_table
  • gs://bucket/path_to_table/

אם משתמשים במצב CUSTOM, אפשר להשתמש בערכים הבאים:

  • gs://bucket/path_to_table/{dt:DATE}/{country:STRING}/{id:INTEGER}
  • gs://bucket/path_to_table/{dt:STRING}/{country:STRING}/{id:INTEGER}
  • gs://bucket/path_to_table/{dt:DATE}/{country:STRING}/{id:STRING}

מידע נוסף על השימוש בפקודה bq mkdef זמין במאמר יצירה של קובץ הגדרת טבלה למקור נתונים חיצוני.

--ignore_unknown_values={true|false} או -i={true|false}
מציין אם להתעלם מערכים בשורה שלא מופיעים בסכימה. ערך ברירת המחדל הוא false.
--metadata_cache_mode=STRING

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

אם מגדירים את הערך AUTOMATIC, מטמון המטא-נתונים מתעדכן במרווח זמן שמוגדר על ידי המערכת, בדרך כלל בין 30 ל-60 דקות.

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

אם מגדירים את הדגל --max_staleness באמצעות הפקודה bq mk, צריך להגדיר גם את הדגל --metadata_cache_mode.

--parquet_enable_list_inference={true|false}

אם הערך של source_format הוא PARQUET, הדגל הזה מציין אם להשתמש בהסקת סכימה עבור סוגים לוגיים של Parquet LIST. ערך ברירת המחדל הוא false.

--parquet_enum_as_string={true|false}

אם source_format מוגדר כ-PARQUET, הדגל הזה מציין אם להסיק סוגים לוגיים של Parquet ENUM כערכים של STRING. ערך ברירת המחדל הוא false.

--file_set_spec_type=FILE_SET_SPEC_TYPE

מציין איך לפרש כתובות URI של מקורות.

  • FILE_SYSTEM_MATCH: מרחיב את ה-URI של המקור על ידי הצגת רשימת הקבצים ממאגר האובייקטים. זו התנהגות ברירת המחדל אם לא מוגדר FileSetSpecType.
  • NEW_LINE_DELIMITED_MANIFEST: מציין שכתובות ה-URI שסופקו הן קובצי מניפסט שמופרדים באמצעות שורות חדשות, עם URI אחד בכל שורה. לא ניתן להשתמש ב-URI עם תווים כלליים בקובצי המניפסט, וכל קובצי הנתונים שאליהם יש הפניה חייבים להיות באותו מאגר כמו המניפסט.

לדוגמה, אם יש לכם URI של מקור "gs://bucket/path/file" וה-file_set_spec_type הוא FILE_SYSTEM_MATCH, הקובץ ישמש ישירות כקובץ נתונים. אם הערך של file_set_spec_type הוא NEW_LINE_DELIMITED_MANIFEST, כל שורה בקובץ מתפרשת כ-URI שמפנה לקובץ נתונים.

--source_format=FORMAT

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

  • AVRO
  • CSV
  • DATASTORE_BACKUP (הערך הזה משמש ל-Filestore)
  • GOOGLE_SHEETS
  • NEWLINE_DELIMITED_JSON
  • ORC
  • PARQUET

ערך ברירת המחדל הוא CSV.

--use_avro_logical_types={true|false}

אם הדגל --source_format מוגדר לערך AVRO, הדגל הזה מציין אם להמיר סוגים לוגיים לסוגים התואמים שלהם (למשל TIMESTAMP) במקום להשתמש רק בסוגים הגולמיים שלהם (למשל INTEGER). ברירת המחדל היא false.

bq partition

אפשר להשתמש בפקודה bq partition כדי להמיר קבוצה של טבלאות עם סיומות של יחידות זמן, כמו טבלאות שמסתיימות ב-YYYYMMDD לחלוקה לפי תאריך, לטבלאות מחולקות.

תקציר

bq partition [FLAGS] SOURCE_TABLE_BASE_NAME PARTITION_TABLE

דגלים וארגומנטים

הפקודה bq partition משתמשת בדגלים ובארגומנטים הבאים:

--no_clobber={true|false} או -n={true|false}
כדי למנוע החלפה של מחיצה קיימת, מגדירים את הערך true. ערך ברירת המחדל הוא false. אם המחיצה קיימת, היא תידרס.
--time_partitioning_expiration=SECONDS
מספר שלם שמציין (בשניות) מתי צריך למחוק מחיצה מבוססת-זמן. זמן התפוגה הוא תאריך ה-UTC של המחיצה בתוספת הערך השלם. מספר שלילי מציין שאין תאריך תפוגה.
--time_partitioning_type=INTERVAL

מציין את סוג המחיצה. בטבלה הבאה מפורטים הערכים האפשריים של הדגל INTERVAL ופורמט הסיומת של יחידת הזמן הצפוי לכל אחד מהם:

INTERVAL סיומת
HOUR YYYYMMDDHH
DAY YYYYMMDD
MONTH YYYYMM
YEAR YYYY
SOURCE_TABLE_BASE_NAME

השם הבסיסי של קבוצת הטבלאות עם סיומות של יחידות זמן.

PARTITION_TABLE

השם של טבלת היעד המחולקת למחיצות.

מידע נוסף על השימוש בפקודה bq partition זמין במאמר המרת טבלאות עם חלוקה לפי תאריך לטבלאות עם חלוקה למחיצות לפי זמן ההוספה.

bq query

משתמשים בפקודה bq query כדי ליצור עבודת שאילתה שמריצה את שאילתת ה-SQL שצוינה.

תקציר

bq query [FLAGS] 'QUERY'

דגלים וארגומנטים

הפקודה bq query משתמשת בדגלים ובארגומנטים הבאים:

--allow_large_results={true|false}
כדי להפעיל גדלים גדולים של טבלאות יעד לשאילתות SQL מדור קודם, צריך להגדיר את הערך true. ערך ברירת המחדל הוא false.
--append_table={true|false}
כדי להוסיף נתונים לטבלת יעד, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--batch={true|false}
כדי להריץ את השאילתה במצב אצווה, מגדירים את הערך ל-true. ערך ברירת המחדל הוא false.
--clustering_fields=COLUMNS
רשימה מופרדת בפסיקים של עד ארבעה שמות עמודות שמציינים שדות לשימוש באשכול של טבלת היעד בשאילתה. אם מציינים חלוקה למחיצות, הטבלה מחולקת למחיצות ואז כל מחיצה מקובצת באמצעות העמודות שצוינו.
--connection_property=KEY=VALUE

צמד מפתח/ערך שמאפשר לציין מאפיינים ברמת החיבור כדי להתאים אישית את אופן הפעולה של השאילתה. כדי לציין נכסים נוספים, חוזרים על השלב הזה.

אלה מאפייני החיבור הנתמכים:

  • dataset_project_id: מייצג את פרויקט ברירת המחדל של מערכי הנתונים שמשמשים בשאילתה, בדומה ל@@dataset_project_id משתנה המערכת.
  • query_label: משייכת את השאילתה לתווית משימה נתונה. אם מוגדרת תווית, כל השאילתות הבאות בסקריפט או בסשן מקבלות את התווית הזו. פרטים על דרישות הפורמט של תוויות שאילתה מופיעים בשדה labels במשאב JobConfiguration.
  • service_account: מציין חשבון שירות שישמש להרצת השאילתה. לדוגמה: --connection_property=service_account=myserviceaccount@project.iam.gserviceaccount.com.
  • session_id: משייך את השאילתה לסשן נתון.
  • time_zone: מייצג את אזור הזמן שמוגדר כברירת מחדל לשימוש בהרצת השאילתה.
--continuous={true|false}

כדי להריץ שאילתה מתמשכת, מגדירים את הערך true. ערך ברירת המחדל הוא false.

--destination_kms_key=KEY

מציינים מזהה משאב מפתח של Cloud KMS להצפנת הנתונים בטבלת היעד.

--destination_schema={PATH_TO_FILE|SCHEMA}

הנתיב לקובץ סכימת JSON מקומי או רשימה מופרדת בפסיקים של הגדרות עמודות בפורמט FIELD:DATA_TYPE, FIELD:DATA_TYPE.

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

--destination_table=TABLE

אם מציינים את האפשרות הזו, תוצאות השאילתה נשמרות ב-TABLE. מציינים את TABLE בפורמט הבא: PROJECT:DATASET.TABLE. אם לא מציינים את PROJECT, המערכת מניחה שזה הפרויקט הנוכחי. אם לא מציינים את הדגל --destination_table, תוצאות השאילתה נשמרות בטבלה זמנית.

דוגמאות:

--destination_table myProject:myDataset.myTable
--destination_table myDataset.myTable

--dry_run={true|false}

אם מציינים את האפשרות הזו, השאילתה מאומתת אבל לא מורצת.

--external_table_definition={TABLE::PATH_TO_FILE|TABLE::DEFINITION}

מציין את שם הטבלה ואת הגדרת הטבלה בשאילתת טבלה חיצונית. הגדרת הטבלה יכולה להיות נתיב לקובץ סכימת JSON מקומי או הגדרת טבלה מוטמעת. הפורמט להגדרת טבלה מוטבעת הוא SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. הפורמט של הערך SCHEMA הוא רשימה מופרדת בפסיקים של הגדרות עמודות, בצורה FIELD:DATA_TYPE, FIELD:DATA_TYPE. אם משתמשים בקובץ הגדרת טבלה, לא מוסיפים סיומת לשם הקובץ.

לדוגמה:

--external_table_definition=myTable::/tmp/tabledef
--external_table_definition=myTable::Region:STRING,Quarter:STRING,Total_sales:INTEGER@CSV=gs://mybucket/sales.csv

אפשר לחזור על הדגל הזה כדי להריץ שאילתות על כמה טבלאות.

--flatten_results={true|false}

כדי לא לאפשר את השטחת השדות בתוך שדות והשדות החוזרים בתוצאות של שאילתות SQL מדור קודם, צריך להגדיר את הערך false. ערך ברירת המחדל הוא true.

--label=KEY:VALUE

מציין תווית למשימת השאילתה. אפשר לחזור על האפשרות הזו כדי לציין כמה תוויות.

--max_rows=MAX_ROWS או -n=MAX_ROWS

מספר שלם שמציין את מספר השורות שיוחזרו בתוצאות השאילתה. ערך ברירת המחדל הוא 100.

--maximum_bytes_billed=MAX_BYTES

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

--max_statement_results=VALUE

מספר שלם שמציין את המספר המקסימלי של הצהרות סקריפט שמוצגות בתוצאות השאילתה. ערך ברירת המחדל הוא 100.

--min_completion_ratio=RATIO

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

--parameter={PATH_TO_FILE|PARAMETER}

קובץ JSON שמכיל רשימה של פרמטרים של שאילתה, או פרמטר של שאילתה בפורמט NAME:TYPE:VALUE. שם ריק יוצר פרמטר מיקום. אם משמיטים את TYPE, הפונקציה פועלת בהנחה שהסוג הוא STRING. הערך NULL מציין ערך null. אפשר לחזור על האפשרות הזו כדי לציין כמה פרמטרים.

לדוגמה:

--parameter=/tmp/queryParams
--parameter=Name::Oscar
--parameter=Count:INTEGER:42

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

משתמשים בדגל --destination_table. מציינת אפשרויות לחלוקה למחיצות של טווח מספרים שלמים בטבלת היעד. הערך הוא רשימה מופרדת בפסיקים בפורמט column_name,start,end,interval, שבו

  • column_name היא העמודה שמשמשת ליצירת מחיצות של טווח מספרים שלמים.
  • start היא ההתחלה של חלוקה למחיצות (partitioning) של הטווח, כולל.
  • end הוא סוף חלוקת הטווח, לא כולל.
  • interval הוא הרוחב של כל טווח במחיצה.

לדוגמה:

--range_partitioning=customer_id,0,10000,100

--replace={true|false}

כדי להחליף את טבלת היעד בתוצאות השאילתה, מגדירים את הערך true. כל הנתונים והסכימה הקיימים יימחקו. כל מפתח Cloud KMS יוסר גם הוא, אלא אם מציינים את הדגל --destination_kms_key. ערך ברירת המחדל הוא false.

--require_cache={true|false}

אם מציינים את הפרמטר הזה, השאילתה תופעל רק אם אפשר לאחזר תוצאות מהמטמון.

--require_partition_filter={true|false}

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

**--reservation_id=RESERVATION

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

--rpc={true|false}

כדי להשתמש ב-API לשאילתות בסגנון RPC במקום ב-method ‏jobs.insert של API בארכיטקטורת REST, מגדירים את הערך true. ערך ברירת המחדל הוא false.

--schedule="SCHEDULE"

הופך שאילתה לשאילתה מתוזמנת חוזרת. צריך להגדיר לוח זמנים לתדירות שבה השאילתה תופעל.

דוגמאות:

--schedule="every 24 hours"
--schedule="every 3 hours"

במאמר עיצוב התזמון מופיע תיאור של תחביר התזמון.

--schema_update_option=OPTION

כשמוסיפים נתונים לטבלה במשימת טעינה או במשימת שאילתה, או כשמחליפים מחיצה בטבלה, צריך לציין איך לעדכן את הסכימה של טבלת היעד. אפשר להשתמש באחד מהערכים הבאים:

  • ALLOW_FIELD_ADDITION: מאפשר להוסיף שדות חדשים.
  • ALLOW_FIELD_RELAXATION: אפשר להרחיב את השדות REQUIRED ל-NULLABLE.

אפשר לחזור על הדגל הזה כדי לציין כמה אפשרויות לעדכון הסכימה.

--start_row=ROW_NUMBER או -s=ROW_NUMBER

מספר שלם שמציין את השורה הראשונה שתוחזר בתוצאת השאילתה. ערך ברירת המחדל הוא 0.

--target_dataset=DATASET

כשמציינים את האפשרות --schedule, מתבצע עדכון של מערך הנתונים של היעד עבור שאילתה מתוזמנת. השאילתה חייבת להיות DDL או DML.

--time_partitioning_expiration=SECONDS

משתמשים בדגל --destination_table. מספר שלם שמציין (בשניות) מתי צריך למחוק מחיצה מבוססת-זמן. מועד התפוגה הוא התאריך של המחיצה ב-UTC בתוספת הערך השלם. מספר שלילי מציין שאין תפוגה.

--time_partitioning_field=COLUMN_NAME

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

--time_partitioning_type=INTERVAL

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

  • DAY
  • HOUR
  • MONTH
  • YEAR
--udf_resource=FILE

הדגל הזה רלוונטי רק לשאילתות SQL מדור קודם. מציין את ה-URI של Cloud Storage או את הנתיב לקובץ מקומי שמכיל משאב של פונקציה בהגדרת המשתמש, שייעשה בו שימוש בשאילתת SQL מדור קודם. אפשר לחזור על האפשרות הזו כדי לציין כמה קבצים.

--use_cache={true|false}

כדי להשבית את השמירה במטמון של תוצאות שאילתות, מגדירים את הערך false. ערך ברירת המחדל הוא true.

--use_legacy_sql={true|false}

כדי להריץ שאילתת GoogleSQL, מגדירים את הערך false. ערך ברירת המחדל נקבע לפי הגדרות התצורה. אם לא מציינים את הגדרת התצורה, ערך ברירת המחדל הוא true, והפקודה משתמשת ב-SQL מדור קודם.

--job_timeout_ms={string (Int64Value)}

מציין את משך הזמן המקסימלי להרצת שאילתה באלפיות השנייה. אם חורגים ממגבלת הזמן הזו, מערכת BigQuery מנסה להפסיק את העבודה.

QUERY

השאילתה שרוצים להריץ. אפשר לציין את השאילתה באחת מהשיטות הבאות:

  • מציינים מחרוזת שמכילה את השאילתה.

    אם אתם צריכים להשתמש במחרוזות נוספות בתוך השאילתה, אתם צריכים לפעול לפי כללי הציטוט של המעטפת שבה אתם משתמשים, כמו Bash או PowerShell.

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

    'SELECT * FROM mydataset.mytable WHERE column1 = "value";'
    

    אם מעתיקים את השאילתה ממיקום אחר, צריך גם להסיר את כל התגובות בשאילתה.

  • מעבירים סקריפט SQL שמכיל את השאילתה. בדוגמה הבאה אפשר לראות איך מעבירים סקריפט SQL במעטפת Bash:

    bq query --use_legacy_sql=false < query.sql
    

מידע נוסף על השימוש בפקודה bq query זמין במאמר הרצת שאילתה.

bq remove-iam-policy-binding

משתמשים בפקודה bq remove-iam-policy-binding כדי לאחזר את מדיניות IAM של משאב ולהסיר קישור מהמדיניות, בפעולה אחת. המשאב יכול להיות טבלה או תצוגה.

הפקודה הזו היא חלופה לתהליך הבא שכולל שלושה שלבים:

  1. משתמשים בפקודה bq get-iam-policy כדי לאחזר את קובץ המדיניות (בפורמט JSON).
  2. עריכת קובץ המדיניות.
  3. משתמשים בפקודה bq set-iam-policy כדי לעדכן את המדיניות בלי הקישור.

תקציר

bq remove-iam-policy-binding FLAGS --member=MEMBER_TYPE:MEMBER --role=ROLE RESOURCE

דגלים וארגומנטים

בפקודה bq remove-iam-policy-binding נעשה שימוש בדגלים ובארגומנטים הבאים:

--member=MEMBER_TYPE:MEMBER

חובה. משתמשים בדגל --member כדי לציין את החבר שהוא חלק מקישור מדיניות ה-IAM. חובה להשתמש בדגל --member יחד עם הדגל --role. שילוב אחד של הדגלים --member ו---role שווה לקישור אחד.

הערך MEMBER_TYPE מציין את סוג החבר בקישור מדיניות IAM. אפשר להשתמש באחד מהערכים הבאים:

  • user
  • serviceAccount
  • group
  • domain

הערך MEMBER מציין את כתובת האימייל או הדומיין של החבר בקישור למדיניות IAM.

--role=ROLE

חובה. מציינת את חלק התפקיד בקישור של מדיניות IAM. חובה להשתמש בדגל --role יחד עם הדגל --member. שילוב אחד של הדגלים --member ו---role שווה לקישור אחד.

--table={true|false} או -t={true|false}

זה שינוי אופציונלי. כדי להסיר קישור ממדיניות ה-IAM של טבלה או תצוגה, מגדירים את הערך true. ערך ברירת המחדל הוא false.

RESOURCE היא הטבלה או התצוגה שרוצים להסיר את הקישור של המדיניות שלהן.

מידע נוסף זמין במאמר הסבר על מדיניות IAM.

bq rm

משתמשים בפקודה bq rm כדי למחוק משאב BigQuery.

תקציר

bq rm [FLAGS] RESOURCE

דגלים וארגומנטים

הפקודה bq rm משתמשת בדגלים ובארגומנטים הבאים:

--capacity_commitment={false|true}
כדי למחוק התחייבות לקיבולת, מגדירים את הערך true, מציינים את המיקום של ההתחייבות שרוצים להסיר באמצעות הדגל --location, ומחליפים את RESOURCE במזהה של ההתחייבות שרוצים להסיר.
--dataset={true|false} או -d={true|false}
כדי למחוק קבוצת נתונים, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--force={true|false} או -f={true|false}
כדי למחוק משאב בלי לקבל הנחיה, מגדירים את הערך ל-true. ערך ברירת המחדל הוא false.
--job={true|false} או -j={true|false}
כדי למחוק משימה, מגדירים את הערך כ-true. ערך ברירת המחדל הוא false.
--model={true|false} או -m={true|false}
כדי למחוק מודל BigQuery ML, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--recursive={true|false} או -r{true|false}
כדי למחוק קבוצת נתונים וכל הטבלאות, נתוני הטבלאות או המודלים שבה, מגדירים את האפשרות true. ערך ברירת המחדל הוא false.
--reservation={true|false}
כדי למחוק הזמנה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--reservation_assignment={true|false}
כדי למחוק הקצאה של הזמנה, מגדירים את הערך ל-true. ערך ברירת המחדל הוא false.
--routine={true|false}
כדי למחוק תרחיש, בוחרים באפשרות true. ערך ברירת המחדל הוא false. שגרה יכולה להיות פונקציה מתמידה בהגדרת המשתמש, פונקציית טבלה (גרסת Preview) או פרוצדורה מאוחסנת.
--table={true|false} או -t={true|false}
כדי למחוק טבלה או תצוגה, מגדירים את האפשרות true. ערך ברירת המחדל הוא false.
--transfer_config={true|false}
כדי למחוק הגדרת העברה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
RESOURCE
המשאב שרוצים להסיר.

למידע נוסף על השימוש בפקודה bq rm:

bq set-iam-policy

משתמשים בפקודה bq set-iam-policy כדי לציין או לעדכן את מדיניות ה-IAM של משאב. המשאב יכול להיות טבלה, תצוגה או הזמנת משבצת זמן. אחרי שמגדירים את המדיניות, המדיניות החדשה מודפסת ב-stdout. המדיניות היא בפורמט JSON.

הערך בשדה etag במדיניות המעודכנת צריך להיות זהה לערך בשדה etag במדיניות הנוכחית, אחרת העדכון ייכשל. התכונה הזו מונעת עדכונים בו-זמניים.

אפשר לקבל את המדיניות הנוכחית ואת הערך של etag של משאב באמצעות הפקודה bq get-iam-policy.

תקציר

bq set-iam-policy [FLAGS] RESOURCE FILE_NAME

דוגמאות

bq set-iam-policy myDataset.myTable policy.json
bq set-iam-policy --reservation myReservation policy.json

דגלים וארגומנטים

הפקודה bq set-iam-policy משתמשת בדגלים ובארגומנטים הבאים.

--table={true|false} או -t={true|false}
אופציונלי. כדי להגדיר את מדיניות ה-IAM של טבלה או תצוגה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--reservation={true|false}
כדי להגדיר את מדיניות ה-IAM של הזמנה, מגדירים את האפשרות true (תצוגה מקדימה). ערך ברירת המחדל הוא false. כשמשתמשים בדגל הזה, המערכת מתייחסת אל RESOURCE כאל מזהה הזמנה. להזמנה יכולות להיות קידומות אופציונליות של פרויקט ומיקום: myProject:myLocation.myReservation.

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

FILE_NAME הוא השם של קובץ שמכיל את המדיניות בפורמט JSON.

מידע נוסף על הפקודה bq set-iam-policy זמין במאמר שליטה בגישה למשאבים באמצעות IAM.

bq show

משתמשים בפקודה bq show כדי להציג מידע על משאב.

תקציר

bq show [FLAGS] [RESOURCE]

דגלים וארגומנטים

הפקודה bq show משתמשת בדגלים ובארגומנטים הבאים:

--assignee_id=ASSIGNEE
כשמשתמשים בדגל --reservation_assignment, מציינים את המזהה של תיקייה, ארגון או פרויקט. משתמשים בדגל --assignee_type כדי לציין איזה סוג של מקבל הקצאה רוצים להציג.
--assignee_type=TYPE
כשמשתמשים בו עם הדגל --reservation_assignment, הוא מציין את סוג הישות שיוצג. משתמשים באחד מהערכים הבאים:
  • FOLDER
  • ORGANIZATION
  • PROJECT
--connection={true|false}
כדי להציג מידע על חיבור, מגדירים את האפשרות true. ערך ברירת המחדל הוא false. מידע נוסף מופיע במאמר בנושא צפייה במשאב חיבור.
--dataset={true|false} או -d={true|false}
כדי להציג מידע על מערך נתונים, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--encryption_service_account={true|false}
כדי להציג את חשבון השירות להצפנה של פרויקט, אם הוא קיים, או ליצור חשבון כזה אם הוא לא קיים, מגדירים את הערך true. ערך ברירת המחדל הוא false. משתמשים בדגל --project_id.
--job={true|false} או -j={true|false}
כדי להציג מידע על משימה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--job_type=JOB_TYPE
כשמשתמשים בו עם הדגל --reservation_assignment, מציינים את סוג העבודה של הקצאות ההזמנות שרוצים להציג. משתמשים באחד מהערכים הבאים:
  • QUERY
  • PIPELINE
  • ML_EXTERNAL
--model={true|false} או -m={true|false}
To show information about a BigQuery ML model, set to true. ערך ברירת המחדל הוא false.
--reservation={true|false}
כדי להציג מידע על הזמנה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--reservation_assignment={true|false}
כשמגדירים את האפשרות true, הפקודה מציגה את הקצאות ההזמנות לתיקייה, לארגון או לפרויקט שצוינו. הפקודה מציגה את ההקצאות המפורשות של משאב היעד, אם יש כאלה. אחרת, היא מציגה הקצאות שעברו בירושה ממשאבי הורה. לדוגמה, יכול להיות שפרויקט יקבל בירושה הקצאות מתיקיית האב שלו. כשמשתמשים בדגל הזה, הדגלים --job_type, ‏--assignee_type ו---assignee_id חלים. ערך ברירת המחדל הוא false.
--routine={true|false}
כדי להציג מידע על תרחיש, מגדירים את האפשרות true. ערך ברירת המחדל הוא false. שגרה יכולה להיות פונקציה מתמידה בהגדרת המשתמש, פונקציית טבלה (בגרסת Preview) או פרוצדורה מאוחסנת.
--schema={true|false}
כדי להציג רק את הסכימה של הטבלה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--transfer_config={true|false}
כדי להציג מידע על הגדרות ההעברה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--transfer_run={true|false}
כדי להציג מידע על הרצת העברה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--view={true|false}
כדי להציג מידע על צפייה, מגדירים את הערך true. ערך ברירת המחדל הוא false.
RESOURCE
המשאב שרוצים להציג את המידע שלו.

למידע נוסף על השימוש בפקודה bq show:

bq update

משתמשים בפקודה bq update כדי לשנות משאב.

תקציר

bq update [FLAGS] [RESOURCE]

דגלים וארגומנטים

הפקודה bq update משתמשת בדגלים ובארגומנטים הבאים:

--add_tags=TAGS
האפשרות הזו זמינה רק בטבלאות ובמערכי נתונים. מציינים את התגים שמצורפים למשאב, מופרדים באמצעות פסיקים. לדוגמה: 556741164180/env:prod,myProject/department:sales. לכל תג צריך להיות שם מפתח במרחב השמות ושם מקוצר של ערך.
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
מספר המשבצות להתאמה אוטומטית לעומס שהוקצו להזמנה. הערך הזה שווה לערך של גודל ההזמנה המקסימלי פחות מספר המשבצות של ערך הבסיס. האפשרות הזו זמינה רק עם הדגל --reservation ואם ההזמנה נוצרה עם מהדורה.
--capacity_commitment={true|false}
כדי לעדכן מחויבות קיבולת, מגדירים את הערך true. משתמשים בדגל הזה עם הדגלים --merge,‏ --plan,‏ --renewal_plan,‏ --split ו---slots.
--clear_all_tags={true|false}
האפשרות הזו זמינה רק בטבלאות ובמערכי נתונים. כדי למחוק את כל התגים ממקור, מגדירים את הערך true. ערך ברירת המחדל הוא false.
--clear_label=KEY:VALUE
הסרת תווית מהמשאב. כדי לציין את התווית שרוצים להסיר, משתמשים בפורמט KEY:VALUE. כדי להסיר כמה תוויות, חוזרים על הסימון הזה.
--clustering_fields=COLUMNS
מעדכן את מפרט האשכולות של טבלה. הערך COLUMNS הוא רשימה מופרדת בפסיקים של שמות העמודות שבהן יש להשתמש לצורך אשכול. כדי להסיר את האשכולות, מגדירים את הערך של COLUMNS ל-"" (המחרוזת הריקה). מידע נוסף מופיע במאמר בנושא שינוי מפרט האשכול.
--target_job_concurrency=CONCURRENCY
כשמשתמשים בדגל --reservation, מציינים את מספר היעד של השאילתות שמופעלות בו-זמנית. ערך ברירת המחדל הוא 0, כלומר, מספר המשתמשים בו-זמנית מוגדר באופן אוטומטי על סמך גודל ההזמנה. מידע נוסף זמין במאמר שימוש בתורים של שאילתות.
--dataset={true|false} או -d={true|false}
כדי לעדכן מערך נתונים, מגדירים את הערך ל-true. ערך ברירת המחדל הוא false.
--default_kms_key=KEY
מציין את מזהה משאב המפתח של Cloud KMS שמוגדר כברירת מחדל להצפנת נתוני טבלה במערך נתונים. מפתח ברירת המחדל משמש אם לא מסופק מפתח מפורש ליצירת טבלה או לשאילתה.
--default_partition_expiration=SECONDS

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

מועד התפוגה של מחיצה מוגדר לתאריך ה-UTC של המחיצה בתוספת הערך המספרי. אם המאפיין הזה מוגדר, הוא מבטל את ברירת המחדל של תפוגת הטבלה ברמת מערך הנתונים, אם היא קיימת. אם מציינים את הדגל --time_partitioning_expiration כשיוצרים או מעדכנים טבלה מחולקת למחיצות, תאריך התפוגה של המחיצות ברמת הטבלה מקבל עדיפות על פני תאריך התפוגה של המחיצות שמוגדר כברירת מחדל ברמת מערך הנתונים. מציינים 0 כדי להסיר תאריך תפוגה קיים.

--default_table_expiration=SECONDS

מספר שלם שמעדכן את משך החיים שמוגדר כברירת מחדל, בשניות, לטבלאות שנוצרו לאחרונה במערך נתונים. זמן התפוגה מוגדר לשעה הנוכחית בשעון UTC בתוספת הערך הזה. מציינים 0 כדי להסיר את תאריך התפוגה הקיים.

--description=DESCRIPTION

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

--destination_reservation_id=RESERVATION_ID

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

--display_name=DISPLAY_NAME

עדכון השם המוצג של הגדרת העברה.

--etag=ETAG

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

--expiration SECONDS

כדי לעדכן את תאריך התפוגה של הטבלה, המודל, תמונת המצב של הטבלה או התצוגה, צריך לכלול את הדגל הזה. מחליפים את SECONDS במספר השניות שחלפו בין זמן העדכון לבין זמן התפוגה. כדי להסיר את תאריך התפוגה של טבלה, מודל, תמונת מצב של טבלה או תצוגה, מגדירים את הארגומנט SECONDS ל-0.

--external_table_definition={TABLE::PATH_TO_FILE|TABLE::DEFINITION}

מעדכנים טבלה חיצונית עם הגדרת הטבלה שצוינה. הגדרת הטבלה יכולה להיות נתיב לקובץ מקומי של הגדרת טבלה בפורמט JSON או הגדרת טבלה מוטבעת בפורמט SCHEMA@SOURCE_FORMAT=CLOUD_STORAGE_URI. הערך SCHEMA הוא רשימה מופרדת בפסיקים של הגדרות עמודות, בפורמט FIELD:DATA_TYPE, FIELD:DATA_TYPE. אם משתמשים בקובץ הגדרת טבלה, לא מוסיפים סיומת לשם הקובץ.

לדוגמה:

--external_table_definition=myTable::/tmp/tabledef
--external_table_definition=myTable::Region:STRING,Quarter:STRING,Total_sales:INTEGER@CSV=gs://mybucket/sales.csv

--ignore_idle_slots={true|false}

משתמשים בדגל --reservation. כדי להגביל את העבודות שמופעלות בהזמנה שצוינה כך שישתמשו רק במשבצות שהוקצו להזמנה הזו, צריך להגדיר את הערך true. ערך ברירת המחדל הוא false. משימות בהזמנה שצוינה יכולות להשתמש במשבצות בלי פעילות מהזמנות אחרות, או במשבצות שלא הוקצו לאף הזמנה. מידע נוסף מופיע במאמר בנושא משבצות זמן פנויות.

--max_staleness=INTERVAL

מציינת ערך INTERVAL שקובע את רמת הטריות המקסימלית המותרת כשמבצעים שאילתה בתצוגה חומרית או בטבלה חיצונית. ערך ברירת המחדל הוא 0-0 0 0:0:0.

לדוגמה:

  • יום אחד: 0-0 1 0:0:0
  • שעה אחת: 0-0 0 1:0:0

כדי להשתמש בדגל הזה, צריך לציין הגדרת טבלה באמצעות הדגל --external_table_definition.

--max_time_travel_hours=HOURS

מציינת את משך חלון הזמן לשינוי נתונים במערך הנתונים בשעות. הערך --max_time_travel_hours צריך להיות מספר שלם שהוא כפולה של 24 (48, ‏ 72, ‏ 96, ‏ 120, ‏ 144, ‏ 168) בין 48 (יומיים) ל-168 (7 ימים).

--merge={true|false}

כדי למזג שתי התחייבויות לקיבולת, מגדירים את --merge לערך true. מגדירים את הדגל --capacity_commitment לערך true, מציינים את המיקום של ההתחייבויות שרוצים למזג באמצעות הדגל --location, ומחליפים את RESOURCE במזהים של שתי ההתחייבויות שרוצים למזג, כשהם מופרדים בפסיק. מידע נוסף מופיע במאמר בנושא מיזוג של שתי התחייבויות.

--metadata_cache_mode=METADATA_CACHE_MODE

הפעלת מטמון מטא-נתונים לטבלה חיצונית עם חיבור. משתמשים באחד מהערכים הבאים:

  • AUTOMATIC
  • MANUAL

מציינים את הערך AUTOMATIC כדי לרענן באופן אוטומטי את המטא-נתונים ששמורים במטמון. מציינים את הערך MANUAL כדי להפסיק את הרענון האוטומטי. כדי להשתמש בדגל הזה, צריך לציין הגדרת טבלה עם הדגל --external_table_definition.

--model={true|false} או -m={true|false}

כדי לעדכן את המטא-נתונים של מודל BigQuery ML, מגדירים את הערך true. ערך ברירת המחדל הוא false.

--params={"PARAMETER":"VALUE"} or -p={"PARAMETER":"VALUE"}

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

--plan=PLAN

כשמשתמשים בדגל --capacity_commitment, המערכת ממירה התחייבות לקיבולת לתוכנית התחייבות ארוכה יותר שצוינה. מחליפים את PLAN באחד מהערכים הבאים:

  • ANNUAL
  • THREE_YEAR
--refresh_window_days=DAYS

מספר שלם שמציין חלון רענון מעודכן (בימים) להגדרת העברה.

--remove_tags=TAG_KEYS

האפשרות הזו זמינה רק במערכי נתונים ובטבלאות. מציינים את התגים שרוצים להסיר מהמשאב, מופרדים בפסיקים – לדוגמה, 556741164180/env,myProject/department. לכל מפתח תג צריך להיות שם מפתח במרחב השמות.

--renewal_plan=PLAN

כשמשתמשים בדגל --capacity_commitment, התוכנית לחידוש ההתחייבות השנתית לקיבולת מתעדכנת. מחליפים את PLAN באחד מהערכים הבאים:

  • ANNUAL
  • THREE_YEAR
  • NONE

לקוחות שמשתמשים בתמחור מדור קודם לפי תעריף קבוע יכולים גם להשתמש באחד מהערכים הבאים:

  • FLEX
  • MONTHLY
  • ANNUAL
--reservation={true|false}

ההגדרה קובעת אם לעדכן הזמנה. ערך ברירת המחדל הוא false.

--reservation_assignment={true|false}

ההגדרה קובעת אם לעדכן הקצאת הזמנה. ערך ברירת המחדל הוא false.

--schema={SCHEMA_FILE|SCHEMA}

מציינים את הנתיב לקובץ סכימת JSON מקומי או רשימה מופרדת בפסיקים של הגדרות עמודות בפורמט FIELD:DATA_TYPE, FIELD:DATA_TYPE. אם אתם משתמשים בקובץ סכימה, אל תוסיפו סיומת לשם הקובץ.

לדוגמה:

--schema=/tmp/tabledef
--schema=Region:STRING,Quarter:STRING,Total_sales:INTEGER

--service_account_name=SERVICE_ACCOUNT

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

--set_label=KEY:VALUE

מציין תווית לעדכון. כדי לעדכן כמה תוויות, חוזרים על הפעולה הזו.

--slots=NUMBER_OF_BASELINE_SLOTS

כשמשתמשים בדגלים --capacity_commitment ו---split, מציינים את מספר המשבצות הבסיסיות שיוקצו מתוך התחייבות קיימת לקיבולת, ויועברו להתחייבות חדשה. מחליפים את RESOURCE במזהה של ההתחייבות שממנה רוצים לפצל את ההתחייבות החדשה.

כשמשתמשים בדגל --reservation, הפקודה מעדכנת את מספר המשבצות בהזמנה.

--source=FILE

הנתיב לקובץ JSON מקומי שמכיל מטען ייעודי (payload) שמשמש לעדכון משאב. לדוגמה, אפשר להשתמש בדגל הזה כדי לציין קובץ JSON שמכיל משאב dataset עם מאפיין access מעודכן. הקובץ משמש להחלפת אמצעי בקרת הגישה של מערך הנתונים. קובץ ה-JSON לא יכול לכלול סימן לסדר הבתים (BOM).

--split={true|false}

כשמגדירים את הערך true ומשתמשים בדגל --capacity_commitment, מציינים שרוצים לפצל התחייבות קיימת לקיבולת. משתמשים בדגל --location כדי לציין את המיקום של ההתחייבות שממנה רוצים לפצל, ובדגל --slots כדי לציין את מספר המשבצות שרוצים לפצל. מחליפים את RESOURCE במזהה של ההתחייבות שממנה רוצים לפצל. מידע נוסף מופיע במאמר בנושא פיצול התחייבות.

--storage_billing_model=BILLING_MODEL

מציינת את מודל החיוב על אחסון של מערך נתונים. מגדירים את הערך --storage_billing_model ל-PHYSICAL כדי להשתמש בבייטים פיזיים בחישוב עלויות האחסון, או ל-LOGICAL כדי להשתמש בבייטים לוגיים.

כשמשנים את מודל החיוב של מערך נתונים, חולפות 24 שעות עד שהשינוי נכנס לתוקף.

אחרי שמשנים את מודל החיוב של האחסון של מערך נתונים, צריך לחכות 14 ימים לפני שאפשר לשנות שוב את מודל החיוב של האחסון.

--table={true|false} או -t={true|false}

קובעת אם לעדכן טבלה. ערך ברירת המחדל הוא false.

--target_dataset=DATASET

אם מציינים מערך נתונים, הוא יעודכן בהגדרות ההעברה.

--time_partitioning_expiration=SECONDS

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

--time_partitioning_field=COLUMN_NAME

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

--time_partitioning_type=INTERVAL

מציין את סוג החלוקה למחיצות. אפשר להשתמש באחד מהערכים הבאים:

  • DAY
  • HOUR
  • MONTH
  • YEAR

אי אפשר לשנות את סוג החלוקה למחיצות של טבלה קיימת.

--transfer_config={true|false}

המדיניות קובעת אם לעדכן את הגדרות ההעברה. ערך ברירת המחדל הוא false.

--update_credentials={true|false}

ההגדרה קובעת אם לעדכן את פרטי הכניסה של הגדרות ההעברה. ערך ברירת המחדל הוא false.

--use_legacy_sql={true|false}

הגדרה ל-false כדי לעדכן את שאילתת ה-SQL של תצוגה מ-SQL מדור קודם ל-GoogleSQL. ערך ברירת המחדל נקבע לפי הגדרות התצורה. אם לא מציינים את הגדרת התצורה, ערך ברירת המחדל הוא true, והשאילתה משתמשת ב-SQL מדור קודם.

--vertex_ai_model_id=VERTEX_AI_MODEL_ID

כאשר מצוין, מעדכן את מזהה המודל של מודל BigQuery ML שרשום ב-מרשם המודלים של Vertex AI.

--view=QUERY

כשמציינים, מעדכנים את שאילתת ה-SQL של תצוגה.

--view_udf_resource=FILE

מעדכן את ה-URI של Cloud Storage או את הנתיב לקובץ קוד מקומי שנטען ומוערך באופן מיידי כמשאב של פונקציה בהגדרת המשתמש בשאילתת SQL של תצוגה. אפשר לחזור על האפשרות הזו כדי לציין כמה קבצים.

RESOURCE

המשאב שרוצים לעדכן.

למידע נוסף על השימוש בפקודה bq update:

bq version

משתמשים בפקודה bq version כדי להציג את מספר הגרסה של כלי שורת הפקודה של BigQuery.

תקציר

bq version

bq wait

משתמשים בפקודה bq wait כדי להמתין מספר שניות מוגדר עד לסיום של עבודה. אם לא מציינים משימה, הפקודה מחכה שהמשימה הנוכחית תסתיים.

תקציר

bq wait [FLAGS] [JOB] [SECONDS]

דוגמאות

bq wait
bq wait --wait_for_status=RUNNING 12345 100

דגלים וארגומנטים

הפקודה bq wait משתמשת בדגלים ובארגומנטים הבאים:

--fail_on_error={true|false}
כדי להחזיר הצלחה אם העבודה הושלמה במהלך זמן ההמתנה, גם אם העבודה נכשלה, צריך להגדיר את הערך false. ערך ברירת המחדל הוא true. אחרי שזמן ההמתנה מסתיים, הפקודה יוצאת עם שגיאה אם העבודה עדיין פועלת, או אם העבודה הסתיימה אבל נכשלה.
--wait_for_status=STATUS

אם מציינים סטטוס, המערכת ממתינה לסטטוס מסוים של המשימה לפני היציאה. אפשר להשתמש באחד מהערכים הבאים:

  • PENDING
  • RUNNING
  • DONE

ערך ברירת המחדל הוא DONE.

JOB

מציינת את המשימה שממתינים לה. אפשר להשתמש בפקודה bq ls --jobs myProject כדי למצוא מזהה של משימה.

SECONDS

מציין את מספר השניות המקסימלי להמתנה עד לסיום העבודה. אם מזינים את הערך 0, הפקודה מבצעת בדיקה חוזרת כדי לראות אם העבודה הושלמה ומוחזרת באופן מיידי. אם לא מציינים ערך של מספר שלם, הפקודה ממתינה עד שהעבודה מסתיימת.