מבוא ל-INFORMATION_SCHEMA
התצוגות של BigQuery INFORMATION_SCHEMA הן תצוגות לקריאה בלבד, שהוגדרו על ידי המערכת ומספקות מידע על מטא-נתונים לגבי האובייקטים של BigQuery. בטבלה הבאה מפורטים כל התצוגות של INFORMATION_SCHEMA שאפשר לשלוח להן שאילתות כדי לאחזר מידע על מטא-נתונים:
† בתצוגות *BY_PROJECT, הסיומת BY_PROJECT היא אופציונלית. לדוגמה, שאילתות לגבי INFORMATION_SCHEMA.JOBS_BY_PROJECT ו-INFORMATION_SCHEMA.JOBS מחזירות את אותן תוצאות.
תמחור
בפרויקטים שבהם משתמשים בתמחור על פי דרישה, שאילתות שמופעלות על תצוגות INFORMATION_SCHEMA מחויבות במינימום של 10 MB של עיבוד נתונים, גם אם מספר הבייטים שעובדו על ידי השאילתה קטן מ-10 MB. הסכום המינימלי לחיוב על שאילתות לפי דרישה הוא 10 MB. מידע נוסף זמין במאמר בנושא תמחור על פי דרישה.
בפרויקטים שבהם משתמשים בתמחור לפי קיבולת, שאילתות שמופעלות על תצוגות וטבלאות צורכות את משבצות BigQuery שרכשתם.INFORMATION_SCHEMA מידע נוסף זמין במאמר בנושא תמחור לפי נפח.
מכיוון ששאילתות INFORMATION_SCHEMA לא נשמרות במטמון, אתם מחויבים בכל פעם שאתם מריצים שאילתת INFORMATION_SCHEMA, גם אם טקסט השאילתה זהה בכל פעם שאתם מריצים אותה.
לא נחייב אתכם על אחסון של INFORMATION_SCHEMA צפיות.
תחביר
צריך לציין מערך נתונים או אזור כדי להגדיר תצוגה מסוג INFORMATION_SCHEMA.
מחרוזת להגדרת מערך נתונים
אם מציינים מסנן של מערך נתונים, התוצאות מוגבלות למערך הנתונים שצוין. לדוגמה:
-- Returns metadata for tables in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.TABLES;
התצוגות הבאות של INFORMATION_SCHEMA תומכות במאפייני מערך נתונים:
COLUMNSCOLUMN_FIELD_PATHSMATERIALIZED_VIEWSPARAMETERSPARTITIONSROUTINESROUTINE_OPTIONSTABLESTABLE_OPTIONSVIEWS
מגדיר אזור
מגדירים את האזור באמצעות התחביר region-REGION.
אפשר להשתמש בכל שם של מיקום מערך נתונים בשביל REGION. לדוגמה, מזהי האזור הבאים הם תקינים:
region-usregion-asia-east2region-europe-north1
אם מצוין אזור, התוצאות מוגבלות למיקום שצוין.
המסווגים של האזורים לא היררכיים, כלומר האזור הגיאוגרפי הנרחב שכולל מספר אזורים באיחוד האירופי לא כולל את האזורים europe-*, והאזור הגיאוגרפי הנרחב שכולל מספר אזורים בארה"ב לא כולל את האזורים us-*. לדוגמה, השאילתה הבאה מחזירה מטא-נתונים של כל מערכי הנתונים באזור US מרובה האזורים של הפרויקט שבו השאילתה מופעלת, אבל היא לא כוללת מערכי נתונים באזור us-west1:
-- Returns metadata for all datasets in the US multi-region. SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA;
התצוגות הבאות של INFORMATION_SCHEMA לא תומכות במגדירי אזור:
INFORMATION_SCHEMA.PARTITIONSINFORMATION_SCHEMA.SEARCH_INDEXESINFORMATION_SCHEMA.SEARCH_INDEX_COLUMNSINFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
אם לא מציינים מסנן אזור או מסנן מערך נתונים, תוצג שגיאה.
שאילתות שמופעלות על תצוגה מפורטת INFORMATION_SCHEMA שמוגדר לה אזור, מופעלות באזור שאתם מציינים. כלומר, אי אפשר לכתוב שאילתה אחת שתאחד נתונים מתצוגות מפורטות באזורים שונים. כדי לשלב INFORMATION_SCHEMA תצוגות מכמה אזורים, קוראים ומשלבים את תוצאות השאילתה באופן מקומי, או מעתיקים את הטבלאות שמתקבלות לאזור משותף.
מאפיין הפרויקט
אם מציינים פרויקט, התוצאות מוגבלות לפרויקט שצוין. לדוגמה:
-- Returns metadata for the specified project and region.
SELECT * FROM myProject.`region-us`.INFORMATION_SCHEMA.TABLES;
-- Returns metadata for the specified project and dataset.
SELECT * FROM myProject.myDataset.INFORMATION_SCHEMA.TABLES;
כל התצוגות של INFORMATION_SCHEMA תומכות במאפייני פרויקט. אם לא מציינים מזהה פרויקט, התצוגה תהיה כברירת מחדל הפרויקט שבו השאילתה מופעלת.
ציון מסנן פרויקט לתצוגות ברמת הארגון (לדוגמה, STREAMING_TIMELINE_BY_ORGANIZATION) לא משפיע על התוצאות.
מגבלות
- שאילתות BigQuery
INFORMATION_SCHEMAצריכות להיות בתחביר GoogleSQL. אין תמיכה ב-SQL מדור קודם ב-INFORMATION_SCHEMA. - תוצאות השאילתה
INFORMATION_SCHEMAלא נשמרות במטמון. - אי אפשר להשתמש בתצוגות
INFORMATION_SCHEMAבהצהרות DDL. - תצוגות
INFORMATION_SCHEMAלא מכילות מידע על מערכי נתונים מוסתרים. INFORMATION_SCHEMAשאילתות עם מסנני אזורים עשויות לכלול מטא-נתונים ממקורות באותו אזור ממערכי נתונים שנמחקו ונמצאים בחלון הזמן שלכם לשימוש בתכונה Time Travel.- כשמציגים רשימה של משאבים מתצוגה מסוג
INFORMATION_SCHEMA, ההרשאות נבדקות רק ברמת ההורה ולא ברמה של שורה בודדת. לכן, המערכת מתעלמת מכל מדיניות דחייה (בתצוגה מקדימה) שמטרגטת שורה ספציפית באמצעות תגים באופן מותנה.