מידע על פידים של שינויים במטא-נתונים

במסמך הזה מפורטת סקירה כללית על פידים של שינויים במטא-נתונים של Knowledge Catalog (לשעבר Dataplex Universal Catalog). פידים של שינויים במטא-נתונים מאפשרים לעקוב אחרי שינויים במטא-נתונים במופע של Knowledge Catalog כמעט בזמן אמת, ולבנות תהליכי עבודה מבוססי-אירועים על סמך השינויים האלה.

איך פועלים פידים של שינויים במטא-נתונים

ב-Knowledge Catalog, רשומה מייצגת נכס נתונים, כמו טבלה ב-BigQuery, ואספקט הוא קבוצה של שדות מטא-נתונים קשורים שמצורפים לרשומה ומתארים אותה. כשיוצרים, מעדכנים או מוחקים רשומה או היבט, Knowledge Catalog מפרסם הודעת התראה בנושא Pub/Sub שאתם מציינים. ההתראות האלה, שנקראות גם פיד שינויים במטא-נתונים, מכילות מידע על השינוי. היא כוללת את המידע הבא: מתי השינוי קרה, איזה משאב השתנה ומה סוג השינוי. מידע נוסף על רשומות והיבטים זמין במאמר מידע על ניהול מטא-נתונים ב-Knowledge Catalog.

בתרשים הארכיטקטורה הבא מוצג איך Knowledge Catalog מתעד שינויים במטא-נתונים (יצירה, עדכון, מחיקה) ושולח אותם ל-Pub/Sub לתהליכי עבודה מבוססי-אירועים במורד הזרם.

שינויים במטא-נתונים של Dataplex מתפרסמים ב-Pub/Sub ונצרכים על ידי תהליכי עבודה של מנויים במורד הזרם.
איור 1. סקירה כללית על פידים של שינויים במטא-נתונים

כדי לקבוע אילו שינויים ייצרו התראות, אפשר להגדיר פיד של שינויים במטא-נתונים כדי לעקוב אחרי משאבים ספציפיים. כדי לעשות זאת, צריך לציין היקף, כמו כל הארגון, פרויקטים ספציפיים או קבוצות ספציפיות של רשומות. היקף מאפשר לכם להגדיר אילו משאבים לעקוב, אבל אתם יכולים להשתמש במסננים כדי לחדד עוד יותר מתי Knowledge Catalog ישלח התראות. לדוגמה, יכול להיות שתרצו לקבל התראות רק כשמתעדכנים טבלאות מהסוג bigquery-table, אבל לא כשיוצרים או מוחקים אותן. כדי לעשות את זה, אפשר להחיל מסנן אחד או יותר על פיד השינויים במטא-נתונים על סמך סוג הרשומה, סוג ההיבט או סוג השינוי (CREATE,‏ UPDATE או DELETE).

לדוגמה, חברת קמעונאות אונליין משתמשת ב-BigQuery כדי לנהל את מלאי המוצרים בפרויקט ייעודי. כדי לעקוב רק אחרי שינויים בסכימה בטבלאות המלאי שלהם, הם יוצרים פיד של שינויים במטא-נתונים עם הפרויקט כהיקף, ומחילים מסננים על entry_type=bigquery-table ועל change_type=UPDATE. אם הסכימה של טבלה קריטית, כמו product_stock, מתעדכנת, השינוי הזה יוצר התראה של UPDATE שתואמת למסנן של פיד השינויים במטא-נתונים. לאחר מכן, פיד השינויים במטא-נתונים שולח התראה לנושא Pub/Sub. תהליך עבודה אוטומטי שרשום לנושא הזה ב-Pub/Sub יכול להשהות באופן מיידי את צינורות הדיווח במורד הזרם ולהתריע לצוות ניהול מלאי שטחי הפרסום כדי למנוע קבלת החלטות שמבוססות על נתונים לא עקביים.

תרחישי שימוש בפיד לשינויים במטא-נתונים

אפשר להשתמש בפידים של שינויים במטא-נתונים למטרות שונות, כולל:

  • סנכרון מטא-נתונים: סנכרון רציף של שינויים במטא-נתונים של Knowledge Catalog לקטלוג נתונים חיצוני או של צד שלישי, או לאינדקס חיפוש.
  • אכיפת מדיניות: החלה או עדכון אוטומטי של מדיניות אבטחה כשמשתנה היבט של סיווג נתונים ברשומה.
  • אוטומציה של איכות הנתונים: הפעלה של סריקת איכות נתונים או שליחת התראה לבעלי הנתונים כשסכימת הטבלה משתנה.
  • הפעלה של ETL/ELT: אפשר להפעיל משימה של טרנספורמציה של נתונים כשנוצר או מתעדכן רשומה חדשה בטבלה.
  • ביקורת: רישום של כל השינויים במטא-נתונים בטבלת ביקורת לצורך תאימות.

מושגים מרכזיים והגדרות

פיד של שינויים במטא-נתונים הוא משאב של Knowledge Catalog שעוקב אחרי שינויים במטא-נתונים (יצירה, עדכון, מחיקה) של רשומות והיבטים, ושולח התראות לנושא Pub/Sub. ב-API, המשאב הזה נקרא metadataFeeds (projects/PROJECT_ID/locations/LOCATION/metadataFeeds/FEED_ID).

כדי להגדיר פיד לשינויים במטא-נתונים, צריך להגדיר את ההיקף, המסננים והיעד שלו. כשמתרחש שינוי במטא-נתונים שתואם להיקף ולמסננים של פיד השינויים במטא-נתונים, Knowledge Catalog מפרסם הודעת עדכון בנושא היעד של Pub/Sub.

הגדרת פיד לשינויים במטא-נתונים

כדי להגדיר פיד לשינויים במטא-נתונים, צריך להגדיר את הפרטים הבאים:

  • Scope: קבוצת המשאבים שרוצים לעקוב אחרי השינויים בהם, כמו הארגון כולו, פרויקטים ספציפיים או קבוצות ספציפיות של רשומות. ב-API, מציינים את שם המשאב. בדוגמה הבאה מוצג פורמט שם המשאב של קבוצת רשומות: projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID.

  • מסננים: קריטריונים לסינון השינויים שיוצרים התראות על סמך סוג הרשומה, סוג ההיבט או סוג השינוי (CREATE,‏ UPDATE או DELETE). ב-API, מציינים את שם המשאב. בדוגמה הבאה מוצג פורמט שם המשאב לסוג רשומה: projects/PROJECT_ID/locations/global/entryTypes/ENTRY_TYPE. אם לא מציינים מסננים, כל סוגי השינויים (CREATE,‏ UPDATE וDELETE) בהיקף של הפיד יוצרים התראות.

  • יעד: נושא Pub/Sub שבו Knowledge Catalog מפרסם הודעות התראה. ב-API, מציינים את שם הנושא. בדוגמה הבאה מוצג פורמט שם המשאב של נושא Pub/Sub: projects/PROJECT_ID/topics/TOPIC_ID.

בדוגמה הבאה מוצג פיד של שינויים במטא-נתונים שהוגדר למעקב אחרי פרויקטים PROJECT_ID_1 ו-PROJECT_ID_2 לגבי אירועי CREATE, ושליחת התראות אל TOPIC_ID:

{
  "scope": {
    "projects": [
      "projects/PROJECT_ID_1",
      "projects/PROJECT_ID_2"
    ]
  },
  "filter": {
    "changeTypes": [
      "CREATE"
    ]
  },
  "pubsubTopic": "projects/PROJECT_ID_PUBSUB/topics/TOPIC_ID"
}

הוראות ליצירה ולניהול של פידים לשינוי מטא-נתונים מפורטות במאמר קבלת התראות באמצעות פידים לשינוי מטא-נתונים.

פורמט ההודעה של ההתראה

כששינוי במטא-נתונים מפעיל התראה, Knowledge Catalog מפרסם הודעה בנושא Pub/Sub שצוין. פרטי אירוע השינוי נשמרים בהודעה ב-Pub/Sub. ההודעה מורכבת ממאפיינים לסינון וממטען ייעודי (payload) עם פרטים על השינוי.

מידע נוסף על צריכת ההודעות האלה זמין במאמר צריכת הודעות התראה.

מאפיינים

המאפיינים מאפשרים לסנן הודעות בתוך הנושא. אפשר לסנן הודעות במינוי באמצעות מסנני מינוי ל-Pub/Sub.

השדות הבאים מופיעים במאפיינים:

  • timestamp: חותמת הזמן של השינוי.
  • entry_name: שם המשאב של הרשומה, בפורמט projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID/entries/ENTRY_ID.
  • feed_name: שם המשאב של פיד השינויים במטא-נתונים, בפורמט projects/PROJECT_ID/locations/LOCATION/metadataChangeFeeds/FEED_ID.
  • entry_type: שם המשאב של סוג הרשומה, בפורמט projects/PROJECT_NUMBER/locations/LOCATION/entryTypes/ENTRY_TYPE_ID. מידע נוסף זמין במאמר בנושא סוגי רשומות.
  • entry_change_type: סוג השינוי: CREATED,‏ UPDATED או DELETED.

בדוגמה הבאה מוצגים המאפיינים של אירוע יצירת רשומה:

{
  "feed_name": "projects/PROJECT_ID/locations/LOCATION/metadataFeeds/FEED_ID",
  "entry_change_type": "CREATE",
  "timestamp": "2026-02-03T23:12:03.054469Z",
  "entry_type": "projects/PROJECT_NUMBER/locations/global/entryTypes/ENTRY_TYPE_ID"
}

מטען ייעודי (payload) של נתונים

המטען הייעודי (payload) של הודעת Pub/Sub הוא מחרוזת JSON שמכילה פרטים על השינוי.

דוגמה למטען ייעודי (payload) של נתונים:

{
  "entryName": "projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID/entries/ENTRY_ID",
  "fullyQualifiedName": "bigquery:PROJECT_ID.DATASET_ID.TABLE_ID",
  "updatedAspects": [
    "projects/PROJECT_NUMBER/locations/global/aspectTypes/updated-aspect-type"
  ],
  "createdAspects": [
    "projects/PROJECT_NUMBER/locations/global/aspectTypes/created-aspect-type"
  ],
  "deletedAspects": [
    "projects/PROJECT_NUMBER/locations/global/aspectTypes/deleted-aspect-type"
  ]
}

שיקולים לגבי VPC Service Controls

פידים של שינויים במטא-נתונים תואמים ל-VPC Service Controls ‏ (VPC-SC).

  • אם פיד שינויי המטא-נתונים הוא בהיקף הארגון, רק פרויקטים בתוך גבולות הגזרה של VPC Service Controls של פיד שינויי המטא-נתונים יוצרים התראות.

  • אם פיד שינויי המטא-נתונים מוגבל לפרויקט או לקבוצת רשומות, כל הפרויקטים או קבוצות הרשומות שצוינו צריכים להימצא באותו מתחם אבטחה היקפית של VPC Service Controls כמו פיד שינויי המטא-נתונים. אחרת, יצירת פיד שינויי המטא-נתונים תיכשל.

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

מידע על מכסות שקשורות לעדכוני שינויים במטא-נתונים זמין במאמר מכסות ומגבלות של Knowledge Catalog.

הנה הגבלות שקשורות לפידים של שינויים במטא-נתונים:

  • מסירה: פידים של שינויים במטא-נתונים מספקים התראות על בסיס 'לפחות פעם אחת'. צריך לטפל בהודעות כפולות פוטנציאליות במנוי.

  • סדר: לא מובטח שההודעות ב-Knowledge Catalog יימסרו בסדר מסוים.

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

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

  • המטען הייעודי (Payload): הודעת ההתראה הראשונית מכילה רק חתימות של שינויים. לדוגמה, שם הרשומה, סוג הרשומה, סוג השינוי ורשימה של סוגי היבטים או מפתחות שהשתנו, והיא לא מכילה את הנתונים שהשתנו בפועל (מטען הייעודי של ההיבט). אם צריך, אפשר לשלוח קריאה ל-Dataplex API ‏(GetEntry) כדי לאחזר את המצב הנוכחי של הרשומה או ההיבט.

  • היבטים כלליים של אחסון: פידים של שינויים במטא-נתונים לא תומכים בהיבטים כלליים של אחסון.

תמחור

אין חיובים ישירים על פידים של שינויים במטא-נתונים של Knowledge Catalog. עם זאת, יש עלויות על המשאבים שבהם נעשה שימוש, כמו מסירת הודעות, אחסון ותעבורת נתונים יוצאת (egress) ב-Pub/Sub. למחירון של Pub/Sub

המאמרים הבאים