פידים של שינויים במטא-נתונים של Knowledge Catalog (לשעבר Dataplex Universal Catalog) מאפשרים לכם לעקוב אחרי שינויים במטא-נתונים של רשומות והיבטים בארגון, בפרויקטים או בקבוצות של רשומות, כמעט בזמן אמת, וליצור תהליכי עבודה מבוססי-אירועים. במאמר קבלת התראות באמצעות פידים של שינויים במטא-נתונים מוסבר איך יוצרים ומנהלים את הפידים האלה.
איך פועלים פידים של שינויים במטא-נתונים
ב-Knowledge Catalog, רשומה מייצגת נכס נתונים, כמו טבלה ב-BigQuery, והיבט הוא קבוצה של שדות מטא-נתונים קשורים שמצורפים לרשומה ומתארים אותה. כשנוצר, מתעדכן או נמחק רכיב או היבט, Knowledge Catalog מפרסם הודעה בנושא Pub/Sub שציינתם. ההתראות האלה, שנקראות גם פיד שינויים במטא-נתונים, מכילות מידע על השינוי. המידע הזה כולל את מועד השינוי, המשאב שהשתנה וסוג השינוי. למידע נוסף על רשומות והיבטים, קראו את המאמר מידע על ניהול מטא-נתונים ב-Knowledge Catalog.
בתרשים הארכיטקטורה הבא אפשר לראות איך Knowledge Catalog מתעד שינויים במטא-נתונים (יצירה, עדכון, מחיקה) ומעביר אותם ל-Pub/Sub בשביל תהליכי עבודה מבוססי-אירועים במורד הזרם.
כדי לקבוע אילו שינויים יובילו לשליחת התראות, אתם יכולים להגדיר פיד שינויים במטא-נתונים שיעקוב אחרי משאבים ספציפיים. כדי לעשות את זה, צריך לציין היקף, כמו כל הארגון, פרויקטים ספציפיים או קבוצות ספציפיות של רשומות.
ההיקף מאפשר להגדיר אילו משאבים לעקוב אחריהם, ואתם יכולים להשתמש במסננים כדי לחדד מתי 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 ביעד.
הגדרת פיד השינויים במטא-נתונים
כדי להגדיר פיד של שינויים במטא-נתונים, צריך להגדיר את הפרטים הבאים:
היקף: קבוצת המשאבים שרוצים לעקוב אחרי השינויים בהם, כמו הארגון כולו, פרויקטים ספציפיים או קבוצות ספציפיות של רשומות. ב-API, מציינים את שם המשאב. הדוגמה הבאה מראה את הפורמט של שם המשאב לקבוצת רשומות:
projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID.Filters: קריטריונים לסינון השינויים שיוצרים התראות, על סמך סוג הרשומה, סוג ההיבט או סוג השינוי (
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.
בדוגמה הבאה מוצג פיד שינויים במטא-נתונים שמוגדר למעקב אחרי אירועים מסוג CREATE בפרויקטים PROJECT_ID_1 ו-PROJECT_ID_2, ושליחת התראות אל TOPIC_ID:
{
"scope": {
"projects": [
"projects/PROJECT_ID_1",
"projects/PROJECT_ID_2"
]
},
"filters": {
"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 אפשר לקבל פידים של שינויים במטא-נתונים ללא תשלום נוסף. עם זאת, אתם מחויבים על המשאבים שבהם אתם משתמשים, כמו העברת הודעות ב-Pub/Sub, אחסון ותעבורת נתונים יוצאת. למידע נוסף על התמחור של Pub/Sub