התצוגה SCHEMATA
בתצוגה INFORMATION_SCHEMA.SCHEMATA מוצג מידע על מערכי הנתונים בפרויקט או באזור. התצוגה מחזירה שורה אחת לכל מערך נתונים.
לפני שמתחילים
כדי לשלוח שאילתה לתצוגה SCHEMATA של מטא-נתונים של מערך נתונים, צריך הרשאה לניהול זהויות והרשאות גישה (IAM) ברמת הפרויקט bigquery.datasets.get.
כל אחד מתפקידי ה-IAM המוגדרים מראש הבאים כולל את ההרשאות שדרושות לכם כדי לקבל את התצוגה SCHEMATA:
roles/bigquery.adminroles/bigquery.dataEditorroles/bigquery.dataOwnerroles/bigquery.dataViewer
מידע נוסף על הרשאות ב-BigQuery זמין במאמר בקרת גישה באמצעות IAM.
סכימה
כשמבצעים שאילתה בתצוגהINFORMATION_SCHEMA.SCHEMATA, תוצאות השאילתה מכילות שורה אחת לכל מערך נתונים בפרויקט שצוין.
לתצוגה INFORMATION_SCHEMA.SCHEMATA יש את הסכימה הבאה:
| שם העמודה | סוג נתונים | ערך |
|---|---|---|
catalog_name |
STRING |
שם הפרויקט שמכיל את מערך הנתונים |
schema_name |
STRING |
השם של מערך הנתונים, שנקרא גם datasetId |
schema_owner |
STRING |
הערך הוא תמיד NULL |
creation_time |
TIMESTAMP |
זמן היצירה של מערך הנתונים |
last_modified_time |
TIMESTAMP |
הזמן שבו בוצע השינוי האחרון במערך הנתונים |
location |
STRING |
המיקום הגיאוגרפי של מערך הנתונים |
ddl |
STRING |
הצהרת ה-DDL CREATE SCHEMA
שאפשר להשתמש בה כדי ליצור את מערך הנתונים |
default_collation_name |
STRING |
השם של הגדרת ברירת המחדל של איסוף נתונים, אם היא קיימת. אחרת, NULL.
|
sync_status |
JSON |
הסטטוס של הסנכרון בין הרפליקות הראשיות והמשניות של מערכי נתונים של רפליקציה בין אזורים ושל תוכנית התאוששות מאסון (DR). הפונקציה מחזירה NULL אם העותק הוא עותק ראשי או אם מערך הנתונים לא משתמש בשכפול. |
כדי לשמור על יציבות, מומלץ לציין במפורש את העמודות בשאילתות של סכימת המידע, במקום להשתמש בתו כל כללי (SELECT *). ציון מפורש של העמודות מונע את השבירה של השאילתות אם הסכימה הבסיסית משתנה.
היקף ותחביר
שאילתות שמופעלות על התצוגה הזו חייבות לכלול מגדיר אזור. אם לא מציינים מסווג אזורי, המטא-נתונים מאוחזרים מהאזור בארה"ב. בטבלה הבאה מוסבר היקף האזור בתצוגה הזו:
| שם התצוגה המפורטת | היקף המשאבים | היקף האזור |
|---|---|---|
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA |
ברמת הפרויקט | אזור בארה"ב |
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA |
ברמת הפרויקט | REGION |
-
אופציונלי:
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . אם לא מציינים פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל. -
REGION: כל שם של אזור במערך נתונים. לדוגמה,`region-us`.
דוגמה
-- Returns metadata for datasets in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA;
דוגמה
כדי להריץ את השאילתה על פרויקט שאינו פרויקט ברירת המחדל, מוסיפים את מזהה הפרויקט למערך הנתונים בפורמט הבא:
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA
`myproject`.INFORMATION_SCHEMA.SCHEMATA.
SELECT * EXCEPT (schema_owner) FROM INFORMATION_SCHEMA.SCHEMATA;
INFORMATION_SCHEMA
התוצאה תהיה דומה לזו שמופיעה בהמשך. כדי שהתוצאה תהיה קריאה, חלק מהעמודות לא נכללות בה.
+----------------+---------------+---------------------+---------------------+------------+------------------------------------------+ | catalog_name | schema_name | creation_time | last_modified_time | location | ddl | +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+ | myproject | mydataset1 | 2018-11-07 19:50:24 | 2018-11-07 19:50:24 | US | CREATE SCHEMA `myproject.mydataset1` | | | | | | | OPTIONS( | | | | | | | location="us" | | | | | | | ); | +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+ | myproject | mydataset2 | 2018-07-16 04:24:22 | 2018-07-16 04:24:22 | US | CREATE SCHEMA `myproject.mydataset2` | | | | | | | OPTIONS( | | | | | | | default_partition_expiration_days=3.0, | | | | | | | location="us" | | | | | | | ); | +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+ | myproject | mydataset3 | 2018-02-07 21:08:45 | 2018-05-01 23:32:53 | US | CREATE SCHEMA `myproject.mydataset3` | | | | | | | OPTIONS( | | | | | | | description="My dataset", | | | | | | | location="us" | | | | | | | ); | +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+