ניהול טבלאות מחולקות למחיצות
במאמר הזה מוסבר איך לנהל טבלאות מחולקות למחיצות ב-BigQuery.
אחזור מטא-נתונים של מחיצה
יש כמה דרכים לקבל מידע על טבלאות עם חלוקה למחיצות:
- משתמשים בתצוגה
INFORMATION_SCHEMA.PARTITIONS(תצוגה מקדימה). - משתמשים בטבלת המטא
__PARTITIONS_SUMMARY__(רק ב-SQL מדור קודם).
אחזור מטא-נתונים של מחיצות באמצעות תצוגות INFORMATION_SCHEMA
כשמריצים שאילתה בתצוגה INFORMATION_SCHEMA.PARTITIONS, תוצאות השאילתה מכילות שורה אחת לכל מחיצה. לדוגמה, השאילתה הבאה מפרטת את כל המחיצות של טבלה ספציפית במערך נתונים:
#standardSQL SELECT partition_id FROM `DATASET_ID.INFORMATION_SCHEMA.PARTITIONS` WHERE table_name = 'TABLE_NAME' AND partition_id IS NOT NULL --filter out non-partitioned tables
מידע נוסף זמין במאמר INFORMATION_SCHEMA.PARTITIONS.
אחזור מטא-נתונים של מחיצות באמצעות טבלאות מטא
ב-SQL מדור קודם, אפשר לקבל מטא-נתונים על מחיצות של טבלה על ידי שליחת שאילתה לטבלת המטא __PARTITIONS_SUMMARY__. טבלאות מטא הן טבלאות לקריאה בלבד שמכילות מטא-נתונים.
מריצים שאילתה על טבלת המטא __PARTITIONS_SUMMARY__ באופן הבא:
#legacySQL SELECT partition_id FROM [DATASET_ID.TABLE_NAME$__PARTITIONS_SUMMARY__]
טבלת המטא __PARTITIONS_SUMMARY__ כוללת את העמודות הבאות:
| ערך | תיאור |
|---|---|
project_id |
שם הפרויקט. |
dataset_id |
השם של מערך הנתונים. |
table_id |
השם של הטבלה שמחולקת למחיצות לפי זמן. |
partition_id |
השם (התאריך) של המחיצה. |
creation_time |
השעה שבה נוצרה המחיצה, באלפיות השנייה מאז 1 בינואר 1970 לפי שעון UTC. |
last_modified_time |
השעה שבה בוצע השינוי האחרון במחיצה, באלפיות השנייה מאז 1 בינואר 1970 לפי שעון UTC. |
כדי להריץ עבודת שאילתה שמשתמשת בטבלת המטא __PARTITIONS_SUMMARY__, אתם צריכים לקבל הרשאות bigquery.jobs.create והרשאות bigquery.tables.getData.
מידע נוסף על תפקידי IAM ב-BigQuery זמין במאמר בקרת גישה.
הגדרת תפוגה של המחיצה
כשיוצרים טבלה עם מחיצות לפי זמן ההטמעה או לפי עמודה של יחידת זמן, אפשר לציין תאריך תפוגה של מחיצות. ההגדרה הזו מציינת כמה זמן BigQuery שומר את הנתונים בכל מחיצה. ההגדרה חלה על כל המחיצות בטבלה, אבל החישוב מתבצע בנפרד לכל מחיצה על סמך זמן המחיצה.
זמן התפוגה של מחיצה מחושב מהגבול של המחיצה לפי שעון UTC. לדוגמה, במקרה של חלוקה למחיצות לפי יום, גבול המחיצה הוא בחצות (00:00:00 UTC). אם תוקף המחיצה בטבלה הוא 6 שעות, כל מחיצה תפוג בשעה 06:00:00 (UTC) ביום שלמחרת. כשמחיצה מסוימת מגיעה לתאריך התפוגה שלה, BigQuery מוחק את הנתונים במחיצה הזו.
אפשר גם לציין תאריך תפוגה של מחיצה כברירת מחדל ברמת מערך הנתונים. אם מגדירים תאריך תפוגה של מחיצה בטבלה, הערך הזה מבטל את תאריך התפוגה של ברירת המחדל של המחיצה. אם לא מציינים תאריך תפוגה למחיצה (בטבלה או במערך הנתונים), התוקף של המחיצות לא יפוג לעולם.
אם מגדירים תאריך תפוגה לטבלה, הערך הזה מקבל עדיפות על פני תאריך התפוגה של המחיצה. לדוגמה, אם תוקף הטבלה מוגדר ל-5 ימים ותוקף המחיצה מוגדר ל-7 ימים, הטבלה וכל המחיצות שבה יימחקו אחרי 5 ימים.
בכל שלב אחרי יצירת הטבלה, אפשר לעדכן את תאריך התפוגה של המחיצה בטבלה. ההגדרה החדשה חלה על כל המחיצות בטבלה, ללא קשר למועד שבו הן נוצרו. תוקף המחיצות הקיימות יפוג באופן מיידי אם הן נוצרו לפני יותר זמן מתקופת התפוגה החדשה. באופן דומה, אם מעתיקים או מוסיפים נתונים לטבלה שמחולקת למחיצות לפי עמודה של יחידת זמן, כל המחיצות שהן ישנות יותר מתאריך התפוגה של המחיצה שהוגדר לטבלה יפוגו באופן מיידי.
כשמחיצה מסוימת מגיעה לתאריך התפוגה שלה, BigQuery מוחק אותה. הנתונים של המחיצה נשמרים בהתאם למדיניות החזרה לנקודת זמן והגנה מפני כשלים, ויכול להיות שייחויבו עליהם, בהתאם למודל החיוב שלכם. עד אז, מספר המחיצות לצורך מכסות הטבלאות. כדי למחוק מחיצה באופן מיידי, אפשר למחוק אותה באופן ידני.
עדכון תאריך התפוגה של המחיצה
כדי לעדכן את תוקף המחיצות של טבלה מחולקת למחיצות:
המסוף
אי אפשר לעדכן את תאריך התפוגה של המחיצה ב Cloud de Confiance מסוף.
SQL
משתמשים בהצהרה ALTER TABLE SET OPTIONS.
בדוגמה הבאה, תאריך התפוגה מתעדכן ל-5 ימים. כדי להסיר את תאריך התפוגה של מחיצה בטבלה, מגדירים את partition_expiration_days ל-NULL.
במסוף Cloud de Confiance , עוברים לדף BigQuery.
מזינים את ההצהרה הבאה בעורך השאילתות:
ALTER TABLE mydataset.mytable SET OPTIONS ( -- Sets partition expiration to 5 days partition_expiration_days = 5);
לוחצים על הפעלה.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
BQ
מריצים את הפקודה bq update עם הדגל --time_partitioning_expiration. אם אתם מעדכנים טבלה עם חלוקה למחיצות בפרויקט שאינו פרויקט ברירת המחדל שלכם, צריך להוסיף את מזהה הפרויקט לשם מערך הנתונים בפורמט הבא: project_id:dataset.
bq update \ --time_partitioning_expiration integer_in_seconds \ --time_partitioning_type unit_time \ project_id:dataset.table
כאשר:
- integer הוא משך החיים שמוגדר כברירת מחדל (בשניות) למחיצות בטבלה. אין ערך מינימלי. זמן התפוגה מוערך לפי התאריך של המחיצה בתוספת הערך השלם. אם תציינו
0, תוקף המחיצה יוסר והמחיצה לא תפוג לעולם. צריך למחוק ידנית מחיצות ללא תאריך תפוגה. - unit_time הוא
DAY,HOUR,MONTHאוYEAR, בהתאם לרמת הפירוט של חלוקת הטבלה למחיצות. הערך הזה צריך להיות זהה לגרנולריות שהגדרתם כשיצרתם את הטבלה. - project_id הוא מזהה הפרויקט.
- dataset הוא שם מערך הנתונים שמכיל את הטבלה שאתם מעדכנים.
- table הוא השם של הטבלה שאתם מעדכנים.
דוגמאות:
מזינים את הפקודה הבאה כדי לעדכן את תאריך התפוגה של המחיצות ב-mydataset.mytable ל-5 ימים (432,000 שניות). mydataset נמצא בפרויקט ברירת המחדל.
bq update --time_partitioning_expiration 432000 mydataset.mytable
מזינים את הפקודה הבאה כדי לעדכן את תאריך התפוגה של המחיצות ב-mydataset.mytable ל-5 ימים (432,000 שניות). mydataset נמצא ב-myotherproject, ולא בפרויקט ברירת המחדל שלכם.
bq update \
--time_partitioning_expiration 432000 \
myotherproject:mydataset.mytable
API
קוראים לשיטה tables.patch ומשתמשים במאפיין timePartitioning.expirationMs כדי לעדכן את תאריך התפוגה של המחיצה במילישניות. מומלץ להשתמש ב-method tables.patch כי היא מחליפה את כל משאב הטבלה.tables.update
הגדרת הדרישות למסנן מחיצה
כשיוצרים טבלה מחולקת למחיצות (Partitions), אפשר לדרוש שכל השאילתות בטבלה יכללו מסנן פרדיקט (סעיף WHERE) שמסנן לפי עמודת החלוקה למחיצות (partitioning). ההגדרה הזו יכולה לשפר את הביצועים ולהפחית את העלויות, כי BigQuery יכול להשתמש במסנן כדי להסיר מחיצות שלא תואמות לתנאי. הדרישה הזו חלה גם על שאילתות בתצוגות וב-materialized views שמפנות לטבלה עם חלוקה למחיצות.
מידע על הוספת האפשרות Require partition filter (דרישת מסנן מחיצה) כשיוצרים טבלת מחיצות זמין במאמר בנושא יצירת טבלאות מחיצות.
אם בטבלה עם חלוקה למחיצות מוגדרת האפשרות Require partition filter (נדרש מסנן מחיצות), כל שאילתה בטבלה הזו חייבת לכלול לפחות פרדיקט אחד שמפנה רק לעמודת החלוקה למחיצות. שאילתות ללא פרדיקט כזה מחזירות את השגיאה הבאה:
Cannot query over table 'project_id.dataset.table' without a
filter that can be used for partition elimination.
מידע נוסף זמין במאמר בנושא שאילתות על טבלאות מחולקות.
עדכון הדרישה למסנן מחיצה
אם לא מפעילים את האפשרות דרישת מסנן מחיצה כשיוצרים את הטבלה עם המחיצות, אפשר לעדכן את הטבלה כדי להוסיף את האפשרות.
המסוף
אי אפשר להשתמש במסוף Cloud de Confiance כדי לדרוש מסנני מחיצות אחרי שיוצרים טבלה עם מחיצות.
SQL
כדי לעדכן את הדרישה של מסנן המחיצה, משתמשים בהצהרת ALTER TABLE SET OPTIONS. בדוגמה הבאה, הדרישה מעודכנת ל-true:
במסוף Cloud de Confiance , עוברים לדף BigQuery.
מזינים את ההצהרה הבאה בעורך השאילתות:
ALTER TABLE mydataset.mypartitionedtable SET OPTIONS ( require_partition_filter = true);
לוחצים על הפעלה.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
BQ
כדי לעדכן טבלה מחולקת למחיצות כך שיידרשו מסנני מחיצות באמצעות כלי שורת הפקודה של BigQuery, מזינים את הפקודה bq update ומספקים את הדגל --require_partition_filter.
כדי לעדכן טבלה עם חלוקה למחיצות בפרויקט שאינו פרויקט ברירת המחדל, מוסיפים את מזהה הפרויקט למערך הנתונים בפורמט הבא: project_id:dataset.
לדוגמה:
כדי לעדכן את mypartitionedtable ב-mydataset בפרויקט ברירת המחדל, מזינים:
bq update --require_partition_filter mydataset.mytable
כדי לעדכן את mypartitionedtable ב-mydataset ב-myotherproject,
מזינים:
bq update --require_partition_filter myotherproject:mydataset.mytable
API
מבצעים קריאה ל-method tables.patch ומגדירים את המאפיין requirePartitionFilter לערך true כדי לדרוש מסנני מחיצות. מומלץ להשתמש ב-method tables.patch כי היא מחליפה את כל משאב הטבלה.tables.update
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaהוראות ההגדרה שבמדריך למתחילים של BigQuery באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של BigQuery Java API.
כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
העתקה של טבלה מחולקת למחיצות
התהליך להעתקת טבלה מחולקת למחיצות זהה לתהליך של העתקת טבלה רגילה. מידע נוסף מופיע במאמר בנושא העתקת טבלה.
כשמעתיקים טבלה עם חלוקה למחיצות, חשוב לשים לב לנקודות הבאות:
- העתקה של טבלה מחולקת למחיצות לטבלת יעד חדשה
- כל פרטי החלוקה למחיצות מועתקים עם הטבלה. הטבלה החדשה והטבלה הישנה יכללו מחיצות זהות.
- העתקה של טבלה לא מחולקת למחיצות לתוך טבלה מחולקת למחיצות קיימת
- הפעולה הזו נתמכת רק בחלוקה למחיצות בזמן ההטמעה. מערכת BigQuery מעתיקה את נתוני המקור למחיצה שמייצגת את התאריך הנוכחי. הפעולה הזו לא נתמכת בטבלאות עם חלוקה למחיצות לפי עמודה של יחידת זמן או לפי טווח של מספרים שלמים.
- העתקה של טבלה מחולקת למחיצות לטבלה מחולקת למחיצות אחרת
- המפרטים של החלוקה למחיצות בטבלאות המקור והיעד צריכים להיות זהים.
- העתקה של טבלה מחולקת למחיצות לטבלה לא מחולקת
- טבלת היעד לא מחולקת למחיצות.
- העתקה של כמה טבלאות מחולקות למחיצות
אם מעתיקים כמה טבלאות מקור לטבלה מחולקת למחיצות באותו ג'וב, טבלאות המקור לא יכולות להכיל שילוב של טבלאות מחולקות למחיצות וטבלאות שלא חולקו למחיצות.
אם כל טבלאות המקור הן טבלאות עם חלוקה למחיצות, מפרטי המחיצות של כל טבלאות המקור צריכים להיות זהים למפרט המחיצות של טבלת היעד.
- העתקה של טבלה מחולקת למחיצות עם מפרט אשכולות
אם מעתיקים לטבלה חדשה, כל פרטי האשכול מועתקים עם הטבלה. הטבלה החדשה והטבלה הישנה יכללו אשכולות זהים.
אם מעתיקים לטבלה קיימת, מפרטי האשכול של טבלת המקור וטבלת היעד צריכים להיות זהים.
כשמעתיקים לטבלה קיימת, אפשר לציין אם להוסיף את הנתונים לטבלה או להחליף את הנתונים הקיימים בטבלה.
העתקה של מחיצות נפרדות
אפשר להעתיק את הנתונים ממחיצה אחת או יותר לטבלה אחרת.
המסוף
אי אפשר להעתיק מחיצות באמצעות המסוף של Cloud de Confiance .
BQ
כדי להעתיק מחיצה, משתמשים בפקודה bq cp (העתקה) של כלי שורת הפקודה bq עם מעצב מחיצה ($date), כמו $20160201.
אפשר להשתמש בדגלים אופציונליים כדי לשלוט בהגדרת הכתיבה של מחיצת היעד:
-
-aאו--append_tableמוסיפים את הנתונים מהמחיצה של המקור לטבלה או למחיצה קיימת במערך הנתונים של היעד. -
-fאו--forceמחליפים טבלה או מחיצה קיימות במערך הנתונים של היעד, ולא מוצגת בקשה לאישור. - הפונקציה
-nאו--no_clobberמחזירה את הודעת השגיאה הבאה אם הטבלה או המחיצה קיימות במערך הנתונים של היעד:Table '<var>project_id:dataset.table</var> or <var>table$date</var>' already exists, skipping.אם לא מציינים את-n, התנהגות ברירת המחדל היא להציג בקשה לבחור אם להחליף את טבלת היעד או המחיצה. -
--destination_kms_keyהוא מפתח Cloud KMS בניהול הלקוח שמשמש להצפנת טבלת היעד או המחיצה.
הפקודה cp לא תומכת בדגלים --time_partitioning_field או --time_partitioning_type. אי אפשר להשתמש בעבודת העתקה כדי להמיר טבלה מחולקת למחיצות (Partitions) לפי זמני כתיבת הנתונים לטבלה מחולקת למחיצות.
--destination_kms_key לא מוסבר כאן. מידע נוסף מופיע במאמר הגנה על נתונים באמצעות מפתחות Cloud KMS.
אם מערך הנתונים של המקור או היעד נמצא בפרויקט שאינו פרויקט ברירת המחדל, צריך להוסיף את מזהה הפרויקט לשמות של מערכי הנתונים בפורמט הבא:
project_id:dataset.
(אופציונלי) מציינים את הדגל --location ומגדירים את הערך למיקום.
bq --location=location cp \ -a -f -n \ project_id:dataset.source_table$source_partition \ project_id:dataset.destination_table$destination_partition
כאשר:
- location הוא השם של המיקום. הדגל
--locationהוא אופציונלי. לדוגמה, אם אתם משתמשים ב-BigQuery באזור טוקיו, אתם יכולים להגדיר את הערך של הדגל כ-asia-northeast1. אפשר להגדיר ערך ברירת מחדל למיקום באמצעות הקובץ .bigqueryrc. - project_id הוא מזהה הפרויקט.
- dataset הוא השם של מערך הנתונים של המקור או היעד.
- source_table היא הטבלה שמעתיקים.
- source_partition הוא מעצב המחיצה של מחיצת המקור.
- destination_table הוא שם הטבלה במערך נתוני היעד.
- destination_partition הוא מעצב המחיצה של מחיצת היעד.
דוגמאות:
העתקת מחיצה לטבלה חדשה
מזינים את הפקודה הבאה כדי להעתיק את המחיצה מ-30 בינואר 2018 מ-mydataset.mytable לטבלה חדשה – mydataset.mytable2. mydataset נמצא בפרויקט ברירת המחדל.
bq cp -a 'mydataset.mytable$20180130' mydataset.mytable2
העתקת מחיצה לטבלה לא מחולקת
מזינים את הפקודה הבאה כדי להעתיק את המחיצה מ-30 בינואר 2018 מ-mydataset.mytable לטבלה לא מחולקת – mydataset2.mytable2. מקש הקיצור -a משמש לצירוף הנתונים של המחיצה לטבלת היעד שלא חולקה למחיצות. שני מערכי הנתונים נמצאים בפרויקט ברירת המחדל.
bq cp -a 'mydataset.mytable$20180130' mydataset2.mytable2
מזינים את הפקודה הבאה כדי להעתיק את המחיצה מ-30 בינואר 2018 מ-mydataset.mytable לטבלה לא מחולקת – mydataset2.mytable2. מקש הקיצור -f משמש להחלפת טבלת היעד שלא חולקה למחיצות, בלי להציג הנחיה.
bq --location=US cp -f 'mydataset.mytable$20180130' mydataset2.mytable2
העתקת מחיצה לטבלה אחרת עם מחיצות
מזינים את הפקודה הבאה כדי להעתיק את המחיצה מ-30 בינואר 2018 מ-mydataset.mytable לטבלה אחרת עם מחיצות – mydataset2.mytable2. מקש הקיצור -a משמש לצירוף הנתונים של המחיצה לטבלת היעד. מכיוון שלא צוין מעצב מחיצות בטבלת היעד, מפתח המחיצה של המקור נשמר והנתונים מועתקים למחיצה של 30 בינואר 2018 בטבלת היעד. אפשר גם לציין מעצב מחיצות בטבלת היעד כדי להעתיק נתונים למחיצה ספציפית. mydataset נמצא בפרויקט ברירת המחדל שלכם. mydataset2
נמצא ב-myotherproject, ולא בפרויקט ברירת המחדל שלכם.
bq --location=US cp \
-a \
'mydataset.mytable$20180130' \
myotherproject:mydataset2.mytable2
מזינים את הפקודה הבאה כדי להעתיק את המחיצה מ-30 בינואר 2018 מ-mydataset.mytable למחיצה מ-30 בינואר 2018 של טבלה מופרדת אחרת – mydataset2.mytable2. מקש הקיצור -f משמש כדי להחליף את המחיצה של 30 בינואר 2018 בטבלת היעד בלי להציג הנחיה. אם לא משתמשים במעצב מחיצות, כל הנתונים בטבלת היעד נמחקים. mydataset נמצא בפרויקט ברירת המחדל שלכם.
mydataset2 נמצא ב-myotherproject, ולא בפרויקט ברירת המחדל שלכם.
bq cp \
-f \
'mydataset.mytable$20180130' \
'myotherproject:mydataset2.mytable2$20180130'
מזינים את הפקודה הבאה כדי להעתיק את המחיצה מ-30 בינואר 2018 מ-mydataset.mytable לטבלה אחרת עם מחיצות – mydataset2.mytable2. mydataset נמצא בפרויקט ברירת המחדל שלכם. mydataset2
נמצא ב-myotherproject, ולא בפרויקט ברירת המחדל שלכם. אם יש נתונים בטבלת היעד, התנהגות ברירת המחדל היא להציג לכם הנחיה להחלפת הנתונים.
bq cp \
'mydataset.mytable$20180130' \
myotherproject:mydataset2.mytable2
כדי להעתיק כמה מחיצות, מציינים אותן כרשימה שמופרדת באמצעות פסיקים:
bq cp \ 'mydataset.mytable$20180130,mydataset.mytable$20180131' \ myotherproject:mydataset.mytable2
API
מבצעים קריאה לשיטה jobs.insert ומגדירים משימת copy. (אופציונלי) מציינים את האזור במאפיין location בקטע jobReference של משאב המשימה.
מציינים את המאפיינים הבאים בהגדרות האישיות של המשימה:
- מזינים את מערך הנתונים, הטבלה והמחיצה של המקור במאפיין
sourceTables. - מזינים את מערך הנתונים ואת הטבלה של היעד במאפיין
destinationTable. - משתמשים במאפיין
writeDispositionכדי לציין אם להוסיף נתונים לטבלת היעד או למחיצה, או להחליף את הנתונים הקיימים.
כדי להעתיק כמה מחיצות, מזינים את מחיצות המקור (כולל השמות של מערך הנתונים והטבלה) במאפיין sourceTables.
מחיקת מחיצה
אפשר למחוק מחיצה ספציפית מטבלה עם מחיצות. עם זאת, אי אפשר למחוק את המחיצות המיוחדות __NULL__ או __UNPARTITIONED__.
אפשר למחוק רק מחיצה אחת בכל פעם.
אפשר למחוק מחיצה על ידי ציון המאפיין שלה, אלא אם היא אחת משתי המחיצות המיוחדות.
כדי למחוק מחיצה בטבלה עם מחיצות:
המסוף
אי אפשר למחוק מחיצות באמצעות מסוף Cloud de Confiance .
SQL
אם משפט DELETE שמגדיר את התנאים חל על כל השורות במחיצה, BigQuery מסיר את כל המחיצה. ההסרה הזו מתבצעת בלי לסרוק בייטים או לצרוך משבצות. בדוגמה הבאה של משפט DELETE מופיע כל החלק של מסנן בעמודה הווירטואלית _PARTITIONDATE:
במסוף Cloud de Confiance , עוברים לדף BigQuery.
מזינים את ההצהרה הבאה בעורך השאילתות:
DELETE mydataset.mytable WHERE _PARTITIONDATE IN ('2076-10-07', '2076-03-06');
לוחצים על הפעלה.
מידע נוסף על הרצת שאילתות זמין במאמר הרצת שאילתה אינטראקטיבית.
BQ
משתמשים בפקודה bq rm עם הדגל --table (או קיצור הדרך -t) ומציינים את מעצב המחיצה כדי למחוק מחיצה ספציפית.
bq rm --table project_id:dataset.table$partition
כאשר:
- project_id הוא מזהה הפרויקט. אם לא מציינים פרויקט, המערכת משתמשת בפרויקט ברירת המחדל.
- dataset הוא שם מערך הנתונים שמכיל את הטבלה.
- table הוא שם הטבלה.
- partition הוא קישוט המחיצה של המחיצה שרוצים למחוק.
הפורמט של קישוטי המחיצות משתנה בהתאם לסוג המחיצה:
- חלוקה לפי שעות:
yyyymmddhh. דוגמה:$2016030100. - חלוקה יומית:
yyyymmdd. דוגמה:$20160301. - חלוקה חודשית:
yyyymm. דוגמה:$201603. - מחיצה שנתית:
yyyy. דוגמה:$2016. - חלוקה לטווחים של מספרים שלמים: תחילת טווח החלוקה. דוגמה:
$20
כלי שורת הפקודה של BigQuery יבקש מכם לאשר את הפעולה. כדי לדלג על האישור, משתמשים בדגל --force (או במקש הקיצור -f).
דוגמאות:
מחיקת המחיצה של 1 במרץ 2016 בטבלה עם מחיצות יומיות בשם mydataset.mytable בפרויקט שמוגדר כברירת מחדל:
bq rm --table 'mydataset.mytable$20160301'
כדי למחוק את המחיצה של מרץ 2016 בטבלה שמחולקת למחיצות חודשיות:
bq rm --table 'mydataset.mytable$201603'
מחיקת טווח המספרים השלמים שמתחיל ב-20 בטבלה מחולקת לטווחים של מספרים שלמים בשם mydataset.mytable:
bq rm --table 'mydataset.mytable$20'
API
מבצעים קריאה לשיטה tables.delete ומציינים את הטבלה ואת קישוט המחיצה באמצעות הפרמטר tableId.
אבטחה של טבלאות מחולקות למחיצות
בקרת הגישה לטבלאות עם חלוקה למחיצות זהה לבקרת הגישה לטבלאות רגילות. מידע נוסף זמין במאמר מבוא לבקרת גישה לטבלאות.