הפניה לכלי שורת הפקודה של 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 של נתונים.

  • ה-flag הספציפי לפקודה 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 במיקום שבו רוצים לשמור את היומן. כלי שורת הפקודה bq פועל על ידי ביצוע קריאות 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, במקרים הרלוונטיים:

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

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

  • הנתיב לקובץ – יומנים לקובץ שצוין
  • stdout - logs to standard output
  • 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 כדי להציג מידע על משרות. הדגל של המיקום הוא אופציונלי בפקודות הבאות:

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

בתצוגה מקדימה. כדי להתחבר לנקודת קצה אזורית, מגדירים את הדגל --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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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]

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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 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

הגדרות flag וארגומנטים

הפקודה 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]

הגדרות flag וארגומנטים

הפקודה 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
מציינת את משך הזמן בשעות של חלון הזמן של 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
מספר המשבצות להקצאה אוטומטית שהוקצו להזמנה. הערך הזה שווה לערך של גודל ההזמנה המקסימלי פחות מספר משבצות הבסיס.
--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
מציין את המזהה של התיקייה, הארגון או הפרויקט.
--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 --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. לדוגמה, אם ה-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 הוא תאריך ההתחלה של חלוקת הטווח, כולל.
  • 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 ‏'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
Specifies the lifetime for the view. אם הערך של 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 ]

הגדרות flag וארגומנטים

הפקודה 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}
Specifies whether to ignore any values in a row that are not present in the schema. ערך ברירת המחדל הוא 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

הגדרות flag וארגומנטים

הפקודה 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'

הגדרות flag וארגומנטים

הפקודה 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) עבור חלוקה למחיצות (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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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

הגדרות flag וארגומנטים

הפקודה 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]

הגדרות flag וארגומנטים

הפקודה 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]

הגדרות flag וארגומנטים

הפקודה 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 Model Registry.

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

הגדרות flag וארגומנטים

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

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

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

  • PENDING
  • RUNNING
  • DONE

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

JOB

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

SECONDS

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