התצוגה SESSIONS_BY_PROJECT
התצוגה INFORMATION_SCHEMA.SESSIONS_BY_PROJECT מכילה מטא-נתונים בזמן אמת על כל הסשנים של BigQuery בפרויקט הנוכחי.
ההרשאות הנדרשות
כדי לשלוח שאילתה לתצוגה INFORMATION_SCHEMA.SESSIONS_BY_PROJECT, צריך את הרשאת bigquery.jobs.listAll לניהול זהויות והרשאות גישה (IAM) בפרויקט.
כל אחד מהתפקידים הבאים שמוגדרים מראש ב-IAM כולל את ההרשאה הנדרשת:
- Project Owner
- אדמין של BigQuery
למידע נוסף על הרשאות ב-BigQuery, קראו את המאמר בקרת גישה באמצעות IAM.
סכימה
כששולחים שאילתה לתצוגות INFORMATION_SCHEMA.SESSIONS_BY_*, תוצאות השאילתה מכילות שורה אחת לכל סשן ב-BigQuery.
הסכימה של התצוגה INFORMATION_SCHEMA.SESSIONS_BY_* היא:
| שם העמודה | סוג נתונים | ערך |
|---|---|---|
creation_time |
TIMESTAMP |
(עמודת חלוקה למחיצות) מועד היצירה של הסשן הזה. החלוקה למחיצות מבוססת על זמן ה-UTC של חותמת הזמן הזו. |
expiration_time |
TIMESTAMP |
(עמודת חלוקה למחיצות) מועד התפוגה של הסשן הזה. החלוקה למחיצות מבוססת על זמן ה-UTC של חותמת הזמן הזו. |
folder_numbers |
ARRAY<INT64> |
המזהים של התיקיות בהיררכיה שמכילה את הפרויקט, מהרמה הנמוכה ביותר לרמה הגבוהה ביותר בהיררכיה. |
is_active |
BOOL |
האם הסשן עדיין פעיל? TRUE אם כן, אחרת FALSE.
|
last_modified_time |
TIMESTAMP |
(עמודת חלוקה למחיצות) הזמן שבו הסשן השתנה לאחרונה. החלוקה למחיצות מבוססת על זמן ה-UTC של חותמת הזמן הזו. |
principal_subject |
STRING |
המזהה של חשבון המשתמש שהפעיל את הסשן. user:USER_EMAIL למשתמשים בחשבון Google, serviceAccount:SA_EMAIL לחשבונות שירות או מזהה ישות מורשית שמתחיל ב-principal:// עבור איחוד זהויות של כוח עבודה וישויות מורשות של איחוד זהויות של עומסי עבודה (WIF).
|
project_id |
STRING |
(עמודת אשכול) מזהה הפרויקט. |
project_number |
INTEGER |
מספר הפרויקט. |
session_id |
STRING |
מזהה הסשן. לדוגמה, bquxsession_1234. |
user_email |
STRING |
(עמודת אשכול) כתובת האימייל או חשבון השירות של המשתמש שהפעיל את הסשן. |
כדי לשמור על יציבות, מומלץ לציין במפורש את העמודות בשאילתות של סכימת המידע, במקום להשתמש בתו כללי לחיפוש (SELECT *). ציון מפורש של העמודות מונע את קריסת השאילתות אם הסכימה הבסיסית משתנה.
שמירת נתונים
התצוגה הזו מכילה סשנים שפועלים כרגע והיסטוריה של סשנים שהושלמו ב-180 הימים האחרונים.
היקף ותחביר
שאילתות בתצוגה הזו חייבות לכלול מזהה אזור. אם לא מציינים מזהה אזורי, המטא-נתונים מאוחזרים מכל האזורים. בטבלה הבאה מוסבר היקף האזור של התצוגה הזו:
| הצגת השם | היקף המשאבים | היקף האזור |
|---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT |
רמת הפרויקט | REGION |
-
PROJECT_ID: אופציונלי, מזהה הפרויקט ב- Google Cloud . אם לא מציינים פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל. -
REGION: כל שם של אזור של מערך נתונים. לדוגמה,`region-us`.
דוגמה
כדי להריץ את השאילתה בפרויקט אחר, ולא בפרויקט ברירת המחדל, מוסיפים את מזהה הפרויקט בפורמט הבא:
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT
`myproject`.`region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT.
בדוגמה הבאה מוצגת רשימה של כל המשתמשים או חשבונות השירות שיצרו סשנים בפרויקט נתון במהלך היום האחרון:
SELECT DISTINCT(user_email) AS user FROM `region-us`.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT WHERE is_active = true AND creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY);
התוצאה אמורה להיראות כך:
+--------------+ | user | +--------------+ | abc@xyz.com | +--------------+ | def@xyz.com | +--------------+