סכימה ודוגמאות לשאילתות לייצוא מלאי של Drive ב-BigQuery

התכונה הזו נתמכת במהדורות האלה: Frontline Plus,‏ Enterprise Standard ו-Enterprise Plus,‏ Education Standard ו-Education Plus,‏ Enterprise Essentials Plus,‏ Cloud Identity Premium. השוואה בין מהדורות

אחרי הגדרת הייצוא של מלאי Drive, אפשר לנתח את מערך הנתונים ב-BigQuery. בדף הזה מתוארת סכימת הטבלה ומוצגות שאילתות לדוגמה לדוחות נפוצים שאפשר לקבל מ-BigQuery.

הערה: צריך להגדיר חיוב לפרויקט ב-Google Cloud, כי יש עלות לייצוא ולשאילתות של מלאי Drive ב-BigQuery. הפעלת החיוב בפרויקט.

סכימת ייצוא של המלאי ב-Drive

סכימה והגדרות

ייצוא המלאי ב-Drive מתווסף למערך הנתונים ב-BigQuery עם הסכימה הבאה:

שם שדה סכימה תיאור
מזהה פריט id המזהה הייחודי של הפריט ב-Drive.
גרסה version מספר הגרסה האחרונה של הקובץ. גרסת הקובץ היא מספר שגדל באופן מונוטוני. השינוי הזה משקף כל שינוי שבוצע בקובץ בשרת, גם אם הוא לא גלוי למשתמש.
מזהה בעלים owner.user.id

לפריטים שבבעלות המשתמש, מזהה המשתמש של בעל הקובץ.

כתובת האימייל של הבעלים owner.user.email לגבי פריטים שנמצאים בבעלות המשתמש, האימייל של בעל הקובץ.
מזהה האחסון השיתופי owner.shared_drive.id לפריטים באחסון שיתופי, המזהה של האחסון השיתופי.
יוצר creator כתובת האימייל ומזהה המשתמש של יוצר הפריט. השדה הזה לא יאוכלס אם ליוצר כבר אין גישה לפריט.
חותמות זמן של תמונות מצב snapshot_start_time_micros וגם snapshot_end_time_micros חותמות הזמן של תחילת וסיום הפקת הדוח.
זמן קריאה read_time_micros חותמת הזמן של מועד הקריאה של המטא-נתונים של הפריט ב-Drive.
כותרת title

השם שהמשתמש נתן לקובץ.

תיאור description תיאור קצר של הפריט.
סטטוס העברה לאשפה trashed האם הפריט הועבר לאשפה אבל עדיין לא נמחק.
סוג MIME mime_type סוג ה-MIME של הפריט. סוגי MIME שנתמכים ב-Google Workspace וב-Google Drive
סיומת קובץ file_extension הרכיב האחרון של סיומת הקובץ המלאה, שחולץ משדה השם. האפשרות הזו זמינה רק לפריטים עם תוכן בינארי ב-Google Drive
זמן יצירה create_time_micros חותמת הזמן של מועד יצירת הפריט.
זמן השינוי האחרון last_modified_time_micros חותמת הזמן של הפעם האחרונה שבה מישהו שינה את הפריט.
גודל הקובץ file_size_bytes הגודל בבייטים של קובצי Blob וקובצי עורכי Google Docs. לא מדווח על פריטים שאין להם גודל, כמו קיצורי דרך ותיקיות.
מכסה שנוצלה consumed_quota_bytes מספר הבייטים של מכסת האחסון שנעשה בהם שימוש על ידי הפריט. הנתונים האלה כוללים את הגרסה העדכנית ואת הגרסאות הקודמות שנשמרו.
מזהה האחסון השיתופי shared_drive_id לפריטים באחסון שיתופי, המזהה של האחסון השיתופי.
יחידה ארגונית org_unit_path היחידה הארגונית של הבעלים של הפריט.
סכום כולל md5_checksum סכום הבדיקה MD5 של תוכן הפריט.
הצפנה מצד הלקוח client_side_encrypted ערך בוליאני שמציין אם הפריט מוצפן מצד הלקוח .
תיקייה ראשית parent המזהה של תיקיית ההורה של הפריט.
התוויות שהוחלו* applied_labels.id המזהה של התווית שהוחלה על הפריט.
applied_labels.title שם המשאב של התווית שמוחלת על הפריט.
applied_labels.field_values.id

המזהה של שדה, ייחודי בתוך תווית או ספרייה.

applied_labels.field_values.type

סוג השדה. יכול להיות אחת מהאפשרויות הבאות:

applied_labels.field_values.display_name

הטקסט שיוצג בממשק המשתמש כדי לזהות את השדה.
מזהה היעד של קיצור הדרך shortcut_target_id המזהה של הקובץ או התיקייה שאליהם קיצור הדרך הזה מצביע.
הרשאות access.permissions.permission_id

המזהה של ההרשאה. מזהה ייחודי של מקבל ההרשאה.

הערה: מזהה ההרשאה שונה ממזהה המשתמש.

access.permissions.name

השם ה'ידידותי' של ערך ההרשאה. בהמשך מופיעה רשימת דוגמאות לכל סוג הרשאה:

  • user – השם המלא של המשתמש, כפי שהוגדר בחשבון Google שלו, למשל 'Dana Cruz'
  • group – שם הקבוצה, למשל Example Admins
  • domain – שם דומיין מסוג מחרוזת, כמו example.com
  • anyone – לא דווח שם
access.permissions.type

סוג ההרשאה. הערכים החוקיים כוללים:

  • user
  • group
  • domain
  • anyone
access.permissions.role

התפקיד שמוענק על ידי ההרשאה הזו. הערכים החוקיים כוללים:

  • owner
  • organizer
  • fileOrganizer
  • writer
  • commenter
  • reader

הערה: למידע נוסף על הסוג, אפשר לעיין במאמר בנושא תפקידים והרשאות.

access.permissions.view

אם ההרשאה שייכת לתצוגה מפורטת, הערך הוא published.

access.permissions.allow_file_discovery

האם ההרשאה מאפשרת לחפש את הקובץ. הנתונים האלה מדווחים רק לגבי הרשאות מהסוגים domain או anyone.
access.permissions.email כתובת האימייל של המשתמש או הקבוצה שאליהם מתייחסת ההרשאה.
access.permissions.domain שם הדומיין של הישות שאליה מתייחסת ההרשאה הזו. השדה הזה מופיע כשסוג ההרשאה הוא user, group או domain.
access.permissions.user_id מזהה המשתמש שמשויך לאימייל בהרשאות.
access.permissions.permission_details
.permission_type
סוג ההרשאה של המשתמש.
access.permissions.permission_details.role התפקיד הראשי של המשתמש.
access.permissions.permission_details
.inherited_from
המזהה של הפריט שממנו ההרשאה הזו עוברת בירושה. השדה הזה מאוכלס רק עבור פריטים באחסון שיתופי.
access.permissions.permission_details
.inherited
ערך בוליאני שמציין אם ההרשאה היא בירושה.
access.permissions.inherited_permissions
_disabled
האם ההרשאות שהועברו בירושה מושבתות לפריט הזה. האפשרות הזו זמינה רק לתיקיות עם גישה מוגבלת.

‫* מתייחס לתוויות שמוחלות על פריטים ב-Drive.

דוגמאות לשאילתות

הדוגמאות האלה לשאילתות מבוססות על SQL מדור קודם. מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים שלכם. מידע נוסף על שאילתות של נתוני BigQuery

מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים.

הפונקציה מחזירה טבלה עם מזהה הקובץ, הכותרת, כתובת האימייל של הבעלים והסוג.

SELECT id, title, mime_type, owner.user.email
FROM project_name.dataset_name
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(access.permissions) AS permission
  WHERE permission.allow_file_discovery = true
)

חיפוש פריטים עם תווית ספציפית

מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים. מחליפים את label_id במזהה התווית, שאפשר למצוא במרכז ניהול התוויות.

השאילתה הזו מחזירה טבלה עם מזהה הקובץ, השם, כתובת האימייל של הבעלים והסוג.

SELECT id, title, mime_type, owner.user.email
FROM project_name.dataset_name
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(applied_labels) AS label
  WHERE label.id = label_id
)

איתור משתמשים שחורגים מסף השימוש בנפח האחסון ב-Drive

מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים. מחליפים את threshold בסף הרצוי במגה-בייט. לדוגמה, כדי למצוא משתמשים שמשתמשים ביותר מ-15GB של אחסון ב-Drive, השורה הלפני האחרונה היא HAVING total_storage_mb > 15000.

השאילתה הזו מחזירה טבלה עם כתובת האימייל של המשתמש וסך השימוש בנפח האחסון ב-Drive ב-MB, בסדר יורד.

SELECT owner.user.email AS user_email,
  SUM(size_bytes) / (1000000) AS total_storage_mb
FROM project_name.dataset_name
GROUP BY user_email
HAVING total_storage_mb > threshold
ORDER BY total_storage_mb DESC

איך מבררים אילו סוגי פריטים תופסים הכי הרבה מקום

מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים.

השאילתה הזו מחזירה טבלה של סוגי פריטים לפי גודל בסדר יורד.

SELECT mime_type, SUM(consumed_quota_bytes) AS total_consumed
FROM project_name.dataset_name
GROUP BY mime_type
ORDER BY total_consumed DESC

חיפוש פריטים שהוצפנו באמצעות הצפנה מצד הלקוח (CSE)

מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים.

SELECT id, owner.user.email, title
FROM project_name.dataset_name
WHERE mime_type LIKE '%.encrypted'

חיפוש פריטים ששותפו עם משתמש ספציפי

מחליפים את project_name.dataset_name בשם הפרויקט ובשם מערך הנתונים. מחליפים את user@example.com במשתמש הספציפי.

הערה: השאילתה הזו לא מוצאת שיתוף של המשתמש דרך קבוצות או חברות בקהל יעד.

SELECT id, title, mime_type, owner.user.email as owner_email
FROM project_name.dataset_name
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(access.permissions) AS permissions
  WHERE permissions.email = user@example.com
)