במסמך הזה מפורטת סקירה כללית על פידים של שינויים במטא-נתונים של Dataplex Universal Catalog. פידים של שינויים במטא-נתונים מאפשרים לעקוב אחרי שינויים במטא-נתונים במופע של Dataplex Universal Catalog כמעט בזמן אמת, וליצור תהליכי עבודה מבוססי-אירועים על סמך השינויים האלה.
מעקב אוטומטי אחרי שינויים במטא-נתונים
ב-Dataplex Universal Catalog, רשומה מייצגת נכס נתונים, כמו טבלה ב-BigQuery, ואספקט הוא קבוצה של שדות מטא-נתונים קשורים שמצורפים לרשומה ומתארים אותה. כשנוצר, מתעדכן או נמחק רשומה או היבט, Dataplex Universal Catalog מפרסם הודעת התראה בנושא Pub/Sub שאתם מציינים. ההתראות האלה, שנקראות גם פיד שינויים במטא-נתונים, מכילות מידע על השינוי. היא כוללת את המידע הבא: מתי השינוי קרה, איזה משאב השתנה ומה סוג השינוי. מידע נוסף על רשומות והיבטים זמין במאמר מידע על ניהול מטא-נתונים ב-Dataplex Universal Catalog.
בתרשים הארכיטקטורה הבא מוצג תהליך שבו Dataplex Universal Catalog מתעד שינויים במטא-נתונים (יצירה, עדכון, מחיקה) ושולח אותם ל-Pub/Sub כדי להפעיל תהליכי עבודה מבוססי-אירועים במורד הזרם.
כדי לקבוע אילו שינויים ייצרו התראות, אפשר להגדיר פיד של שינויים במטא-נתונים כדי לעקוב אחרי משאבים ספציפיים. כדי לעשות זאת, צריך לציין היקף, כמו כל הארגון, פרויקטים ספציפיים או קבוצות ספציפיות של רשומות.
היקף מאפשר לכם להגדיר אילו משאבים לעקוב אחריהם, אבל אתם יכולים להשתמש במסננים כדי לחדד עוד יותר את ההגדרה של מתי Dataplex Universal Catalog ישלח התראות. לדוגמה, יכול להיות שתרצו לקבל התראות רק כשמתעדכנים טבלאות מהסוג bigquery-table, אבל לא כשיוצרים או מוחקים אותן. כדי לעשות את זה, אפשר להחיל מסנן אחד או יותר על פיד השינויים במטא-נתונים על סמך סוג הרשומה, סוג ההיבט או סוג השינוי (CREATE, UPDATE או DELETE).
לדוגמה, חברה קמעונאית אונליין משתמשת ב-BigQuery כדי לנהל את מלאי המוצרים בפרויקט ייעודי. כדי לעקוב רק אחרי שינויים בסכימה בטבלאות המלאי שלהם, הם יוצרים פיד של שינויים במטא-נתונים עם הפרויקט כהיקף, ומחילים מסננים על entry_type=bigquery-table ועל change_type=UPDATE. אם הסכימה של טבלה קריטית, כמו product_stock, מתעדכנת, השינוי הזה יוצר התראה מסוג UPDATE שתואמת למסנן של פיד השינויים במטא-נתונים. לאחר מכן, פיד השינויים במטא-נתונים שולח התראה לנושא Pub/Sub. תהליך עבודה אוטומטי שרשום לנושא הזה ב-Pub/Sub יכול להשהות באופן מיידי את צינורות הדיווח במורד הזרם, ולהתריע לצוות ניהול מלאי שטחי הפרסום כדי למנוע קבלת החלטות שמבוססות על נתונים לא עקביים.
תרחישים לדוגמה
אפשר להשתמש בפידים של שינויים במטא-נתונים למטרות שונות, כולל:
- סנכרון מטא-נתונים: סנכרון רציף של שינויים במטא-נתונים של Dataplex Universal Catalog עם קטלוג נתונים חיצוני או של צד שלישי, או עם אינדקס חיפוש.
- אכיפת מדיניות: החלה או עדכון אוטומטי של מדיניות אבטחה כשמשתנה היבט של סיווג נתונים ברשומה.
- אוטומציה של איכות הנתונים: הפעלת סריקה של איכות הנתונים או שליחת התראה לבעלי הנתונים כשסכימת הטבלה משתנה.
- הפעלה של ETL/ELT: אפשר להפעיל משימה של טרנספורמציה של נתונים כשנוצר או מתעדכן רשומה חדשה בטבלה.
- ביקורת: רישום כל השינויים במטא-נתונים בטבלת ביקורת לצורכי תאימות.
הסברים על המונחים
פיד של שינויים במטא-נתונים הוא משאב של Dataplex Universal Catalog שעוקב אחרי שינויים במטא-נתונים (יצירה, עדכון, מחיקה) של רשומות והיבטים, ושולח התראות לנושא Pub/Sub. ב-API, המשאב הזה נקרא metadataFeeds (projects/PROJECT_ID/locations/LOCATION/metadataFeeds/FEED_ID).
כדי להגדיר פיד של שינויים במטא-נתונים, צריך להגדיר את ההיקף, המסננים והיעד שלו. כשמתרחש שינוי במטא-נתונים שתואם להיקף ולמסננים של פיד השינויים במטא-נתונים, Dataplex Universal 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 שבו Dataplex Universal 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"
}
הוראות ליצירה ולניהול של פידים לשינוי מטא-נתונים מפורטות במאמר קבלת התראות באמצעות פידים לשינוי מטא-נתונים.
פורמט ההודעה של ההתראה
כששינוי במטא-נתונים מפעיל התראה, Dataplex Universal Catalog מפרסם הודעה בנושא Pub/Sub שצוין. פרטי אירוע השינוי נשמרים בהודעה ב-Pub/Sub. ההודעה מורכבת ממאפיינים לסינון וממטען ייעודי (payload) של נתונים עם פרטים על השינוי.
מידע נוסף על צריכת ההודעות האלה זמין במאמר צריכת הודעות התראה.
מאפיינים
המאפיינים מאפשרים לסנן הודעות בתוך הנושא. אפשר לסנן הודעות במינוי באמצעות מסנני מינוי ל-Pub/Sub.
השדות הבאים מופיעים במאפיינים:
-
timestamp: חותמת הזמן שבה השינוי קרה. -
entry_name: שם המשאב של הרשומה, בפורמטprojects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID/entries/ENTRY_ID. -
entry_fqn: השם המלא של הרשומה. -
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",
"full_qualified_name": "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 כמו פיד השינויים במטא-נתונים. אחרת, יצירת פיד השינויים במטא-נתונים תיכשל.
מכסות ומגבלות
מידע על מכסות שקשורות לעדכוני מטא-נתונים זמין במאמר מכסות.
הנה הגבלות שקשורות לפידים של שינויים במטא-נתונים:
מסירה: פידים של שינויים במטא-נתונים מספקים התראות על בסיס 'לפחות פעם אחת'. צריך לטפל בהודעות כפולות פוטנציאליות במנוי.
סדר: Dataplex Universal Catalog לא מבטיח את הסדר של מסירת ההודעות.
זמן אחזור: ההתראות על שינויים במטא-נתונים של הפיד מתקבלות כמעט בזמן אמת.
השהיה בהפעלה: יכולות לעבור עד 10 דקות עד שההגדרה של פיד חדש או מעודכן של שינויים במטא-נתונים תופעל, בגלל שמירה במטמון בקצה העורפי.
המטען הייעודי (Payload): הודעת ההתראה הראשונית מכילה רק חתימות של שינויים. לדוגמה, שם הרשומה, סוג הרשומה, סוג השינוי ורשימה של סוגי מאפיינים או מפתחות שהשתנו, והוא לא מכיל את הנתונים שהשתנו בפועל (מטען הייעודי של המאפיין). אם צריך, אפשר לשלוח קריאה ל-Dataplex Universal Catalog API (
GetEntry) כדי לאחזר את המצב הנוכחי של הרשומה או ההיבט.היבטים כלליים של אחסון: פידים של שינויים במטא-נתונים לא מספקים תמיכה בהיבטים כלליים של אחסון.
תמחור
אין חיובים ישירים על פידים של שינויים במטא-נתונים של Dataplex Universal Catalog. עם זאת, יש עלויות על המשאבים שבהם נעשה שימוש, כמו מסירת הודעות, אחסון ותעבורת נתונים יוצאת (egress) ב-Pub/Sub. מחירון Pub/Sub
המאמרים הבאים
- איך מקבלים התראות על מטא-נתונים באמצעות פידים של שינויים במטא-נתונים
- פתרון בעיות בפידים של שינויים במטא-נתונים