חומר עזר על כלי שורת הפקודה של BigQuery

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

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

איך משתמשים בכלי שורת הפקודה של 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

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

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

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

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

כדי להוסיף ערכי ברירת מחדל להגדרות flag בשורת הפקודה ב-.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.
  • הדגל --use_legacy_sql הספציפי לפקודה query מוגדר ל-false כדי להפוך את GoogleSQL לתחביר ברירת המחדל של השאילתה.

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

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

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

עזרה בנושא CLI

כדי לקבל עזרה לגבי כלי שורת הפקודה של BigQuery, אפשר להריץ את הפקודות הבאות:

תיאור פורמט הפקודה Help דוגמה
הגרסה המותקנת 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 מוציאה פלט לקובץ השגיאה הסטנדרטית (stderr). כדי לתעד יותר בקשות, משתמשים בדגל --httplib2_debuglevel=LOG_LEVEL. ככל שהערך של LOG_LEVEL גבוה יותר, כך נרשם יותר מידע על בקשות ה-HTTP.

כדי לפתור את השגיאות:

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

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

דגלים כלליים

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

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

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

  • הנתיב לקובץ – רישום ביומן של הקובץ שצוין
  • ‫stdout – רישום ביומן לפלט סטנדרטי (stdout)
  • ‫stderr – רישום ביומן של שגיאה סטנדרטית (stderr)
  • ‫false – בקשות ותגובות של ה-API לא מתועדות ביומן (ברירת המחדל)
--bigquery_discovery_api_key=API_KEY

מציין מפתח API שמשמש לבקשות של מסמכי Discovery.

--bigqueryrc=PATH

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

--ca_certificates_file=PATH

מציין את המיקום של קובץ Certificate Authority Service (CA).

--dataset_id=DATASET_ID

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

--debug_mode={true|false}

אם הערך הוא true, מוצגים מעקבי קריאות (tracebacks) בחריגות של 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.

--enable_resumable_uploads={true|false}

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

--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, הפקודה מתעדת ביומן את הבקשות והתגובות של שרת ה-HTTP ב-stderr, בנוסף להודעות השגיאה. אם הערך של DEBUG_LEVEL לא גדול מ-0, או אם לא משתמשים בדגל --httplib2_debuglevel, יוצגו רק הודעות שגיאה.

לדוגמה:

--httplib2_debuglevel=1

--job_id=JOB_ID

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

--job_property=KEY:VALUE

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

--jobs_query_use_request_id={true|false}

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

--jobs_query_use_results_from_response={true|false}

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

--location=LOCATION

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

  • 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

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

--mtls={true|false}

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

--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.

--quota_project_id=PROJECT_ID

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

--request_reason=REASON

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

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

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

--trace=token:TOKEN

מציין אסימון מעקב שצריך לכלול בבקשות API.

--universe_domain=DOMAIN

מציינת את הדומיין האוניברסלי שבו צריך להשתמש בדומיינים של Trusted Partner Cloud ‏ (TPC).

--use_gcloud_config={true|false}

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

--use_gcloud_config_cache={true|false}

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

--use_google_auth={true|false}

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

--use_lep={true|false}

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

--use_regional_endpoints={true|false}

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

--use_rep={true|false}

אם הערך הוא true, המערכת משתמשת בנקודת קצה של REP על סמך המיקום של הפעולה. ערך ברירת המחדל הוא 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

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

תקציר

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}

כדי ליצור תמונת מצב של טבלה שצוינה בארגומנט 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 (גרסת טרום-השקה (Preview)). ערך ברירת המחדל הוא 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, משתמשים ב-BigQuery Storage Write API (gRPC).

תקציר

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. ציינו את שמות הנכסים ברשימה מופרדת בפסיקים. שמות המאפיינים תלויי אותיות רישיות (case-sensitive) וחייבים להתייחס למאפיינים ברמה העליונה. אפשר להשתמש בדגל הזה גם בייצוא של 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 של מקור "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 ENUM הם ערכי STRING, צריך להגדיר את הדגל הזה לערך true. ערך ברירת המחדל הוא 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. השגרות כוללות פונקציות מתמידות בהגדרת המשתמש, פונקציות טבלה (תצוגה מקדימה) ופרוצדורות מאוחסנות.

--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.

--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
מציין את משך הזמן בשעות של חלון הזמן של Time Travel של מערך הנתונים. הערך של --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
מציין את מספר המשבצות הבסיסיות שיוקצו להזמנה הזו.
--edition=EDITION
המהדורה שמשויכת להתחייבות לקיבולת. צריך להיות אחד מהבאים:
  • STANDARD
  • ENTERPRISE
  • ENTERPRISE_PLUS
--autoscale_max_slots=NUMBER_OF_AUTOSCALING_SLOTS
מספר ה-slots להתאמה אוטומטית לעומס שהוקצו להזמנה. הערך הזה שווה לגודל המקסימלי של ההזמנה פחות מספר המשבצות הבסיסיות.
--max_slots=MAXIMUM_NUMBER_OF_SLOTS
‫
המספר המקסימלי של משבצות שההזמנה תצרוך. צריך להגדיר את הדגל --scaling_mode (גרסת טרום-השקה (Preview)).
--scaling_mode=SCALING_MODE

מצב ההתאמה לעומס (scaling) של ההזמנה. צריך לציין אחת מהאפשרויות הבאות:

  • IDLE_SLOTS_ONLY
  • ALL_SLOTS
  • AUTOSCALE_ONLY
  • SCALING_MODE_UNSPECIFIED

צריך להגדיר עם הדגל --max_slots (תצוגה מקדימה).

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

bq mk --reservation_assignment

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

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

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

bq mk --reservation-group

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

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

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

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. לדוגמה, אם הקטגוריה מכילה כמה סוגים של נתונים, אפשר להגדיר שהטבלה תשתמש רק בקובצי PARQUET על ידי ציון gs://bucket_name/*.parquet. מידע נוסף על שימוש בתווים כלליים לחיפוש מופיע במאמר תווים כלליים לחיפוש של URI.

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

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

--file_set_spec_type=FILE_SET_SPEC_TYPE

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

  • ‫FILE_SYSTEM_MATCH: הרחבת מזהי ה-URI של המקור על ידי הצגת קבצים ממאגר האובייקטים. זוהי התנהגות ברירת המחדל אם FileSetSpecType לא מוגדר.
  • ‫NEW_LINE_DELIMITED_MANIFEST: מציין שכתובות ה-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. לדוגמה, מציינים 0-0 0 4:0:0 למרווח זמן של 4 שעות. עם הערך הזה, פעולות בטבלה משתמשות במטא-נתונים שנשמרו במטמון אם הם רועננו ב-4 השעות האחרונות. אם המטא-נתונים במטמון ישנים יותר, הפעולה חוזרת לאחזור מטא-נתונים מ-Cloud Storage.

--object_metadata=STRING

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

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

--range_partitioning=COLUMN_NAME,START,END,INTERVAL

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

  • ‫column_name היא העמודה שמשמשת ליצירת המחיצות של טווח המספרים השלמים.
  • ‫start הוא תחילת טווח החלוקה למחיצות, כולל.
  • ‫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, הדגל הזה מציין אם להסיק שסוגים לוגיים של ENUM ב-Parquet הם ערכי 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 "Zulu".

הארגומנט 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, הדגל הזה מציין אם להסיק סוגים לוגיים של ENUM ב-Parquet כערכי STRING. ערך ברירת המחדל הוא false.

--file_set_spec_type=FILE_SET_SPEC_TYPE

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

  • ‫FILE_SYSTEM_MATCH: הרחבת מזהי ה-URI של המקור על ידי הצגת קבצים ממאגר האובייקטים. זוהי התנהגות ברירת המחדל אם FileSetSpecType לא מוגדר.
  • ‫NEW_LINE_DELIMITED_MANIFEST: מציין שכתובות ה-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

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

תקציר

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 והפורמט הצפוי של time-unit-suffix לכל אחד מהם:

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

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

PARTITION_TABLE

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

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

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 הוא תחילת טווח החלוקה למחיצות, כולל.
  • ‫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

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

--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

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

תקציר

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. כשמוחקים מערך נתונים, טבלה, משימה, מודל, שגרת אירועים, חיבור או הגדרות העברה, הגדרת הדגל הזה לערך true גם מתעלמת משגיאות Not found אם המשאב לא קיים. ערך ברירת המחדל הוא 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 (גרסת טרום-השקה (Preview)). ערך ברירת המחדל הוא 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}
כדי להציג מידע על מודל BigQuery ML, מגדירים את הערך 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
‫
מספר ה-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

מציין את משך הזמן בשעות של חלון הזמן של Time Travel של מערך הנתונים. הערך של --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 שמכיל משאב של קבוצת נתונים עם מאפיין access מעודכן. הקובץ משמש להחלפת אמצעי בקרת הגישה של מערך הנתונים. קובץ ה-JSON לא יכול לכלול תו סימון סדר בתים (BOM).

--split={true|false}

כשמגדירים את הערך true ומשתמשים בדגל --capacity_commitment, מציינים שרוצים לפצל התחייבות קיימת למכסת נפח. משתמשים בדגל --location כדי לציין את המיקום של ההתחייבות שממנה רוצים לפצל, ובדגל --slots כדי לציין את מספר ה-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 או את הנתיב לקובץ קוד מקומי שנטען ומוערך באופן מיידי כמשאב של פונקציה בהגדרת המשתמש (UDF) בשאילתת 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, הפקודה דוגמת את השלמת המשימה וחוזרת מיד. אם לא מציינים ערך של מספר שלם, הפקודה ממתינה עד שהמשימה מסתיימת.