איתור נתונים ב-Cloud Storage וקיטלוג שלהם

במאמר הזה מוסבר איך להשתמש בתכונה "זיהוי אוטומטי" של Knowledge Catalog ב-BigQuery, שמאפשרת לסרוק נתונים בקטגוריות של Cloud Storage כדי לחלץ מטא-נתונים ולהוסיף אותם לקטלוג. במסגרת סריקת הגילוי, המערכת יוצרת באופן אוטומטי טבלאות BigLake או טבלאות חיצוניות לנתונים מובְנים, וטבלאות אובייקטים לנתונים לא מובְנים. טבלאות BigLake וטבלאות חיצוניות מאפשרות לשלוח שאילתות לנתונים מובְנים במאגרי נתונים חיצוניים (ראו מבוא לטבלאות BigLake ומבוא לטבלאות חיצוניות), וטבלאות אובייקטים מספקות אינדקס של מטא-נתונים על נתונים לא מובְנים ב-Cloud Storage (ראו מבוא לטבלאות אובייקטים). הטבלה המרוכזת הזו מקלה על קבלת תובנות מנתונים, אבטחת מידע ומשילות מידע שמבוססות על AI.

כדי להשתמש בגילוי אוטומטי של נתונים ב-Cloud Storage, צריך ליצור ולהריץ סריקת גילוי.

גילוי אוטומטי נקרא גם גילוי עצמאי.

סקירה כללית של סריקת הגילוי

סריקת גילוי מבצעת את הפעולות הבאות:

נתונים מובְנים ונתונים מובְנים למחצה

נתונים מובְנים ומובְנים למחצה כוללים פורמטים כמו Avro,‏ Parquet ו-CSV. סריקת הגילוי רושמת קבוצות של הקבצים האלה כטבלאות חיצוניות של BigLake. הסריקה מזהה קבצים רק אם הם נמצאים בתיקיות שמכילות את אותו פורמט נתונים וסכימה תואמת.

  • תרחיש לדוגמה: ריכוז קבצים מובְנים עם טיפוסים מוגדרים היטב ב-BigQuery כדי להריץ שאילתות SQL לניתוח נתונים בלי להגדיר סכימות באופן ידני.
  • תהליך עבודה:
    1. ארגון הקבצים המובְנים בתיקיות. חשוב לוודא שהקבצים בכל תיקייה הם באותו פורמט נתונים ושיש להם סכימה תואמת.
    2. יוצרים סריקת גילוי ומספקים את מזהה החיבור למשאב של Google Cloud .
    3. הסריקה מקבצת את הנתונים ורושמת אותם כטבלאות חיצוניות של BigLake.
    4. להריץ שאילתות על הטבלאות שפורסמו ישירות ב-BigQuery באמצעות SQL.

פורמטים נתמכים

פורמטים של דחיסה

בנתונים מובְנים ומובְנים למחצה, סריקת הגילוי תומכת בפורמטים הבאים של דחיסה:

  • דחיסה פנימית בפורמטים הבאים:

    דחיסה דוגמה לסיומת קובץ פורמט נתמך
    gzip .gz.parquet Parquet
    lz4 .lz4.parquet Parquet
    קצרצר .snappy.parquet ‫Parquet, ‏ ORC, ‏ Avro
    lzo .lzo.parquet ‫Parquet, ‏ ORC
  • דחיסה חיצונית של קובצי JSON ו-CSV:

    • gzip
    • bzip2

נתונים לא מובְנים

בנתונים לא מובְנים, כמו תמונות וסרטונים, סריקת הגילוי מזהה ורושמת קבוצות של קבצים עם אותו פורמט קובץ נתונים. הקבצים חייבים להיות בתיקיות שמכילות קבצים באותו פורמט קובץ. לדוגמה, כדי שסריקת הגילוי תזהה ותתעד שתי טבלאות אובייקטים של BigLake,‏ gs://images/group1 חייבת להכיל רק תמונות GIF, ו-gs://images/group2 חייבת להכיל רק תמונות JPEG.

  • תרחיש לדוגמה: קיטלוג קבצים לא מובְנים כמו תמונות או מסמכים כדי לבצע הסקת מסקנות של למידת מכונה באמצעות BigQuery ML או פונקציות מרוחקות.
  • תהליך עבודה:
    1. לארגן את הקבצים הלא מובנים בתיקיות. חשוב לוודא שהקבצים בכל תיקייה הם באותו פורמט קובץ.
    2. יוצרים סריקת גילוי.
    3. הסריקה מקבצת את הנתונים הלא מובנים ורושמת אותם כטבלאות אובייקטים של BigLake.
    4. מבצעים הסקת מסקנות על הקבצים הלא מובְנים ישירות ב-BigQuery.

פורמטים נתמכים

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

  • תמונה (כמו JPEG,‏ PNG ו-BMP)
  • מסמכים (כמו קובצי PDF, מצגות ודוחות טקסט)
  • אודיו או וידאו (כמו WAV,‏ MP3 ו-MP4)

מידע נוסף זמין במאמר קובצי אובייקטים נתמכים.

פורמטים של דחיסה

בטבלאות אובייקטים, הדחיסה מנוהלת בעיקר באמצעות המטא-נתונים של האובייקטים ב-Cloud Storage, ולא באמצעות ההגדרות הפנימיות של BigQuery.

  • דחיסת מטא-נתונים סטנדרטית: BigQuery מזהה באופן אוטומטי קבצים שנדחסו באמצעות gzip ו-bzip2 אם הם משתמשים בסיומות הסטנדרטיות ‎ .gz או ‎ .bz2.
  • ‫Content-Encoding: אתם יכולים להשתמש במטא-נתונים Content-Encoding gzip ב-Cloud Storage כדי להציג קבצים דחוסים תוך שמירה על סוג התוכן המקורי שלהם.
  • דחיסה פנימית של מדיה: יש תמיכה מובנית בפורמטים שדחוסים באופן טבעי (כמו JPEG לתמונות, MP3 לאודיו, MP4 לווידאו).

רישום וזמינות של טבלאות

הטבלאות שזוהו נרשמות ב-BigQuery כאחד מסוגי הטבלאות הבאים, בהתאם לפורמט הנתונים ולהגדרות הסריקה:

  • טבלאות אובייקטים של BigLake. נוצר לנתונים לא מובְנים, כמו תמונות וסרטונים.
  • טבלאות חיצוניות של BigLake. נוצרת לנתונים מובְנים ומובְנים למחצה כשמציינים מזהה חיבור למשאב של Google Cloud במהלך הגדרת הסריקה.
  • טבלאות חיצוניות (לא BigLake): נוצרות לנתונים מובְנים וחצי מובְנים אם לא מספקים מזהה חיבור למשאב.

הרישום הזה מאפשר לנתח את הנתונים שלהם ב-BigQuery. גם שמירת מטא-נתונים במטמון מופעלת בטבלאות BigLake ובטבלאות אובייקטים. כל הטבלאות של BigLake נטמעות באופן אוטומטי ב-Knowledge Catalog לצורך חיפוש וגילוי.

כדי להתחיל לעבוד עם הטבלאות החדשות שרשמתם, אתם יכולים:

מגבלות ומכסות

סריקת גילוי לא תומכת בפורמטים של טבלאות Apache Iceberg ו-Delta Lake.

כדי לראות את מגבלת הטבלאות שנתמכות בסריקת זיהוי, עיינו בקטע מכסות ומגבלות.

לפני שמתחילים

מפעילים את Dataplex API, אם הוא עדיין לא מופעל.

התפקידים שנדרשים כדי להפעיל ממשקי API

כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

להפעלת ה-API

התפקידים הנדרשים לחשבון השירות של Knowledge Catalog

לפני שמתחילים, צריך להקצות את הרשאות ה-IAM לחשבון השירות של Knowledge Catalog בפרויקט.

  service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com
  

מחליפים את PROJECT_NUMBER בפרויקט שבו מופעל Dataplex API.

כדי לוודא שלחשבון השירות של Knowledge Catalog יש את ההרשאות שנדרשות ליצירה ולהרצה של סריקת גילוי, צריך לבקש מהאדמין לתת לחשבון השירות של Knowledge Catalog את תפקידי ה-IAM הבאים:

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

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

ההרשאות הנדרשות

כדי ליצור ולהריץ סריקת איתור, נדרשות ההרשאות הבאות:

  • ‫bigquery.datasets.create בפרויקט של מקור הנתונים
  • ‫storage.buckets.get בקטגוריית מקור הנתונים
  • ‫storage.objects.get בקטגוריית מקור הנתונים
  • ‫storage.objects.list בקטגוריית מקור הנתונים
  • ‫bigquery.datasets.get בפרויקט של מקור הנתונים
  • מציינים חיבור:
    • bigquery.connections.delegate בחיבור ל-BigQuery
    • bigquery.connections.use בחיבור ל-BigQuery

יכול להיות שהאדמין יוכל גם לתת לחשבון השירות של Knowledge Catalog את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

התפקידים הנדרשים לחשבון השירות של החיבור ל-BigQuery

כדי לוודא שלחשבון של שירות הקישור ל-BigQuery יש את ההרשאות שנדרשות ליצירת סריקת גילוי, צריך לבקש מהאדמין לתת לחשבון של שירות הקישור ל-BigQuery את התפקיד סוכן שירות הגילוי של Dataplex (roles/dataplex.discoveryServiceAgent) באמצעות IAM בקטגוריה של Cloud Storage.

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

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

ההרשאות הנדרשות

כדי ליצור סריקה לאיתור, נדרשות ההרשאות הבאות:

  • ‫bigquery.datasets.create בפרויקט של מקור הנתונים
  • ‫storage.buckets.get בקטגוריית מקור הנתונים
  • ‫storage.objects.get בקטגוריית מקור הנתונים
  • ‫storage.objects.list בקטגוריית מקור הנתונים
  • ‫bigquery.datasets.get בפרויקט של מקור הנתונים
  • מציינים חיבור:
    • bigquery.connections.delegate בחיבור ל-BigQuery
    • bigquery.connections.use בחיבור ל-BigQuery

יכול להיות שהאדמין יוכל גם להעניק לחשבון BigQuery Connection Service את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

התפקידים הנדרשים למשתמשי קצה

כדי לקבל את ההרשאות שדרושות ליצירה ולניהול של סריקות לגילוי נתונים, אתם צריכים לבקש מהאדמין לתת לכם את התפקידים הבאים ב-IAM בקטגוריה של Cloud Storage:

  • גישה מלאה למשאבי DataScan: אדמין של Dataplex DataScan‏ (roles/dataplex.dataScanAdmin) – הפרויקט שלך
  • גישת כתיבה למשאבי DataScan: עריכת Dataplex DataScan‏ (roles/dataplex.dataScanEditor) – הפרויקט שלך
  • גישת קריאה למשאבי DataScan, לא כולל התוצאות: Dataplex DataScan Viewer (roles/dataplex.dataScanViewer) – הפרויקט שלך
  • גישת קריאה למשאבי DataScan, כולל התוצאות: Dataplex DataScan DataViewer (roles/dataplex.dataScanDataViewer) – הפרויקט שלך

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

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

ההרשאות הנדרשות

כדי ליצור ולנהל סריקות לאיתור נתונים, נדרשות ההרשאות הבאות:

  • יצירת DataScan: dataplex.datascans.create בפרויקט
  • מחיקת DataScan: dataplex.datascans.delete בפרויקט או במשאב DataScan
  • הצגת פרטי DataScan בלי התוצאות: dataplex.datascans.get בפרויקט שלכם, משאב DataScan
  • הצגת פרטי DataScan, כולל תוצאות: dataplex.datascans.getData בפרויקט או במשאב DataScan
  • הצגת רשימה של סריקות נתונים: dataplex.datascans.list בפרויקט או במשאב של סריקת נתונים
  • הפעלת DataScan: dataplex.datascans.run בפרויקט או במשאב של DataScan
  • עדכון התיאור של DataScan: dataplex.datascans.update במקרן של משאב DataScan
  • צפייה בהרשאות ה-IAM של DataScan: dataplex.datascans.getIamPolicy בפרויקט או במשאב DataScan
  • מגדירים את הרשאות ה-IAM ב-DataScan: dataplex.datascans.setIamPolicy בפרויקט או במשאב DataScan

יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

יצירת סריקה לאיתור נתונים

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

כשסריקת הגילוי פועלת, היא יוצרת קבוצת נתונים חדשה ב-BigQuery שתואמת לקטגוריה של Cloud Storage שנסרקה. השם של מערך הנתונים ב-BigQuery זהה לשם של הקטגוריה ב-Cloud Storage. תווים לא חוקיים בשם הקטגוריה מוחלפים בקו תחתון. אם שם מערך הנתונים לא זמין, מתווספת סיומת (לדוגמה, _discovered_001). מערך הנתונים מכיל את הטבלאות החיצוניות של BigLake או הטבלאות החיצוניות שלא של BigLake, שנוצרו על ידי סריקת הגילוי לניתוח נוסף.

המסוף

  1. נכנסים לדף Metadata curation במסוף Google Cloud .

    מעבר אל "ניהול מטא-נתונים"

  2. בכרטיסייה Cloud Storage discovery, לוחצים על Create.

  3. בחלונית Create discovery scan, מגדירים את פרטי הנתונים שרוצים לסרוק.

  4. מזינים שם לסריקה.

  5. בשדה Scan ID, מזינים מזהה ייחודי בהתאם למוסכמות למתן שמות למשאבים ב- Google Cloud. אם לא תציינו מזהה, סריקת הגילוי תיצור את מזהה הסריקה.

  6. אופציונלי: מוסיפים תיאור של הסריקה.

  7. כדי לציין את הקטגוריה של Cloud Storage שמכילה את הקבצים לסריקה, בשדה Bucket, מחפשים את הקטגוריה ובוחרים אותה.

  8. אופציונלי: מגדירים את הנתונים שרוצים לכלול בסריקת הגילוי או להחריג ממנה, על ידי ציון רשימה של תבניות glob לסינון קבצים. ב-Knowledge Catalog אפשר להשתמש בתבניות glob הבאות:

    • ‫*: התאמה לאפס תווים או יותר, בלי לחצות את גבולות הספרייה. לדוגמה, *.csv תואם ל-file.csv, אבל לא ל-folder/file.csv.
    • ‫**: התאמה לאפס תווים או יותר, מעבר לגבולות הספרייה. לדוגמה, **/*.csv תואם ל-file.csv ול-folder/subfolder/file.csv.
    • ‫?: התאמה לתו אחד בדיוק. לדוגמה, file_?.csv תואם ל-file_1.csv ול-file_a.csv, אבל לא ל-file_10.csv.
    • ‫[...]: התאמה לתו אחד מתוך קבוצת תווים. לדוגמה, [abc] תואם ל-a, ל-b או ל-c, ו-[a-z] תואם לכל אות קטנה.
    • ‫{...}: התאמה לרשימה מופרדת בפסיקים של תבניות משנה. לדוגמה, {sun,moon,stars} תואם ל-sun, ל-moon או ל-stars.
    • ‫\: תו בריחה (*,‏ ? או \). לדוגמה, file\*.csv תואם לשם הקובץ המילולי file*.csv.

    אפשר לציין את סוגי התבניות הבאים:

    • הכללה: אם רוצים לסרוק רק קבוצת משנה של הנתונים, צריך לספק רשימה של תבניות glob שתואמות לאובייקטים שרוצים לכלול.
    • Exclude: רשימה של תבניות glob שתואמות לאובייקטים שרוצים להחריג.

    לדוגמה, אם רוצים להחריג את gs://test_bucket/foo/.. מסריקת הגילוי, מזינים את **/foo/** בתור הנתיב להחרגה. מירכאות גורמות לשגיאות. חשוב להזין **/foo/** במקום "**/foo/**".

    אם אתם מספקים גם תבניות הכללה וגם תבניות החרגה, תבניות ההחרגה מופעלות קודם.

  9. בקטע Unstructured data options, בוחרים באפשרות Enable semantic inference.

    האפשרות הזו נדרשת אם רוצים לראות תובנות מנתונים לא מובְנים ב-Knowledge Catalog. מידע נוסף זמין במאמר מידע על תובנות מנתונים לא מובְנים.

  10. אופציונלי: בשדה Project, בוחרים את הפרויקט של מערך הנתונים ב-BigQuery שמכיל את הטבלאות החיצוניות של BigLake או את הטבלאות החיצוניות שלא שייכות ל-BigLake שנוצרו על ידי סריקת הגילוי. אם לא תציינו פרויקט, מערך הנתונים ייווצר בפרויקט שמכיל את הקטגוריה של Cloud Storage.

  11. בקטע Location type, בוחרים באפשרות Region או Multi-region (מה שזמין) שבה נוצר מערך הנתונים לפרסום ב-BigQuery.

  12. כדי ליצור טבלאות BigLake מהנתונים שנסרקו, בשדה Connection ID מזינים את מזהה החיבור של המשאב Google Cloud . מידע נוסף זמין במאמר חיבורי משאבים שלGoogle Cloud ב-BigQuery.

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

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

  13. בקטע Discovery frequency, מגדירים מתי רוצים להריץ את סריקת הגילוי:

    • חזרה: הסריקה פועלת לפי לוח זמנים מוגדר מראש. מציינים את שעת ההתחלה, הימים שבהם תתבצע הסריקה ואת התדירות, למשל מדי שעה.

    • לפי דרישה: הסריקה פועלת לפי דרישה.

  14. אופציונלי: בקטע JSON or CSV specifications, מציינים איך הסריקה צריכה לעבד קובצי JSON ו-CSV. לוחצים על מפרטים של JSON או CSV.

    1. כדי להגדיר אפשרויות של JSON, בוחרים באפשרות הפעלת אפשרויות ניתוח של JSON.
      • ‫Disable type inference: אם סריקת הגילוי צריכה להסיק את סוגי הנתונים בזמן סריקת הנתונים. אם משביתים את הסקת הסוגים לנתוני JSON, כל העמודות נרשמות כסוגים הפרימיטיביים שלהן, כמו מחרוזת, מספר או ערך בוליאני.
      • פורמט קידוד: קידוד התווים של הנתונים, כמו UTF-8,‏ US-ASCII או ISO-8859-1. אם לא תציינו ערך, המערכת תשתמש ב-UTF-8 כברירת מחדל.
    2. כדי להגדיר אפשרויות של קובצי CSV, בוחרים באפשרות הפעלת אפשרויות ניתוח של קובצי CSV.
      • ‫Disable type inference: אם סריקת הגילוי צריכה להסיק את סוגי הנתונים בזמן סריקת הנתונים. אם משביתים את הסקת הסוגים של נתוני CSV, כל העמודות נרשמות כמחרוזות.
      • שורות כותרת: מספר שורות הכותרת, 0 או 1. אם מציינים את הערך 0, סריקת הגילוי מסיקה את הכותרות ומחלצת את שמות העמודות מהקובץ. ערך ברירת המחדל הוא 0.
      • תו מפריד עמודות: התו שמשמש להפרדת ערכים. צריך לציין תו בודד, \r (חזרה לתחילת השורה) או \n (שורה חדשה). ברירת המחדל היא פסיק (,).
      • פורמט הקידוד: קידוד התווים של הנתונים, כמו UTF-8,‏ US-ASCII או ISO-8859-1. אם לא תציינו ערך, המערכת תשתמש ב-UTF-8 כברירת מחדל.
  15. לוחצים על Create (לסריקה מתוזמנת), על Run now (לסריקה על פי דרישה) או על Create and run (לסריקה חד-פעמית).

    • סריקה מתוזמנת: פועלת לפי לוח הזמנים שהגדרתם.
    • סריקה על פי דרישה: מופעלת פעם אחת בהתחלה כשיוצרים אותה, ואפשר להפעיל את הסריקה בכל שלב. יכול להיות שייקח כמה דקות עד שהסריקה תסתיים.
    • סריקה חד-פעמית: מתבצעת באופן אוטומטי. הוא נמחק באופן אוטומטי כשהוא מגיע לסף אורך החיים (TTL) שהוגדר לו, ערך שקובע את משך הזמן שבו סריקת הגילוי נשארת פעילה אחרי ההפעלה. ערך ה-TTL יכול להיות בין 0 שניות (מחיקה מיידית) ל-365 ימים. סריקת גילוי בלי TTL מוגדר נמחקת אוטומטית אחרי 24 שעות.

gcloud

כדי ליצור סריקת גילוי, משתמשים בפקודה gcloud dataplex datascans create data-discovery.

gcloud dataplex datascans create data-discovery --location=LOCATION
--data-source-resource=BUCKET_PATH

מחליפים את מה שכתוב בשדות הבאים:

  • ‫LOCATION: המיקום שבו רוצים ליצור את סריקת הגילוי
  • ‫BUCKET_PATH: הנתיב ב-Cloud Storage של הקטגוריה שרוצים לסרוק

REST

כדי ליצור סריקת איתור, משתמשים ב-dataScans.create method.

הרצת שאילתות על טבלאות BigLake שפורסמו

אחרי שמריצים את סריקת הגילוי, טבלאות BigLake מתפרסמות במערך נתונים חדש ב-BigQuery. אחרי שהטבלאות נוצרות, אפשר לנתח אותן ב-BigQuery באמצעות SQL, או ב-Managed Service for Apache Spark באמצעות Apache Spark או HiveQL.

SQL

אתם יכולים להציג טבלאות או להריץ שאילתות ב-BigQuery. במאמר הרצת שאילתה מוסבר איך מריצים שאילתות ב-BigQuery.

Apache Spark

כדי לשלוח שאילתות לטבלאות BigLake באמצעות Spark SQL במשימה ללא שרת (serverless) ב-Managed Service for Apache Spark:

  1. יוצרים סקריפט PySpark שדומה לסקריפט לדוגמה הבא:

    from pyspark.sql import SparkSession
    session = (
      SparkSession.builder.appName("testing")
        .config("viewsEnabled","true")
        .config("materializationDataset", "DATASET_ID")
        .config("spark.hive.metastore.bigquery.project.id", "PROJECT_ID")
        .config("spark.hive.metastore.client.factory.class", "com.google.cloud.bigquery.metastore.client.BigQueryMetastoreClientFactory")
        .enableHiveSupport()
        .getOrCreate()
    )
    
    session.sql("show databases").show()
    session.sql("use TABLE_NAME").show()
    session.sql("show tables").show()
    
    sql = "SELECT * FROM DATASET_ID.TABLE_ID LIMIT 10"
    df = session.read.format("bigquery").option("dataset", "DATASET_ID").load(sql)
    df.show()

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫DATASET_ID: מזהה של מערך נתונים שלמשתמשים יש הרשאת יצירה שלו
    • ‫PROJECT_ID: מזהה הפרויקט עם טבלת BigLake
    • ‫TABLE_NAME: שם הטבלה ב-BigLake
    • ‫TABLE_ID: המזהה של טבלת BigLake
  2. שליחת המשימה באצווה.

ניהול טבלאות BigLake שפורסמו

טבלאות BigLake שפורסמו נוצרות ומנוהלות ב-BigQuery על ידי סריקת הגילוי. כברירת מחדל, סריקת הגילוי מטפלת בגילוי נתונים חדשים, בהסקת סכימות ובהתפתחות סכימות בכל פעם שמופעלות סריקות מתוזמנות או סריקות על פי דרישה. כדי לציין שהמטא-נתונים מנוהלים על ידי הסריקה, הסריקה מפרסמת טבלאות שבהן התווית metadata-managed-mode מוגדרת ל-discovery-managed.

אם אתם רוצים לנהל בעצמכם את הסכימה ומטא-נתונים אחרים כמו אפשרויות CSV או JSON, הגדירו את התווית metadata-managed-mode ל-user_managed. כך הסכימה לא תשתנה בהרצת סריקת הגילוי הבאה. הגישה הזו יכולה להיות שימושית בתרחישים שבהם הסכימה שנוצרה על ידי סריקת הגילוי שגויה או שונה מהצפוי בטבלה נתונה. כשהתווית metadata-managed-mode מוגדרת לערך user_managed, היא יכולה להפחית את העלות.

כדי לעדכן את התווית, אפשר לערוך את הערך של מפתח התווית metadata-managed-mode ל-user_managed במקום discovery-managed. במקרה כזה, סריקת הגילוי לא מעדכנת את הסכימה של הטבלה כל עוד התווית user_managed מצורפת לטבלה.

עדכון טבלאות BigLake שפורסמו

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

כדי לעדכן טבלת BigLake שפורסמה:

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. עדכון של מאפיין אחד או יותר של טבלה.

  3. בחלונית השמאלית, לוחצים על Explorer:

    כפתור מודגש לחלונית Explorer.

    אם החלונית הימנית לא מוצגת, לוחצים על הרחבת החלונית הימנית כדי לפתוח אותה.

  4. בחלונית Explorer, מרחיבים את הפרויקט, לוחצים על Datasets ובוחרים קבוצת נתונים.

  5. לוחצים על סקירה כללית > טבלאות, ובוחרים את הטבלה.

  6. בכרטיסייה Details, בקטע Labels, מוודאים שהתווית metadata-managed-mode מוגדרת ל-user_managed. אם מוגדר ערך אחר, פועלים לפי השלבים הבאים:

    1. לוחצים על עריכת הפרטים.

    2. בשדה value של המפתח metadata-managed-mode, מזינים את הערך user_managed.

מחיקת טבלאות BigLake שפורסמו

כדי למחוק טבלת BigLake שפורסמה:

  1. מוחקים את קובצי הנתונים של הטבלה בקטגוריה של Cloud Storage.

  2. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  3. בחלונית השמאלית, לוחצים על Explorer:

    כפתור מודגש לחלונית Explorer.

  4. בחלונית Explorer, מרחיבים את הפרויקט, לוחצים על Datasets ובוחרים קבוצת נתונים.

  5. לוחצים על סקירה כללית > טבלאות, ובוחרים את הטבלה.

  6. בחלונית Details, בקטע Labels, מוודאים שהתווית metadata-managed-mode לא מוגדרת לערך user_managed. אם הוא מוגדר כ-user_managed, פועלים לפי השלבים הבאים:

    1. לוחצים על עריכת הפרטים .

    2. בשדה value, לצד המפתח metadata-managed-mode, מזינים את הערך discovery-managed.

  7. לוחצים על Run. סריקת הגילוי פועלת על פי דרישה.

אחרי שסריקת הגילוי פועלת, הטבלה של BigLake נמחקת ב-BigQuery ואי אפשר להציג אותה או לשלוח אליה שאילתות דרך Spark.

הפעלת סריקה לאיתור לפי דרישה

כדי להריץ סריקה לאיתור לפי דרישה, בוחרים באחת מהאפשרויות הבאות.

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. בתפריט הניווט, לוחצים על Governance > Metadata curation.

  3. בחלונית Cloud Storage discovery, לוחצים על סריקת הגילוי שרוצים להריץ.

  4. לוחצים על הפעלה מיידית.

gcloud

כדי להריץ סריקת איתור, מריצים את הפקודה gcloud dataplex datascans run:

gcloud dataplex datascans run DATASCAN \
  --location=LOCATION

מחליפים את המשתנים הבאים:

  • ‫LOCATION: האזור ב- Google Cloud שבו נוצרה סריקת הגילוי.
  • ‫DATASCAN: השם של סריקת הגילוי.

REST

כדי להריץ סריקת גילוי לפי דרישה, משתמשים ב-method‏ dataScans.run ב-Dataplex API.

הצגת רשימה של סריקות גילוי

כדי להציג את סריקות הגילוי, בוחרים באחת מהאפשרויות הבאות.

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. בתפריט הניווט, לוחצים על Governance > Metadata curation.

  3. בחלונית Cloud Storage discovery מופיעה רשימה של סריקות הגילוי שנוצרו בפרויקט.

gcloud

gcloud dataplex datascans list --location=LOCATION --project=PROJECT_ID

מחליפים את מה שכתוב בשדות הבאים:

  • ‫LOCATION: המיקום של הפרויקט
  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud

REST

כדי לאחזר את רשימת סריקות הגילוי בפרויקט, משתמשים בשיטה dataScans.list ב-Dataplex API.

צפייה בסריקת גילוי

כדי לראות סריקה לאיתור, בוחרים באחת מהאפשרויות הבאות.

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. בתפריט הניווט, לוחצים על Governance > Metadata curation.

  3. בחלונית Cloud Storage discovery, לוחצים על סריקת הגילוי שרוצים לראות את הפרטים שלה.

    • בקטע פרטי הסריקה מוצגים פרטים על סריקת החיפוש.
    • בקטע Scan status מוצגות תוצאות הגילוי של משימת הסריקה האחרונה.

gcloud

gcloud dataplex datascans jobs describe JOB \
    --location=LOCATION \
    --datascan=DATASCAN \
    --view=FULL

מחליפים את מה שכתוב בשדות הבאים:

  • ‫JOB: מזהה המשימה של סריקת הגילוי.
  • ‫LOCATION: האזור ב- Google Cloud שבו נוצרה סריקת הגילוי.
  • ‫DATASCAN: השם של סריקת הגילוי שאליה שייכת המשימה.

REST

כדי לראות את התוצאות של סריקה לזיהוי נתונים, משתמשים ב-method‏ dataScans.get ב-Dataplex API.

צפייה בתוצאות של סריקות גילוי קודמות

כדי לראות תוצאות של סריקות היסטוריות, בוחרים באחת מהאפשרויות הבאות.

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. בתפריט הניווט, לוחצים על Governance > Metadata curation.

  3. בחלונית Cloud Storage discovery, לוחצים על סריקת הגילוי שרוצים לראות את הפרטים שלה.

  4. לוחצים על החלונית היסטוריית סריקות. בחלונית Scan history מוצג מידע על משימות קודמות, כולל מספר הרשומות שנסרקו בכל משימה, הסטטוס של כל משימה והזמן שבו המשימות הופעלו.

  5. כדי לראות מידע מפורט על משימה, לוחצים על המשימה בעמודה Job ID.

gcloud

gcloud dataplex datascans jobs list \
    --location=LOCATION \
    --datascan=DATASCAN

מחליפים את מה שכתוב בשדות הבאים:

  • ‫LOCATION: האזור ב- Google Cloud שבו נוצרה סריקת הגילוי.
  • ‫DATASCAN: השם של סריקת הגילוי שאליה שייכת המשימה.

REST

כדי לראות את כל המשימות של סריקת גילוי, משתמשים ב-method‏ dataScans.jobs.list ב-Dataplex API.

עדכון סריקת גילוי

כדי לשנות את התזמון של סריקת הגילוי, למשל כדי לשנות את התזמון מסריקה על פי דרישה לסריקה חוזרת, צריך לעדכן את סריקת הגילוי.

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. בתפריט הניווט, לוחצים על Governance > Metadata curation.

  3. בחלונית Cloud Storage discovery, לוחצים על Actions > Edit בסריקת הגילוי שרוצים לעדכן.

  4. עורכים את הערכים.

  5. לוחצים על Save.

gcloud

כדי לעדכן סריקת גילוי, משתמשים בפקודה gcloud dataplex datascans update data-discovery.

gcloud dataplex datascans update data-discovery SCAN_ID --location=LOCATION --description=DESCRIPTION

מחליפים את מה שכתוב בשדות הבאים:

  • ‫SCAN_ID: המזהה של סריקת הגילוי שרוצים לעדכן
  • ‫LOCATION: האזור ב- Google Cloud שבו נוצרה סריקת הגילוי
  • ‫DESCRIPTION: התיאור החדש של סריקת הגילוי

REST

כדי לעדכן סריקת גילוי, משתמשים ב-method ‏dataScans.patch ב-Dataplex API.

מחיקת סריקת איתור

כדי למחוק סריקה לאיתור, בוחרים באחת מהאפשרויות הבאות.

המסוף

  1. נכנסים לדף BigQuery במסוף Google Cloud .

    כניסה לדף BigQuery

  2. בתפריט הניווט, לוחצים על Governance > Metadata curation.

  3. בחלונית Cloud Storage discovery, לוחצים על Actions > Delete ליד סריקת הגילוי שרוצים למחוק.

  4. לוחצים על Delete.

gcloud

gcloud dataplex datascans delete SCAN_ID --location=LOCATION --async

מחליפים את מה שכתוב בשדות הבאים:

  • ‫SCAN_ID: המזהה של סריקת הגילוי שרוצים למחוק.
  • ‫LOCATION: האזור ב- Google Cloud שבו נוצרה סריקת הגילוי.

REST

כדי למחוק סריקת גילוי, משתמשים ב-method ‏dataScans.delete ב-Dataplex API.