תזמון שאילתות
בדף הזה מוסבר איך לתזמן שאילתות חוזרות ב-BigQuery.
אפשר לתזמן שאילתות להפעלה חוזרת. שאילתות מתוזמנות צריכות להיכתב ב-GoogleSQL, שיכול לכלול הצהרות של שפת הגדרת נתונים (DDL) ושל שפת טיפול בנתונים (DML). אפשר לארגן את תוצאות השאילתה לפי תאריך ושעה על ידי הגדרת פרמטרים למחרוזת השאילתה ולטבלת היעד.
כשיוצרים או מעדכנים את לוח הזמנים של שאילתה, השעה המתוזמנת של השאילתה מומרת מהשעון המקומי לשעון UTC. שעון UTC לא מושפע משעון קיץ.
לפני שמתחילים
- שאילתות מתוזמנות משתמשות בתכונות של שירות העברת הנתונים ל-BigQuery. מוודאים שביצעתם את כל הפעולות שנדרשות במאמר הפעלת שירות העברת נתונים ל-BigQuery.
- צריך להקצות תפקידים בניהול הזהויות והרשאות הגישה (IAM) שנותנים למשתמשים את ההרשאות הנדרשות לביצוע כל משימה שמופיעה במאמר הזה.
- אם אתם מתכננים לציין מפתח הצפנה בניהול הלקוח (CMEK), ודאו שלחשבון השירות שלכם יש הרשאות להצפנה ולפענוח, ושיש לכם את מזהה מקום האחסון של מפתח Cloud KMS שנדרש לשימוש ב-CMEK. מידע על אופן השימוש במפתחות CMEK עם שירות העברת הנתונים ל-BigQuery זמין במאמר ציון מפתח הצפנה באמצעות שאילתות מתוזמנות.
מגבלות
- שאילתות מתוזמנות שמופעלות בדיוק בשעה עגולה (לדוגמה, 09:00) עשויות להפעיל את עצמן כמה פעמים,
מה שעלול לגרום לתוצאות לא רצויות כמו שכפול נתונים מפעולות
INSERT. כדי למנוע תוצאות לא רצויות כאלה, כדאי להשתמש בלוח זמנים שאינו עגול (לדוגמה, 08:58 או 09:03).
ההרשאות הנדרשות
כדי לתזמן שאילתה, אתם צריכים את הרשאות ה-IAM הבאות:
כדי ליצור את ההעברה, צריך לקבל את ההרשאות
bigquery.transfers.updateו-bigquery.datasets.get, או את ההרשאותbigquery.jobs.create,bigquery.transfers.getו-bigquery.datasets.get.כדי להריץ שאילתה מתוזמנת, אתם צריכים:
- הרשאות
bigquery.datasets.getבמערך הנתונים של היעד bigquery.jobs.create
- הרשאות
כדי לשנות או למחוק שאילתה מתוזמנת, צריך להיות בעלים של השאילתה המתוזמנת עם ההרשאות bigquery.transfers.update ו-bigquery.transfers.get, או עם ההרשאה bigquery.jobs.create.
תפקיד ה-IAM המוגדר מראש אדמין של BigQuery (roles/bigquery.admin) כולל את ההרשאות שצריך כדי לתזמן או לשנות שאילתה.
מידע נוסף על תפקידי IAM ב-BigQuery זמין במאמר תפקידים והרשאות מוגדרים מראש.
כדי ליצור או לעדכן שאילתות מתוזמנות שמופעלות על ידי חשבון שירות, צריך להיות לכם גישה לחשבון השירות הזה. מידע נוסף על מתן תפקיד בחשבון שירות למשתמשים זמין במאמר תפקיד המשתמש בחשבון שירות. כדי לבחור חשבון שירות בממשק המשתמש של שאילתות מתוזמנות במסוףGoogle Cloud , צריך את הרשאות ה-IAM הבאות:
-
iam.serviceAccounts.listכדי להציג רשימה של חשבונות השירות. -
iam.serviceAccountUserכדי להקצות חשבון שירות לשאילתה מתוזמנת.
אפשרויות להגדרות אישיות
בקטעים הבאים מתוארות אפשרויות ההגדרה.
מחרוזת שאילתה
מחרוזת השאילתה צריכה להיות תקינה ולכלול GoogleSQL. כל הרצה של שאילתה מתוזמנת יכולה לקבל את הפרמטרים הבאים של השאילתה.
כדי לבדוק ידנית מחרוזת שאילתה עם הפרמטרים @run_time ו-@run_date לפני תזמון שאילתה, משתמשים בכלי שורת הפקודה של BigQuery.
פרמטרים זמינים
| פרמטר | סוג GoogleSQL | ערך |
|---|---|---|
@run_time |
TIMESTAMP |
מיוצג לפי זמן UTC. בשביל שאילתות שמתוזמנות באופן קבוע, run_time מייצג את שעת ההפעלה המיועדת. לדוגמה, אם השאילתה המתוזמנת מוגדרת ל'כל 24 שעות', ההפרש run_time בין שתי שאילתות עוקבות הוא בדיוק 24 שעות, למרות שזמן הביצוע בפועל עשוי להשתנות מעט. |
@run_date |
DATE |
מייצג תאריך לוגי ביומן. |
דוגמה
הפרמטר @run_time הוא חלק ממחרוזת השאילתה בדוגמה הזו, ששולחת שאילתה למערך נתונים ציבורי בשם hacker_news.stories.
SELECT @run_time AS time, title, author, text FROM `bigquery-public-data.hacker_news.stories` LIMIT 1000
טבלת היעד
אם טבלת היעד של התוצאות לא קיימת כשמגדירים את השאילתה המתוזמנת, מערכת BigQuery מנסה ליצור את הטבלה בשבילכם.
אם אתם משתמשים בשאילתת DDL או DML, במסוף בוחרים את מיקום העיבוד או האזור. Google Cloud צריך לציין מיקום עיבוד בשאילתות DDL או DML שיוצרות את טבלת היעד.
אם טבלת היעד קיימת ואתם משתמשים בWRITE_APPEND
העדפת הכתיבה, אפליקציית BigQuery מוסיפה נתונים לטבלת היעד ומנסה למפות את הסכימה.
BigQuery מאפשר באופן אוטומטי להוסיף שדות ולשנות את הסדר שלהם, וגם להתמודד עם שדות אופציונליים חסרים. אם הסכימה של הטבלה משתנה כל כך הרבה בין הרצות, כך ש-BigQuery לא יכול לעבד את השינויים באופן אוטומטי, השאילתה המתוזמנת תיכשל.
שאילתות יכולות להתייחס לטבלאות מפרויקטים שונים וממערכי נתונים שונים. כשמגדירים שאילתה מתוזמנת, לא צריך לכלול את מערך הנתונים של היעד בשם הטבלה. מציינים את מערך נתוני היעד בנפרד.
מערך הנתונים והטבלה של היעד של שאילתה מתוזמנת צריכים להיות באותו פרויקט כמו השאילתה המתוזמנת.
העדפות כתיבה
העדפת הכתיבה שבוחרים קובעת איך תוצאות השאילתה ייכתבו לטבלת יעד קיימת.
-
WRITE_TRUNCATE: אם הטבלה קיימת, BigQuery מחליף את נתוני הטבלה. -
WRITE_APPEND: אם הטבלה קיימת, אפליקציית BigQuery מוסיפה את הנתונים לטבלה.
אם משתמשים בשאילתת DDL או DML, אי אפשר להשתמש באפשרות של העדפת כתיבה.
יצירה, חיתוך או הוספה של טבלת יעד מתבצעים רק אם BigQuery מצליח להשלים את השאילתה. פעולות של יצירה, חיתוך או הוספה מתרחשות כעדכון אטומי אחד בסיום העבודה.
סידור באשכולות
שאילתות מתוזמנות יכולות ליצור אשכולות רק בטבלאות חדשות, כשהטבלה נוצרת באמצעות משפט DDL CREATE TABLE AS SELECT. אפשר לעיין במאמר יצירת טבלה מסודרת באשכולות מתוצאה של שאילתה בדף שימוש בהצהרות של שפת הגדרת נתונים.
אפשרויות חלוקה למחיצות
שאילתות מתוזמנות יכולות ליצור טבלאות יעד עם מחיצות או בלי מחיצות. אפשר להשתמש בחלוקה למחיצות במסוף Google Cloud , בכלי שורת הפקודה של BigQuery ובשיטות ההגדרה של ה-API. אם משתמשים בשאילתת DDL או DML עם חלוקה למחיצות, משאירים את השדה של חלוקת טבלת היעד למחיצות ריק.
אפשר להשתמש בסוגים הבאים של חלוקת טבלאות למחיצות ב-BigQuery:
- חלוקה למחיצות של טווח מספרים שלמים:
טבלאות שמחולקות למחיצות על סמך טווחים של ערכים בעמודה ספציפית
INTEGER. - חלוקה למחיצות לפי עמודה של יחידת זמן:
טבלאות שמחולקות למחיצות על סמך עמודה של
TIMESTAMP,DATE, אוDATETIME. - חלוקה למחיצות לפי זמני כתיבת הנתונים: טבלאות שמחולקות למחיצות לפי זמני כתיבת הנתונים. מערכת BigQuery מקצה באופן אוטומטי שורות למחיצות על סמך הזמן שבו BigQuery קולט את הנתונים.
כדי ליצור טבלה עם מחיצות באמצעות שאילתה מתוזמנת במסוףGoogle Cloud , משתמשים באפשרויות הבאות:
כדי להשתמש בחלוקה למחיצות של טווח מספרים שלמים, צריך להשאיר את השדה 'חלוקה למחיצות של טבלת היעד' ריק.
כדי להשתמש בחלוקת מחיצות לפי עמודה של יחידת זמן, צריך לציין את שם העמודה בשדה חלוקת המחיצות של טבלת היעד כשמגדירים שאילתה מתוזמנת.
כדי להשתמש בחלוקה למחיצות בזמן ההטמעה, משאירים את השדה של חלוקת טבלת היעד למחיצות ריק ומציינים את חלוקת התאריכים למחיצות בשם של טבלת היעד. לדוגמה,
mytable${run_date}. מידע נוסף זמין במאמר בנושא תחביר של תבניות פרמטרים.
פרמטרים זמינים
כשמגדירים את השאילתה המתוזמנת, אפשר לציין איך רוצים לחלק את טבלת היעד באמצעות פרמטרים של זמן ריצה.
| פרמטר | סוג התבנית | ערך |
|---|---|---|
run_time |
חותמת זמן בפורמט | לפי שעון UTC, בהתאם ללוח הזמנים. בשביל שאילתות שמתוזמנות באופן קבוע, run_time מייצג את שעת ההפעלה המיועדת. לדוגמה, אם השאילתה המתוזמנת מוגדרת ל'כל 24 שעות', ההפרש run_time בין שתי שאילתות עוקבות הוא בדיוק 24 שעות, למרות שזמן הביצוע בפועל עשוי להשתנות מעט.TransferRun.runTime |
run_date |
מחרוזת תאריך | התאריך של הפרמטר run_time בפורמט הבא: %Y-%m-%d, לדוגמה: 2018-01-01. הפורמט הזה תואם לטבלאות מחולקות למחיצות (Partitions) לפי זמני כתיבת הנתונים. |
מערכת תבניות
שאילתות מתוזמנות תומכות בפרמטרים של זמן ריצה בשם טבלת היעד עם תחביר של תבנית.
תחביר של תבניות פרמטרים
תחביר התבניות תומך בתבניות מחרוזת בסיסיות ובהזזת זמן. הפרמטרים מוזכרים בפורמטים הבאים:
{run_date}{run_time[+\-offset]|"time_format"}
| פרמטר | מטרה |
|---|---|
run_date |
הפרמטר הזה מוחלף בתאריך בפורמט YYYYMMDD. |
run_time |
הפרמטר הזה תומך במאפיינים הבאים:
|
- אסור להוסיף רווח לבן בין run_time, offset ו-time format.
- כדי לכלול בספרייה סוגריים מסולסלים, אפשר להשתמש בתו בריחה (escape)
'\{' and '\}'. - כדי לכלול מירכאות או קו אנכי ב-time_format, כמו
"YYYY|MM|DD", אפשר להשתמש בתו בריחה במחרוזת הפורמט כך:'\"'או'\|'.
דוגמאות ליצירת תבניות של פרמטרים
בדוגמאות האלה אפשר לראות איך מציינים שמות של טבלאות יעד עם פורמטים שונים של זמן, ואיך משנים את זמן הריצה.| run_time (UTC) | פרמטר מבוסס-תבנית | שם טבלת היעד של הפלט |
|---|---|---|
| 2018-02-15 00:00:00 | mytable |
mytable |
| 2018-02-15 00:00:00 | mytable_{run_time|"%Y%m%d"} |
mytable_20180215 |
| 2018-02-15 00:00:00 | mytable_{run_time+25h|"%Y%m%d"} |
mytable_20180216 |
| 2018-02-15 00:00:00 | mytable_{run_time-1h|"%Y%m%d"} |
mytable_20180214 |
| 2018-02-15 00:00:00 | mytable_{run_time+1.5h|"%Y%m%d%H"}
או mytable_{run_time+90m|"%Y%m%d%H"} |
mytable_2018021501 |
| 2018-02-15 00:00:00 | {run_time+97s|"%Y%m%d"}_mytable_{run_time+97s|"%H%M%S"} |
20180215_mytable_000137 |
שימוש בחשבון שירות
אפשר להגדיר שאילתה מתוזמנת שתאומת כחשבון שירות. חשבון שירות הוא חשבון מיוחד שמשויך לפרויקט שלכם ב- Google Cloud . חשבון השירות יכול להריץ משימות, כמו שאילתות מתוזמנות או צינורות לעיבוד ברצף (batch processing), באמצעות פרטי הכניסה שלו לשירות ולא באמצעות פרטי הכניסה של משתמש קצה.
מידע נוסף על אימות באמצעות חשבונות שירות זמין במאמר מבוא לאימות.
אפשר להגדיר את השאילתה המתוזמנת באמצעות חשבון שירות. אם נכנסתם באמצעות זהות מאוחדת, תצטרכו ליצור חשבון שירות כדי ליצור העברה. אם נכנסתם באמצעות חשבון Google, חשבון שירות להעברה הוא אופציונלי.
אפשר לעדכן שאילתה מתוזמנת קיימת באמצעות פרטי הכניסה של חשבון שירות עם כלי שורת הפקודה של BigQuery או Google Cloud מסוף. מידע נוסף זמין במאמר בנושא עדכון פרטי הכניסה של שאילתות מתוזמנות.
ציון מפתח הצפנה בשאילתות מתוזמנות
אפשר לציין מפתחות הצפנה בניהול הלקוח (CMEK) כדי להצפין נתונים להרצת העברה. אתם יכולים להשתמש ב-CMEK כדי לתמוך בהעברות משאילתות מתוזמנות.כשמציינים CMEK בהעברה, שירות העברת הנתונים ל-BigQuery מחיל את ה-CMEK על כל מטמון ביניים בדיסק של נתונים שהועברו, כך שכל תהליך העבודה של העברת הנתונים תואם ל-CMEK.
אי אפשר לעדכן העברה קיימת כדי להוסיף CMEK אם ההעברה לא נוצרה במקור עם CMEK. לדוגמה, אי אפשר לשנות טבלת יעד שהוצפנה במקור בהצפנה שמוגדרת כברירת מחדל כך שהיא תוצפן עכשיו באמצעות CMEK. באופן דומה, אי אפשר לשנות טבלת יעד מוצפנת באמצעות CMEK כך שתהיה לה הצפנה מסוג אחר.
אפשר לעדכן CMEK להעברה אם הגדרת ההעברה נוצרה במקור עם הצפנת CMEK. כשמעדכנים את ה-CMEK בהגדרות של העברה, שירות העברת הנתונים ל-BigQuery מעביר את ה-CMEK לטבלאות היעד בהפעלה הבאה של ההעברה. במהלך ההפעלה, שירות העברת הנתונים ל-BigQuery מחליף את כל ה-CMEK שהתיישנו ב-CMEK החדש. מידע נוסף זמין במאמר בנושא עדכון העברה.
אפשר גם להשתמש במפתחות ברירת המחדל של הפרויקט. כשמציינים מפתח ברירת מחדל של פרויקט בהעברה, שירות העברת הנתונים ל-BigQuery משתמש במפתח ברירת המחדל של הפרויקט כמפתח ברירת המחדל לכל הגדרה חדשה של העברה.
הגדרת שאילתות מתוזמנות
במאמר עיצוב התזמון מופיע תיאור של תחביר התזמון.
פרטים על התחביר של לוחות זמנים מופיעים במאמר משאב: TransferConfig.
המסוף
פותחים את הדף BigQuery במסוף Google Cloud .
מריצים את השאילתה שמעניינת אתכם. כשמרוצים מהתוצאות, לוחצים על תזמון.
אפשרויות השאילתה המתוזמנת ייפתחו בחלונית New scheduled query (שאילתה מתוזמנת חדשה).
בחלונית שאילתה מתוזמנת חדשה:
- בשדה Name for the scheduled query (שם לשאילתה המתוזמנת), מזינים שם כמו
My scheduled query. שם השאילתה המתוזמנת יכול להיות כל ערך שתוכלו לזהות בהמשך אם תצטרכו לשנות את השאילתה. אופציונלי: כברירת מחדל, השאילתה מתוזמנת להפעלה יומית. אפשר לשנות את לוח הזמנים שמוגדר כברירת מחדל על ידי בחירת אפשרות מהתפריט הנפתח חוזר:
כדי לציין תדירות מותאמת אישית, בוחרים באפשרות בהתאמה אישית ומזינים מפרט זמן בסגנון Cron בשדה תזמון בהתאמה אישית – לדוגמה,
every mon 23:30,every 6 hoursאוevery hour on mon,tue,wed,thu,fri. פרטים על לוחות זמנים תקינים, כולל מרווחים מותאמים אישית, מופיעים בשדהscheduleבקטע Resource:TransferConfig.
כדי לשנות את שעת ההתחלה, בוחרים באפשרות התחלה בשעה מוגדרת, ומזינים את תאריך ההתחלה ואת שעת ההתחלה הרצויים.
כדי לציין שעת סיום, בוחרים באפשרות שעת הסיום של לוח הזמנים ומזינים את תאריך הסיום ושעת הסיום הרצויים.
כדי לשמור את השאילתה בלי לוח זמנים, כדי להריץ אותה לפי דרישה בהמשך, בוחרים באפשרות לפי דרישה בתפריט חזרה.
- בשדה Name for the scheduled query (שם לשאילתה המתוזמנת), מזינים שם כמו
בשביל שאילתת GoogleSQL
SELECT, בוחרים באפשרות הגדרת טבלת יעד לתוצאות השאילתה ומזינים את הפרטים הבאים לגבי מערך נתוני היעד.- בשדה Dataset name (שם קבוצת הנתונים), בוחרים את קבוצת הנתונים המתאימה ליעד.
- בשדה Table name (שם הטבלה), מזינים את שם טבלת היעד.
בקטע העדפת כתיבה לטבלת היעד, בוחרים באחת מהאפשרויות הבאות: הוספה לטבלה כדי להוסיף נתונים לטבלה או החלפת הטבלה כדי להחליף את טבלת היעד.
בוחרים את סוג המיקום.
אם הפעלתם את טבלת היעד לתוצאות השאילתה, תוכלו לבחור באפשרות המיקום ייבחר אוטומטית כדי שהמיקום שבו נמצאת טבלת היעד ייבחר אוטומטית.
אחרת, בוחרים את המיקום שבו נמצאים הנתונים שרוצים לשלוח לגביהם שאילתה.
אפשרויות מתקדמות:
אופציונלי: CMEK. אם אתם משתמשים במפתחות הצפנה בניהול הלקוח, אתם יכולים לבחור באפשרות מפתח בניהול הלקוח בקטע אפשרויות מתקדמות. תוצג רשימה של מפתחות CMEK זמינים לבחירה. מידע על האופן שבו מפתחות הצפנה בניהול הלקוח (CMEK) פועלים עם שירות העברת הנתונים ל-BigQuery זמין במאמר ציון מפתח הצפנה באמצעות שאילתות מתוזמנות.
אימות כחשבון שירות אם יש לכם חשבון שירות אחד או יותר שמשויכים לפרויקט Google Cloud , אתם יכולים לשייך חשבון שירות לשאילתה המתוזמנת במקום להשתמש בפרטי הכניסה של המשתמש. בקטע Scheduled query credential (אישורי שאילתה מתוזמנת), לוחצים על התפריט כדי לראות רשימה של חשבונות השירות הזמינים. אם אתם מחוברים כזהות מאוחדת, אתם צריכים להשתמש בחשבון שירות.
הגדרות נוספות:
אופציונלי: מסמנים את התיבה שליחת התראות באימייל כדי לאפשר שליחת התראות באימייל על כשלים בהרצת ההעברה.
אופציונלי: בשדה Pub/Sub topic, מזינים את שם הנושא ב-Pub/Sub, לדוגמה:
projects/myproject/topics/mytopic.
לוחצים על Save.
BQ
אפשרות 1: משתמשים בפקודה bq query.
כדי ליצור שאילתה מתוזמנת, מוסיפים את האפשרויות destination_table (או target_dataset), --schedule ו---display_name לפקודה bq query.
bq query \ --display_name=name \ --destination_table=table \ --schedule=interval
מחליפים את מה שכתוב בשדות הבאים:
-
name. השם המוצג של השאילתה המתוזמנת. השם המוצג יכול להיות כל ערך שתוכלו לזהות בהמשך אם תצטרכו לשנות את השאילתה. -
table. טבלת היעד של תוצאות השאילתה.-
--target_datasetהיא דרך חלופית לתת שם למערך הנתונים של היעד עבור תוצאות השאילתה, כשמשתמשים בה עם שאילתות DDL ו-DML. - אפשר להשתמש ב-
--destination_tableאו ב---target_dataset, אבל לא בשניהם.
-
-
interval. כשמשתמשים בה עםbq query, השאילתה הופכת לשאילתה מתוזמנת חוזרת. חובה לציין לוח זמנים לתדירות ההפעלה של השאילתה. פרטים על לוחות זמנים תקינים, כולל מרווחי זמן מותאמים אישית, מופיעים בשדהscheduleבקטע משאב:TransferConfig. דוגמאות:--schedule='every 24 hours'--schedule='every 3 hours'--schedule='every monday 09:00'--schedule='1st sunday of sep,oct,nov 00:00'
דגלים אופציונליים:
--project_idהוא מזהה הפרויקט. אם לא מציינים את--project_id, נעשה שימוש בפרויקט שמוגדר כברירת מחדל.
--replaceמחליף את טבלת היעד בתוצאות השאילתה אחרי כל הרצה של השאילתה המתוזמנת. כל הנתונים הקיימים יימחקו. בטבלאות שלא מחולקות למחיצות, הסכימה נמחקת גם כן.
--append_tableמוסיף את התוצאות לטבלת היעד.בשביל שאילתות DDL ו-DML, אפשר גם לספק את הדגל
--locationכדי לציין אזור מסוים לעיבוד. אם לא מציינים את--location, המערכת משתמשת במיקום הקרוב ביותר Google Cloud .
לדוגמה, הפקודה הבאה יוצרת שאילתה מתוזמנת בשם My Scheduled Query באמצעות השאילתה SELECT 1 from mydataset.test.
טבלת היעד היא mytable במערך הנתונים mydataset. השאילתה המתוזמנת נוצרת בפרויקט ברירת המחדל:
bq query \
--use_legacy_sql=false \
--destination_table=mydataset.mytable \
--display_name='My Scheduled Query' \
--schedule='every 24 hours' \
--replace=true \
'SELECT
1
FROM
mydataset.test'
אפשרות 2: משתמשים בפקודה bq mk.
שאילתות מתוזמנות הן סוג של העברה. כדי לתזמן שאילתה, אפשר להשתמש בכלי שורת הפקודה של BigQuery כדי ליצור הגדרת העברה.
כדי לתזמן שאילתות, הן צריכות להיות בניב StandardSQL.
מזינים את הפקודה bq mk ומספקים את הדגלים הנדרשים הבאים:
--transfer_config--data_source-
--target_dataset(אופציונלי לשאילתות DDL ו-DML) --display_name--params
דגלים אופציונליים:
--project_idהוא מזהה הפרויקט. אם לא מציינים את--project_id, נעשה שימוש בפרויקט שמוגדר כברירת מחדל.
--scheduleהיא התדירות שבה רוצים שהשאילתה תפעל. אם לא מציינים את--schedule, ברירת המחדל היא 'כל 24 שעות' על סמך זמן היצירה.בשביל שאילתות DDL ו-DML, אפשר גם לספק את הדגל
--locationכדי לציין אזור מסוים לעיבוד. אם לא מציינים את--location, המערכת משתמשת במיקום הקרוב ביותר Google Cloud .
--service_account_nameמשמש לאימות של השאילתה המתוזמנת באמצעות חשבון שירות במקום באמצעות חשבון המשתמש האישי.
--destination_kms_keyמציין את מזהה מקום האחסון של המפתח אם משתמשים במפתח הצפנה בניהול הלקוח (CMEK) להעברה הזו. מידע על אופן השימוש במפתחות CMEK עם שירות העברת הנתונים ל-BigQuery זמין במאמר ציון מפתח הצפנה באמצעות שאילתות מתוזמנות.
bq mk \ --transfer_config \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source
מחליפים את מה שכתוב בשדות הבאים:
-
dataset. מערך נתוני היעד להגדרת ההעברה.- הפרמטר הזה הוא אופציונלי בשאילתות DDL ו-DML. היא נדרשת לכל השאילתות האחרות.
-
name. השם המוצג של הגדרת ההעברה. השם המוצג יכול להיות כל ערך שתוכלו לזהות בהמשך אם תצטרכו לשנות את השאילתה. -
parameters. מכיל את הפרמטרים של הגדרת ההעברה שנוצרה בפורמט JSON. לדוגמה:--params='{"param":"param_value"}'.- בשביל שאילתה מתוזמנת, צריך לספק את הפרמטר
query. - הפרמטר
destination_table_name_templateהוא השם של טבלת היעד.- הפרמטר הזה הוא אופציונלי בשאילתות DDL ו-DML. היא נדרשת לכל השאילתות האחרות.
- בפרמטר
write_disposition, אפשר לבחור באפשרותWRITE_TRUNCATEכדי לחתוך (לשכתב) את טבלת היעד, או באפשרותWRITE_APPENDכדי לצרף את תוצאות השאילתה לטבלת היעד.- הפרמטר הזה הוא אופציונלי בשאילתות DDL ו-DML. היא נדרשת לכל השאילתות האחרות.
- בשביל שאילתה מתוזמנת, צריך לספק את הפרמטר
-
data_source. מקור הנתונים:scheduled_query. - אופציונלי: הדגל
--service_account_nameמשמש לאימות באמצעות חשבון שירות במקום באמצעות חשבון משתמש פרטי. - אופציונלי: הערך
--destination_kms_keyמציין את מזהה משאב המפתח של מפתח Cloud KMS, לדוגמה,projects/project_name/locations/us/keyRings/key_ring_name/cryptoKeys/key_name.
לדוגמה, הפקודה הבאה יוצרת העברה מתוזמנת של שאילתה בשם My Scheduled Query באמצעות השאילתה SELECT 1
from mydataset.test. הטבלה ביעד mytable נחתכת בכל כתיבה, ומערך נתוני היעד הוא mydataset. השאילתה המתוזמנת נוצרת בפרויקט שמוגדר כברירת מחדל, והאימות מתבצע כחשבון שירות:
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Scheduled Query' \
--params='{"query":"SELECT 1 from mydataset.test","destination_table_name_template":"mytable","write_disposition":"WRITE_TRUNCATE"}' \
--data_source=scheduled_query \
--service_account_name=abcdef-test-sa@abcdef-test.iam.gserviceaccount.com
בפעם הראשונה שמריצים את הפקודה, מקבלים הודעה כמו זו:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
פועלים לפי ההוראות בהודעה ומדביקים את קוד האימות בשורת הפקודה.
API
משתמשים בשיטה projects.locations.transferConfigs.create ומספקים מופע של המשאב TransferConfig.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הגדרת שאילתות מתוזמנות באמצעות חשבון שירות
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הצגת הסטטוס של שאילתה מתוזמנת
המסוף
כדי לראות את הסטטוס של השאילתות המתוזמנות, בתפריט הניווט לוחצים על תזמון ומסננים לפי שאילתה מתוזמנת. כדי לקבל פרטים נוספים על שאילתה מתוזמנת, לוחצים עליה.
BQ
שאילתות מתוזמנות הן סוג של העברה. כדי להציג את הפרטים של שאילתה מתוזמנת, אפשר קודם להשתמש בכלי שורת הפקודה של BigQuery כדי להציג את רשימת ההגדרות של ההעברה.
מזינים את הפקודה bq ls ומספקים את דגל ההעברה --transfer_config. נדרשים גם הדגלים הבאים:
--transfer_location
לדוגמה:
bq ls \
--transfer_config \
--transfer_location=us
כדי להציג את הפרטים של שאילתה מתוזמנת אחת, מזינים את הפקודה bq show
ומספקים את transfer_path של אותה שאילתה מתוזמנת או של הגדרת העברה.
לדוגמה:
bq show \
--transfer_config \
projects/862514376110/locations/us/transferConfigs/5dd12f26-0000-262f-bc38-089e0820fe38
API
משתמשים בשיטה projects.locations.transferConfigs.list ומספקים מופע של המשאב TransferConfig.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
עדכון שאילתות מתוזמנות
המסוף
כדי לעדכן שאילתה מתוזמנת:
- בתפריט הניווט, לוחצים על Scheduled queries (שאילתות מתוזמנות) או על Scheduling (תזמון).
- ברשימת השאילתות המתוזמנות, לוחצים על שם השאילתה שרוצים לשנות.
- בדף פרטי שאילתה מתוזמנת שנפתח, לוחצים על עריכה.
- אופציונלי: משנים את הטקסט של השאילתה בחלונית לעריכת שאילתות.
- לוחצים על תזמון שאילתה ואז על עדכון שאילתה מתוזמנת.
- אופציונלי: משנים אפשרויות אחרות לקביעת לוח הזמנים של השאילתה.
- לוחצים על עדכון.
BQ
שאילתות מתוזמנות הן סוג של העברה. כדי לעדכן שאילתה מתוזמנת, אפשר להשתמש בכלי שורת הפקודה של BigQuery כדי ליצור הגדרת העברה.
מזינים את הפקודה bq update עם הדגל --transfer_config הנדרש.
דגלים אופציונליים:
--project_idהוא מזהה הפרויקט. אם לא מציינים את--project_id, נעשה שימוש בפרויקט שמוגדר כברירת מחדל.
--scheduleהיא התדירות שבה רוצים שהשאילתה תפעל. אם לא מציינים את--schedule, ברירת המחדל היא 'כל 24 שעות' על סמך זמן היצירה.המדיניות
--service_account_nameתקפה רק אם המדיניות--update_credentialsמוגדרת. מידע נוסף זמין במאמר בנושא עדכון פרטי הכניסה של שאילתות מתוזמנות.
--target_dataset(אופציונלי בשאילתות DDL ו-DML) היא דרך חלופית לתת שם למערך הנתונים של היעד לתוצאות השאילתה, כשמשתמשים בה עם שאילתות DDL ו-DML.
--display_nameהוא השם של השאילתה המתוזמנת.
--paramsהפרמטרים של הגדרת ההעברה שנוצרה בפורמט JSON. לדוגמה: --params='{"param":"param_value"}'.
--destination_kms_keyמציין את מזהה משאב המפתח של מפתח Cloud KMS אם משתמשים במפתח הצפנה בניהול הלקוח (CMEK) להעברה הזו. למידע על האופן שבו מפתחות הצפנה בניהול הלקוח (CMEK) פועלים עם שירות העברת הנתונים ל-BigQuery, אפשר לעיין במאמר ציון מפתח הצפנה באמצעות שאילתות מתוזמנות.
bq update \ --target_dataset=dataset \ --display_name=name \ --params='parameters' --transfer_config \ RESOURCE_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
dataset. מערך נתוני היעד להגדרת ההעברה. הפרמטר הזה הוא אופציונלי בשאילתות DDL ו-DML. הוא נדרש לכל השאילתות האחרות. -
name. השם המוצג של הגדרת ההעברה. השם המוצג יכול להיות כל ערך שתוכלו לזהות בהמשך אם תצטרכו לשנות את השאילתה. -
parameters. מכיל את הפרמטרים של הגדרת ההעברה שנוצרה בפורמט JSON. לדוגמה:--params='{"param":"param_value"}'.- בשביל שאילתה מתוזמנת, צריך לספק את הפרמטר
query. - הפרמטר
destination_table_name_templateהוא השם של טבלת היעד. הפרמטר הזה הוא אופציונלי בשאילתות DDL ו-DML. הוא נדרש לכל שאר השאילתות. - בפרמטר
write_disposition, אפשר לבחור באפשרותWRITE_TRUNCATEכדי לחתוך (לשכתב) את טבלת היעד, או באפשרותWRITE_APPENDכדי לצרף את תוצאות השאילתה לטבלת היעד. הפרמטר הזה הוא אופציונלי בשאילתות DDL ו-DML. הוא נדרש לכל שאר השאילתות.
- בשביל שאילתה מתוזמנת, צריך לספק את הפרמטר
- אופציונלי: הערך
--destination_kms_keyמציין את מזהה משאב המפתח של מפתח Cloud KMS, לדוגמה,projects/project_name/locations/us/keyRings/key_ring_name/cryptoKeys/key_name. -
RESOURCE_NAME: שם המשאב של ההעברה (נקרא גם הגדרות ההעברה). אם לא ידוע לכם שם המשאב של ההעברה, תוכלו למצוא אותו באמצעות הפקודה:bq ls --transfer_config --transfer_location=location.
לדוגמה, הפקודה הבאה מעדכנת העברה מתוזמנת של שאילתה בשם My Scheduled Query באמצעות השאילתה SELECT 1
from mydataset.test. טבלת היעד mytable נחתכת בכל כתיבה, ומערך נתוני היעד הוא mydataset:
bq update \
--target_dataset=mydataset \
--display_name='My Scheduled Query' \
--params='{"query":"SELECT 1 from mydataset.test","destination_table_name_template":"mytable","write_disposition":"WRITE_TRUNCATE"}'
--transfer_config \
projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7
API
משתמשים בשיטה projects.transferConfigs.patch ומספקים את שם המשאב של ההעברה באמצעות הפרמטר transferConfig.name. אם אתם לא יודעים את שם המשאב של ההעברה, אתם יכולים להשתמש בפקודה bq ls --transfer_config --transfer_location=location כדי לראות רשימה של כל ההעברות, או להתקשר לשיטה projects.locations.transferConfigs.list ולספק את מזהה הפרויקט באמצעות הפרמטר parent.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
עדכון שאילתות מתוזמנות עם הגבלות בעלות
אם תנסו לעדכן שאילתה מתוזמנת שלא בבעלותכם, יכול להיות שהעדכון ייכשל ותוצג הודעת השגיאה הבאה:
Cannot modify restricted parameters without taking ownership of the transfer configuration.
הבעלים של השאילתה המתוזמנת הוא המשתמש שמשויך לשאילתה המתוזמנת או המשתמש שיש לו גישה לחשבון השירות שמשויך לשאילתה המתוזמנת. המשתמש המשויך מופיע בפרטי ההגדרה של השאילתה המתוזמנת. במאמר עדכון פרטי הכניסה של שאילתה מתוזמנת מוסבר איך לעדכן את השאילתה המתוזמנת כדי לקבל בעלות. כדי להעניק למשתמשים גישה לחשבון שירות, עליכם להיות בעלי תפקיד משתמש חשבון שירות.
הפרמטרים שהבעלים הגביל בשאילתות מתוזמנות הם:
- הטקסט של השאילתה
- מערך נתוני היעד
- תבנית השם של טבלת היעד
עדכון פרטי הכניסה של שאילתה מתוזמנת
אם אתם מתזמנים שאילתה קיימת, יכול להיות שתצטרכו לעדכן את פרטי הכניסה של המשתמש בשאילתה. פרטי הכניסה מתעדכנים אוטומטית בשאילתות מתוזמנות חדשות.
אלה כמה מצבים נוספים שבהם יכול להיות שיהיה צורך לעדכן את פרטי הכניסה:
- אתם רוצים להריץ שאילתות על נתונים ב-Google Drive בשאילתה מתוזמנת.
מופיעה השגיאה INVALID_USER כשמנסים לתזמן את השאילתה:
Error code 5 : Authentication failure: User Id not found. Error code: INVALID_USERIDמופיעה הודעת השגיאה הבאה לגבי פרמטרים מוגבלים כשמנסים לעדכן את השאילתה:
Cannot modify restricted parameters without taking ownership of the transfer configuration.
המסוף
כדי לרענן את פרטי הכניסה הקיימים בשאילתה מתוזמנת:
איך מוצאים וצופים בסטטוס של שאילתה מתוזמנת
לוחצים על הלחצן עוד ובוחרים באפשרות עדכון פרטי הכניסה.
השינוי ייכנס לתוקף תוך 10 עד 20 דקות. יכול להיות שתצטרכו לנקות את המטמון של הדפדפן.
BQ
שאילתות מתוזמנות הן סוג של העברה. כדי לעדכן את פרטי הכניסה של שאילתה מתוזמנת, אפשר להשתמש בכלי שורת הפקודה של BigQuery כדי לעדכן את הגדרות ההעברה.
מזינים את הפקודה bq update ומספקים את דגל ההעברה --transfer_config. נדרשים גם הדגלים הבאים:
--update_credentials
דגל אופציונלי:
-
--service_account_nameמשמש לאימות של השאילתה המתוזמנת באמצעות חשבון שירות במקום באמצעות חשבון המשתמש האישי.
לדוגמה, הפקודה הבאה מעדכנת את ההגדרה של העברת שאילתה מתוזמנת כדי לבצע אימות כחשבון שירות:
bq update \
--update_credentials \
--service_account_name=abcdef-test-sa@abcdef-test.iam.gserviceaccount.com \
--transfer_config \
projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הגדרת הפעלה ידנית בתאריכים היסטוריים
בנוסף לתזמון של שאילתה להפעלה בעתיד, אפשר גם להפעיל אותה באופן ידני באופן מיידי. הפעלת ריצה מיידית נדרשת אם השאילתה משתמשת בפרמטר run_date, והיו בעיות במהלך ריצה קודמת.
לדוגמה, כל יום בשעה 09:00 אתם שולחים שאילתה לטבלת מקור כדי למצוא שורות שתואמות לתאריך הנוכחי. עם זאת, גיליתם שהנתונים לא נוספו לטבלת המקור ב-3 הימים האחרונים. במצב כזה, אפשר להגדיר את השאילתה כך שתפעל על נתונים היסטוריים בטווח תאריכים שאתם מציינים. השאילתה מופעלת באמצעות שילובים של הפרמטרים run_date ו-run_time שמתאימים לתאריכים שהגדרתם בשאילתה המתוזמנת.
אחרי הגדרת שאילתה מתוזמנת, כך מריצים את השאילתה באמצעות טווח תאריכים היסטורי:
המסוף
אחרי שלוחצים על תזמון כדי לשמור את השאילתה המתוזמנת, אפשר ללחוץ על הלחצן שאילתות מתוזמנות כדי לראות את רשימת השאילתות המתוזמנות. לוחצים על שם התצוגה כדי לראות את פרטי התזמון של השאילתה. בפינה השמאלית העליונה של הדף, לוחצים על תזמון מילוי חוסרים כדי לציין טווח תאריכים היסטורי.
כל זמני הריצה שנבחרו נמצאים בטווח התאריכים שבחרתם, כולל התאריך הראשון ולא כולל התאריך האחרון.
דוגמה 1
השאילתה המתוזמנת מוגדרת להפעלה ב-every day 09:00 Pacific Time. חסרים לך נתונים מ-1 בינואר, מ-2 בינואר ומ-3 בינואר. בוחרים את טווח התאריכים ההיסטורי הבא:
Start Time = 1/1/19
End Time = 1/4/19
השאילתה מורצת באמצעות הפרמטרים run_date ו-run_time שמתאימים לזמנים הבאים:
- 1/1/19 09:00 שעון החוף המערבי
- 1/2/19 09:00 Pacific Time
- 1/3/19 09:00 שעון החוף המערבי
דוגמה 2
השאילתה המתוזמנת מוגדרת להפעלה ב-every day 23:00 Pacific Time. חסרים לך נתונים מ-1 בינואר, מ-2 בינואר ומ-3 בינואר. בוחרים את טווחי התאריכים ההיסטוריים הבאים (התאריכים המאוחרים יותר נבחרים כי שעון UTC הוא תאריך אחר בשעה 23:00 לפי שעון החוף הפסיפי):
Start Time = 1/2/19
End Time = 1/5/19
השאילתה מורצת באמצעות הפרמטרים run_date ו-run_time שמתאימים לזמנים הבאים:
- 2.1.19 בשעה 06:00 UTC, או 1.1.2019 בשעה 23:00 לפי שעון החוף המערבי
- 1/3/19 06:00 UTC או 1/2/2019 23:00 לפי שעון החוף המערבי
- 1/4/19 06:00 UTC או 1/3/2019 23:00 לפי שעון החוף המערבי
אחרי שמגדירים הפעלות ידניות, מרעננים את הדף כדי לראות אותן ברשימת ההפעלות.
BQ
כדי להריץ את השאילתה באופן ידני על טווח תאריכים היסטורי:
מזינים את הפקודה bq mk ומספקים את הדגל של הרצת ההעברה --transfer_run. נדרשים גם הדגלים הבאים:
--start_time--end_time
bq mk \ --transfer_run \ --start_time='start_time' \ --end_time='end_time' \ resource_name
מחליפים את מה שכתוב בשדות הבאים:
-
start_timeוגםend_timeחותמות זמן שמסתיימות באות Z או שמכילות היסט תקין של אזור זמן. דוגמאות:- 2017-08-19T12:11:35.00Z
- 2017-05-25T00:00:00+00:00
-
resource_name. שם המשאב של השאילתה המתוזמנת (או ההעברה). שם המשאב נקרא גם הגדרת ההעברה.
לדוגמה, הפקודה הבאה מתזמנת מילוי חוזר של משאב של שאילתה מתוזמנת (או של הגדרת העברה):
projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7.
bq mk \
--transfer_run \
--start_time 2017-05-25T00:00:00Z \
--end_time 2017-05-25T00:00:00Z \
projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7
מידע נוסף זמין במאמר bq mk --transfer_run.
API
משתמשים בשיטה projects.locations.transferConfigs.scheduleRun ומספקים נתיב של משאב TransferConfig.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
הגדרת התראות לגבי שאילתות מתוזמנות
אפשר להגדיר מדיניות התראות עבור שאילתות מתוזמנות על סמך מדדים של מספר השורות. מידע נוסף מפורט במאמר הגדרת התראות באמצעות שאילתות מתוזמנות.
מחיקת שאילתות מתוזמנות
המסוף
כדי למחוק שאילתה מתוזמנת בדף Scheduled queries במסוף Google Cloud :
- בתפריט הניווט, לוחצים על Scheduled queries (שאילתות מתוזמנות).
- ברשימת השאילתות המתוזמנות, לוחצים על השם של השאילתה המתוזמנת שרוצים למחוק.
בדף פרטים של שאילתה מתוזמנת, לוחצים על מחיקה.
אפשר גם למחוק שאילתה מתוזמנת בדף תזמון של מסוף Google Cloud :
- בתפריט הניווט, לוחצים על Scheduling (תזמון).
- ברשימת השאילתות המתוזמנות, לוחצים על התפריט פעולות של השאילתה המתוזמנת שרוצים למחוק.
בוחרים את האפשרות Delete.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Python API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
השבתה או הפעלה של שאילתות מתוזמנות
כדי להשהות את ההרצות המתוזמנות של שאילתה שנבחרה בלי למחוק את התזמון, אפשר להשבית את התזמון.
כדי להשבית לוח זמנים לשאילתה שנבחרה, פועלים לפי השלבים הבאים:
- בתפריט הניווט של מסוף Google Cloud , לוחצים על Scheduling.
- ברשימת השאילתות המתוזמנות, לוחצים על התפריט פעולות של השאילתה המתוזמנת שרוצים להשבית.
בוחרים באפשרות השבתה.
כדי להפעיל שאילתה מתוזמנת שהושבתה, לוחצים על התפריט פעולות של השאילתה המתוזמנת שרוצים להפעיל ובוחרים באפשרות הפעלה.
מכסות
שאילתות מתוזמנות תמיד מורצות כמשימות של שאילתות באצווה, והן כפופות לאותן מכסות ומגבלות של BigQuery כמו שאילתות ידניות.
למרות ששאילתות מתוזמנות משתמשות בתכונות של שירות העברת הנתונים ל-BigQuery, הן לא העברות ולא חלות עליהן מכסות של עבודות טעינה.
הזהות שמשמשת להפעלת השאילתה קובעת אילו מכסות יחולו. זה תלוי בהגדרות של השאילתה המתוזמנת:
פרטי הכניסה של היוצר (ברירת מחדל): אם לא מציינים חשבון שירות, השאילתה המתוזמנת מופעלת באמצעות פרטי הכניסה של המשתמש שיצר אותה. החיוב על עבודת השאילתה חל על הפרויקט של היוצר, והוא כפוף למכסות של המשתמש והפרויקט.
פרטי כניסה של חשבון שירות: אם מגדירים את השאילתה המתוזמנת לשימוש בחשבון שירות, היא מורצת באמצעות פרטי הכניסה של חשבון השירות. במקרה כזה, העבודה עדיין מחויבת לפרויקט שמכיל את השאילתה המתוזמנת, אבל הביצוע כפוף למכסות של חשבון השירות שצוין.
תמחור
התמחור של שאילתות מתוזמנות זהה לזה של שאילתות BigQuery ידניות.
אזורים נתמכים
אפשר לתזמן שאילתות במיקומים הבאים.
אזורים
בטבלה הבאה מפורטים האזורים באמריקה שבהם BigQuery זמין.| תיאור האזור | שם האזור | פרטים |
|---|---|---|
| קולומבוס, אוהיו | us-east5 |
|
| דאלאס | us-south1 |
|
| אייווה | us-central1 |
|
| לאס וגאס | us-west4 |
|
| לוס אנג'לס | us-west2 |
|
| מקסיקו | northamerica-south1 |
|
| מונטריאול | northamerica-northeast1 |
|
| צפון וירג'יניה | us-east4 |
|
| אורגון | us-west1 |
|
| סולט לייק סיטי | us-west3 |
|
| סאו פאולו | southamerica-east1 |
|
| סנטיאגו | southamerica-west1 |
|
| דרום קרוליינה | us-east1 |
|
| טורונטו | northamerica-northeast2 |
|
| תיאור האזור | שם האזור | פרטים |
|---|---|---|
| בנגקוק | asia-southeast3 |
|
| דלהי | asia-south2 |
|
| הונג קונג | asia-east2 |
|
| ג'קארטה | asia-southeast2 |
|
| מלבורן | australia-southeast2 |
|
| מומבאי | asia-south1 |
|
| אוסקה | asia-northeast2 |
|
| סיאול | asia-northeast3 |
|
| סינגפור | asia-southeast1 |
|
| סידני | australia-southeast1 |
|
| טייוואן | asia-east1 |
|
| טוקיו | asia-northeast1 |
| תיאור האזור | שם האזור | פרטים |
|---|---|---|
| בלגיה | europe-west1 |
|
| ברלין | europe-west10 |
|
| פינלנד | europe-north1 |
|
| פרנקפורט | europe-west3 |
|
| לונדון | europe-west2 |
|
| מדריד | europe-southwest1 |
|
| מילאנו | europe-west8 |
|
| הולנד | europe-west4 |
|
| פריז | europe-west9 |
|
| שטוקהולם | europe-north2 |
|
| טורינו | europe-west12 |
|
| ורשה | europe-central2 |
|
| ציריך | europe-west6 |
|
| תיאור האזור | שם האזור | פרטים |
|---|---|---|
| דמאם | me-central2 |
|
| דוחה | me-central1 |
|
| תל אביב | me-west1 |
| תיאור האזור | שם האזור | פרטים |
|---|---|---|
| יוהנסבורג | africa-south1 |
במספר אזורים
בטבלה הבאה מפורטים האזורים המרובים שבהם BigQuery זמין. כשבוחרים אזור מרובה, מאפשרים ל-BigQuery לבחור אזור יחיד בתוך האזור המרובה שבו הנתונים מאוחסנים ומעובדים.| תיאור של המיקום 'במספר אזורים' | השם של המיקום 'במספר אזורים&#�� |
|---|---|
| מרכזי נתונים במדינות החברות באיחוד האירופי1 | EU |
| מרכזי נתונים בארצות הברית2 | US |
1 נתונים שנמצאים במיקום 'במספר אזורים' של EU מאוחסנים רק באחד מהמיקומים הבאים: europe-west1 (בלגיה) או europe-west4 (הולנד).
המיקום המדויק שבו הנתונים מאוחסנים ומעובדים נקבע באופן אוטומטי על ידי BigQuery.
2 נתונים שנמצאים במיקום 'במספר אזורים' של US מאוחסנים רק באחד מהמיקומים הבאים: us-central1 (איווה), us-west1 (אורגון) או us-central2 (אוקלהומה). המיקום המדויק שבו הנתונים מאוחסנים ומעובדים נקבע באופן אוטומטי על ידי BigQuery.
המאמרים הבאים
- דוגמה לשאילתה מתוזמנת שמשתמשת בחשבון שירות וכוללת את הפרמטרים
@run_dateו-@run_timeמופיעה במאמר יצירת תמונות מצב של טבלאות באמצעות שאילתה מתוזמנת.