במאמר הזה מוסבר איך לייבא מטא-נתונים ממערכת של צד שלישי אל Knowledge Catalog (לשעבר Dataplex Universal Catalog) באמצעות השיטות של Metadata Import API וצינור עיבוד נתונים משלכם. המטא-נתונים של Knowledge Catalog מורכבים מרשומות ומההיבטים שלהן.
אם אתם רוצים להשתמש ב-pipeline מנוהל של תזמור של Google Cloudכדי לחלץ ולייבא מטא-נתונים, מומלץ להשתמש ב-pipeline מנוהל של קישוריות. בצינור עיבוד נתונים מנוהל של קישוריות, אתם מביאים מחבר משלכם שמחלץ מטא-נתונים ויוצר פלט בפורמט שאפשר להשתמש בו כקלט בשיטות של ה-API לייבוא מטא-נתונים (קובץ ייבוא המטא-נתונים). לאחר מכן, משתמשים ב-Workflows כדי לתזמר את המשימות בצינור עיבוד הנתונים.
אפשר להריץ את הסוגים הבאים של משימות ייבוא מטא-נתונים:
- סנכרון מלא של רשומות עם ייבוא מצטבר של ההיבטים שלהן. נתמך ברשומות בהתאמה אישית.
- ייבוא מצטבר של היבטים בלבד. נתמך בהיבטים ששייכים לרשומות בהתאמה אישית ולרשומות מערכת. ברשומות בהתאמה אישית, אפשר לשנות גם את ההיבטים האופציונליים וגם את ההיבטים הנדרשים. ברשומות של המערכת, אפשר לשנות היבטים אופציונליים.
השלבים העיקריים
כדי לייבא מטא-נתונים באמצעות ה-API לייבוא מטא-נתונים, פועלים לפי השלבים הכלליים הבאים:
הגדירו את היקף העבודה.
בנוסף, חשוב להבין איך Knowledge Catalog מיישם את לוגיקת ההשוואה ואת מצב הסנכרון של הרשומות וההיבטים.
יוצרים קובץ אחד או יותר לייבוא מטא-נתונים שמגדירים את הנתונים שרוצים לייבא.
שומרים את קובצי הייבוא של המטא-נתונים בקטגוריה של Cloud Storage.
מריצים משימה של ייבוא מטא-נתונים.
השלבים בדף הזה מבוססים על ההנחה שאתם מכירים את המושגים של המטא-נתונים ב-Knowledge Catalog, כולל קבוצות של רשומות, סוגי רשומות וסוגי היבטים. מידע נוסף זמין במאמר מידע על מטא-נתונים ב-Knowledge Catalog.
לפני שמתחילים
לפני שמייבאים מטא-נתונים, צריך להשלים את המשימות שמפורטות בקטע הזה.
התפקידים הנדרשים
כדי לוודא שלחשבון השירות של Knowledge Catalog יש את ההרשאות שנדרשות כדי לגשת לקטגוריה של Cloud Storage, צריך לבקש מהאדמין לתת לחשבון השירות של Knowledge Catalog את התפקיד צפייה באובייקטים באחסון (roles/storage.objectViewer) ב-IAM ואת ההרשאה storage.buckets.get בקטגוריה.
כדי לקבל את ההרשאות שדרושות לניהול משימות ייבוא של מטא-נתונים, בקשו מהאדמין להקצות לכם את התפקידים הבאים ב-IAM:
-
שינוי רשומות והמאפיינים שלהן במשימת סנכרון מלא של מטא-נתונים של רשומות:
- Dataplex Entry Type User (
roles/dataplex.entryTypeUser) בסוג הרשומה או בפרויקט שבו מוגדר סוג הרשומה - Dataplex Aspect Type User (
roles/dataplex.aspectTypeUser) בסוג ההיבט או בפרויקט שבו מוגדר סוג ההיבט
- Dataplex Entry Type User (
-
שינוי ההיבטים הנדרשים במשימת מטא-נתונים של היבטים בלבד:
- Dataplex Entry Type User (
roles/dataplex.entryTypeUser) בסוג הרשומה או בפרויקט שבו מוגדר סוג הרשומה - Dataplex Aspect Type User (
roles/dataplex.aspectTypeUser) בסוג ההיבט או בפרויקט שבו מוגדר סוג ההיבט
- Dataplex Entry Type User (
-
שינוי היבטים אופציונליים במשימת מטא-נתונים של היבטים בלבד:
Dataplex Aspect Type User (
roles/dataplex.aspectTypeUser) בסוג ההיבט או בפרויקט שבו מוגדר סוג ההיבט. שימו לב: כשמשנים היבטים אופציונליים במשימת מטא-נתונים של היבטים בלבד, לא צריך הרשאות לסוג הרשומה המשויך. -
יצירת משימות לייבוא מטא-נתונים:
- Dataplex Entry Group Importer (
roles/dataplex.entryGroupImporter) בפרויקט או במשאב - Dataplex Entry and EntryLink Owner (
roles/dataplex.entryOwner) בפרויקט או במשאב
- Dataplex Entry Group Importer (
-
צפייה במשימות של מטא-נתונים:
Dataplex Metadata Job Viewer (
roles/dataplex.metadataJobViewer) בפרויקט -
יצירה, הצגה וביטול של משימות מטא-נתונים:
Dataplex Metadata Job Owner (
roles/dataplex.metadataJobOwner) בפרויקט
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
איך יוצרים משאבים ב- Google Cloud
מכינים את המשאבים הבאים של Google Cloud :
- יוצרים קבוצות של רשומות לרשומות שרוצים לייבא.
- יוצרים סוגי היבטים להיבטים שרוצים לייבא.
- יוצרים סוגי רשומות לרשומות שרוצים לייבא.
- אם אתם מריצים משימת מטא-נתונים של היבטים בלבד, צרו רשומות להיבטים שאתם רוצים לייבא.
- יוצרים קטגוריה של Cloud Storage לאחסון קובצי הייבוא של המטא-נתונים.
רכיבים של משימת ייבוא מטא-נתונים
כשמייבאים מטא-נתונים, חשוב לשים לב לרכיבים הבאים של משימת מטא-נתונים:
- היקף המשימה: קבוצות הרשומות, סוגי הרשומות וסוגי ההיבטים שצריך לכלול במשימה.
- מצב סנכרון: איך הרשומות וההיבטים במשימה מתעדכנים.
- קובץ ייבוא מטא-נתונים: קובץ שמגדיר את הערכים שצריך להגדיר לרשומות ולהיבטים במשימה. אפשר לספק כמה קובצי ייבוא של מטא-נתונים באותה משימת מטא-נתונים. אתם שומרים את הקבצים ב-Cloud Storage.
- לוגיקת השוואה: איך Knowledge Catalog קובע אילו רשומות והיבטים לשנות.
היקף המשרה
היקף המשימה מגדיר את קבוצות הרשומות, סוגי הרשומות וסוגי ההיבטים שרוצים לכלול במשימת ייבוא המטא-נתונים. כשמייבאים מטא-נתונים, משנים את הרשומות וההיבטים ששייכים למשאבים בהיקף של המשימה.
כדי להגדיר את היקף המשרה, צריך לפעול לפי ההנחיות הבאות:
קבוצות של רשומות: מציינים קבוצה אחת או יותר של רשומות שרוצים לכלול במשימה. המשימה משנה רק את הרשומות וההיבטים ששייכים לקבוצות הרשומות האלה. קבוצות הרשומות והמשימה צריכות להיות באותו אזור.
סוגי רשומות: מציינים סוג אחד או יותר של רשומות שרוצים לכלול במשימה. המשימה משנה רק את הרשומות וההיבטים ששייכים לסוגי הרשומות האלה. המיקום של סוג הרשומה חייב להתאים למיקום של המשימה, או שסוג הרשומה חייב להיות גלובלי.
סוגי היבטים: מציינים סוג היבט אחד או יותר שרוצים לכלול במשימה. המשימה משנה רק את ההיבטים ששייכים לסוגי ההיבטים האלה. המיקום של סוג ההיבט חייב להתאים למיקום של המשימה, או שסוג ההיבט חייב להיות גלובלי.
היקף המשימה חייב לכלול את כל סוגי הרשומות וסוגי ההיבטים שציינתם בקובץ ייבוא המטא-נתונים.
כשיוצרים משימת מטא-נתונים, מציינים את היקף המשימה.
מצב סנכרון
מצב הסנכרון קובע איך הרשומות וההיבטים במשימת ייבוא של מטא-נתונים מתעדכנים. אתם מספקים מצב סנכרון גם לרשומות וגם להיבטים. בהתאם למשאבים שרוצים לייבא, אפשר להשתמש בשילובים הבאים של מצבי סנכרון.
| מטרה | מצב סנכרון של רשומות | מצב סנכרון של יחס גובה-רוחב | תוצאות |
|---|---|---|---|
| ייבוא רשומות וההיבטים שלהן | FULL |
INCREMENTAL |
כל הרשומות בהיקף המשימה משתנות. אם רשומה קיימת ב-Knowledge Catalog אבל לא נכללת בקובץ הייבוא של המטא-נתונים, הרשומה נמחקת כשמריצים את משימת המטא-נתונים. היבט משתנה רק אם קובץ הייבוא של המטא-נתונים כולל הפניה להיבט בשדה |
| ייבוא של היבטים בלבד | NONE |
INCREMENTAL |
ההיבטים משתנים אם הם חלק מהיקף המשימה, ואם קובץ הייבוא של המטא-נתונים כולל הפניה להיבטים בשדה מטא-נתונים אחרים ששייכים לרשומות בהיקף של המשימה לא משתנים. |
מציינים את מצב הסנכרון כשיוצרים משימת מטא-נתונים.
קובץ ייבוא של מטא-נתונים
קובץ ייבוא המטא-נתונים הוא אוסף של הרשומות וההיבטים שרוצים לשנות. הוא מגדיר את הערכים שצריך להגדיר לכל השדות ששייכים לרשומות ולהיבטים האלה. אתם מכינים את הקובץ לפני שאתם מריצים משימת ייבוא של מטא-נתונים.
ההנחיות הכלליות הבאות חלות:
- אפשר לספק כמה קובצי ייבוא של מטא-נתונים באותה משימת מטא-נתונים.
כשמריצים משימה לסנכרון מלא של מטא-נתונים של רשומות, הרשומות שאתם מספקים בקובץ מחליפות לגמרי את כל הרשומות הקיימות של המשאבים שנכללים בהיקף המשימה. כלומר, צריך לכלול ערכים לכל הרשומות במשימה, ולא רק את הערכים שרוצים להוסיף או לעדכן. כדי לקבל רשימה של הרשומות הקיימות בפרויקט ולהשתמש בה כנקודת התחלה, משתמשים בשיטת ה-API
entries.list.כחלק ממשימת מטא-נתונים, אתם צריכים לספק קובץ ייבוא של מטא-נתונים. אם רוצים למחוק את כל הנתונים הקיימים של הרשומות שנכללות בהיקף המשימה, צריך לספק קובץ ייבוא מטא-נתונים ריק.
כל הרשומות וההיבטים שאתם כוללים בקובץ חייבים להיות שייכים לקבוצות הרשומות, לסוגי הרשומות ולסוגי ההיבטים שאתם מגדירים בהיקף של המשימה.
כדי ליצור קובץ ייבוא של מטא-נתונים, צריך לפעול לפי ההנחיות המפורטות בקטעים הבאים.
מבנה הקובץ
כל שורה בקובץ ייבוא המטא-נתונים מכילה אובייקט JSON שתואם לפריט ייבוא אחד. פריט ייבוא הוא אובייקט שמתאר את הערכים שצריך לשנות ברשומה ובהיבטים המצורפים אליה.
אפשר לספק כמה פריטי ייבוא בקובץ ייבוא מטא-נתונים אחד. עם זאת, אל תספקו את אותו פריט ייבוא יותר מפעם אחת במשימת מטא-נתונים. כדי להפריד בין הפריטים שאתם מייבאים, השתמשו בתו של שורה חדשה (0x0a).
קובץ ייבוא של מטא-נתונים עם תו מעבר לשורה חדשה בין כל פריט ייבוא נראה כמו בדוגמה הבאה:
{ "entry": { "name": "entry 1", #Information about entry 1 }
{ "entry": { "name": "entry 2", #Information about entry 2 }
המבנה של פריט ייבוא
כל פריט לייבוא בקובץ ייבוא המטא-נתונים יכול לכלול את השדות הבאים (ראו ImportItem). הדוגמה הבאה מעוצבת עם מעברי שורה כדי שיהיה קל לקרוא אותה, אבל כששומרים את הקובץ, צריך לכלול תו של שורה חדשה רק אחרי כל פריט לייבוא. אל תכללו מעברי שורה בין השדות של פריט ייבוא יחיד.
{
"entry": {
"name": "ENTRY_NAME",
"entryType": "ENTRY_TYPE",
"entrySource": {
"resource": "RESOURCE",
"system": "SYSTEM",
"platform": "PLATFORM",
"displayName": "DISPLAY_NAME",
"description": "DESCRIPTION",
"createTime": "ENTRY_CREATE_TIMESTAMP",
"updateTime": "ENTRY_UPDATE_TIMESTAMP"
},
"aspects": {
"ASPECT": {
"data": {
"KEY": "VALUE"
},
"aspectSource": {
"createTime": "ASPECT_CREATE_TIMESTAMP",
"updateTime": "ASPECT_UPDATE_TIMESTAMP"
}
},
# Additional aspect maps
},
"parentEntry": "PARENT_ENTRY",
"fullyQualifiedName": "FULLY_QUALIFIED_NAME"
},
"updateMask": "UPDATE_MASK_FIELDS",
"aspectKeys": [
"ASPECT_KEY",
# Additional aspect keys
],
}
מחליפים את מה שכתוב בשדות הבאים:
entry: מידע על רשומה וההיבטים שמצורפים אליה. במשימת ייבוא של מטא-נתונים של היבטים בלבד, Knowledge Catalog מתעלם מכל שדות האפשרויות של רשומה, חוץ ממפות ההיבטים.- ENTRY_NAME: שם המשאב היחסי של הרשומה, בפורמט
projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryGroups/ENTRY_GROUP_ID/entries/ENTRY_ID. - ENTRY_TYPE: שם המשאב היחסי של סוג הרשומה ששימש ליצירת הרשומה הזו, בפורמט
projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryTypes/ENTRY_TYPE_ID. entrySource: מידע ממערכת המקור על משאב הנתונים שמיוצג על ידי הרשומה:- RESOURCE: שם המשאב במערכת המקור.
- SYSTEM: השם של מערכת המקור.
- PLATFORM: הפלטפורמה שמכילה את מערכת המקור.
- DISPLAY_NAME: שם תצוגה ידידותי למשתמש.
- DESCRIPTION: תיאור של הרשומה.
- ENTRY_CREATE_TIMESTAMP: הזמן שבו הרשומה נוצרה במערכת המקור.
- ENTRY_UPDATE_TIMESTAMP: הזמן שבו הרשומה עודכנה במערכת המקור.
aspects: ההיבטים שמצורפים לרשומה. האובייקטaspectוהנתונים שלו נקראים מפת היבטים.ASPECT: היבט שמצורף לרשומה. בהתאם לאופן שבו ההיבט מצורף לרשומה, משתמשים באחד מהפורמטים הבאים:
- אם ההיבט מצורף ישירות לרשומה, צריך לציין את שם המשאב היחסי של סוג ההיבט, בפורמט
PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID. - אם ההיבט מצורף לנתיב של הרשומה, צריך לציין את הנתיב של סוג ההיבט בפורמט
PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID@PATH.
- אם ההיבט מצורף ישירות לרשומה, צריך לציין את שם המשאב היחסי של סוג ההיבט, בפורמט
KEY ו-VALUE: התוכן של ההיבט, בהתאם לתבנית המטא-נתונים של סוג ההיבט. התוכן צריך להיות מקודד ב-UTF-8. הגודל המקסימלי של השדה הוא 120KB. חובה להשתמש במילון
data, גם אם הוא ריק.ASPECT_CREATE_TIMESTAMP: הזמן שבו ההיבט נוצר במערכת המקור.
ASPECT_UPDATE_TIMESTAMP: הזמן שבו ההיבט עודכן במערכת המקור.
PARENT_ENTRY: שם המשאב של רשומת ההורה.
FULLY_QUALIFIED_NAME: שם לרשומה שאפשר להפנות אליה ממערכת חיצונית. שמות שמוגדרים במלואם
- ENTRY_NAME: שם המשאב היחסי של הרשומה, בפורמט
UPDATE_MASK_FIELDS: השדות שצריך לעדכן, בנתיבים שקשורים למשאב
Entry. מפרידים בין השדות באמצעות פסיק.במשימת סנכרון מלאה של רשומות, Knowledge Catalog כולל את הנתיבים של כל השדות של רשומה שאפשר לשנות, כולל aspects. המערכת מתעלמת מהשדה
updateMaskכשיוצרים או יוצרים מחדש רשומה.במשימת מטא-נתונים של היבט בלבד, מגדירים את הערך הזה ל-
aspects.ASPECT_KEY: ההיבטים שרוצים לשנות. תומך בתחביר הבא:
-
ASPECT_TYPE_REFERENCE: תואם לסוג ההיבט של היבטים שמצורפים ישירות לרשומה. -
ASPECT_TYPE_REFERENCE@PATH: תואם לסוג ההיבט ולנתיב שצוין. -
ASPECT_TYPE_REFERENCE@*: התאמה לסוג ההיבט בכל הנתיבים. -
*@PATH: התאמה לכל סוגי ההיבטים בנתיב שצוין.
מחליפים את
ASPECT_TYPE_REFERENCEבהפניה לסוג ההיבט, בפורמטPROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID.במשימת סנכרון של רשומה מלאה, אם משאירים את השדה הזה ריק, המערכת מתייחסת אליו כאילו צוינו בדיוק ההיבטים שקיימים ברשומה שצוינה. Knowledge Catalog מוסיף באופן משתמע את המפתחות לכל ההיבטים הנדרשים של רשומה.
-
הדרישות לגבי קבצים
אלה הדרישות לגבי קובץ הייבוא של המטא-נתונים:
- הקובץ צריך להיות בפורמט JSON Lines, שהוא קובץ JSON שמופרד בתו שורה חדשה. צריך להשתמש בתו של שורה חדשה (
0x0a) כדי להפריד בין הפריטים לייבוא. - הקובץ צריך להיות בקידוד תווים UTF-8.
- סיומות הקבצים הנתמכות הן
.jsonlו-.json. - גודל הקובץ של כל קובץ ייבוא מטא-נתונים חייב להיות קטן מ-1GiB. הגודל הכולל המקסימלי של כל הנתונים במשימת המטא-נתונים הוא 3GB. זה כולל את כל הקבצים והמטא-נתונים שמשויכים למשימה.
- סוגי הרשומות וסוגי ההיבטים שאתם מציינים בקובץ חייבים להיות חלק מההיקף של משימת המטא-נתונים.
- צריך להעלות את הקובץ לקטגוריה של Cloud Storage. אל תשמרו את הקובץ בתיקייה בשם
CLOUD_STORAGE_URI/deletions/.
לוגיקת ההשוואה
כדי לקבוע אילו רשומות והיבטים צריך לשנות, המערכת של Knowledge Catalog משווה בין הערכים וחותמות הזמן שאתם מספקים בקובץ הייבוא של המטא-נתונים לבין הערכים וחותמות הזמן שקיימים בפרויקט.
באופן כללי, Knowledge Catalog מעדכן את הערכים בפרויקט אם לפחות שינוי אחד שמוצע בקובץ הייבוא של המטא-נתונים ישנה את מצב הפרויקט כשהמשימה תפעל, בלי להוסיף נתונים לא עדכניים. השינוי המוצע חייב להופיע בשדה מסכת העדכון או בשדה מפתחות ההיבטים בקובץ הייבוא של המטא-נתונים.
לוגיקת ההשוואה משתנה בהתאם לסוג המשימה של ייבוא המטא-נתונים שאתם מריצים.
משימת סנכרון של רשומות מלאות
במשימה של סנכרון מלא של מטא-נתונים של רשומות, לכל רשומה שנכללת בהיקף המשימה, Knowledge Catalog מבצע אחת מהפעולות הבאות:
- יצירת רשומה והיבטים מצורפים. אם קובץ הייבוא של המטא-נתונים כולל רשומה שלא קיימת בפרויקט, Knowledge Catalog יוצר את הרשומה ואת ההיבטים המצורפים.
- מחיקת רשומה והיבטים מצורפים. אם רשומה קיימת בפרויקט, אבל קובץ הייבוא של המטא-נתונים לא כולל את הרשומה, Knowledge Catalog מוחק את הרשומה ואת ההיבטים המצורפים שלה מהפרויקט.
עדכון של רשומה והיבטים מצורפים. אם רשומה קיימת גם בקובץ ייבוא המטא-נתונים וגם בפרויקט, המערכת של Knowledge Catalog בודקת את חותמות הזמן של מקור הרשומה ושל מקור ההיבט שמשויכים לרשומה כדי לקבוע אילו ערכים לשנות. לאחר מכן, Knowledge Catalog מבצע אחת או יותר מהפעולות הבאות:
- יוצר מחדש את הרשומה. אם חותמת הזמן של יצירת מקור הרשומה בקובץ הייבוא של המטא-נתונים עדכנית יותר מחותמת הזמן התואמת בפרויקט, Knowledge Catalog יוצר מחדש את הרשומה בפרויקט.
- מעדכנים את הרשומה. אם חותמת הזמן של העדכון של מקור הרשומה בקובץ הייבוא של המטא-נתונים עדכנית יותר מחותמת הזמן התואמת בפרויקט, Knowledge Catalog מעדכן את הרשומה בפרויקט.
- יצירת היבט. אם היבט לא קיים בפרויקט, והוא נכלל במפת היבטים, בשדה מסכת העדכון ובשדה מפתחות ההיבטים בקובץ ייבוא המטא-נתונים, Knowledge Catalog יוצר את ההיבט.
- מחיקת היבט. אם היבט קיים בפרויקט, והוא נכלל בשדה מסכת העדכון ובשדה מפתחות ההיבטים בקובץ הייבוא של המטא-נתונים, אבל לא נכלל במפת היבטים, Knowledge Catalog מוחק את ההיבט.
עדכון היבט. אם היבט קיים בפרויקט ונכלל במפת היבטים, בשדה מסכת העדכון ובשדה מפתחות ההיבטים בקובץ הייבוא של המטא-נתונים, וחותמת הזמן של עדכון מקור ההיבט בקובץ הייבוא של המטא-נתונים עדכנית יותר מחותמת הזמן התואמת בפרויקט, Knowledge Catalog מעדכן את ההיבט.
אם לא צוינה חותמת זמן של עדכון מקור ההיבט בקובץ הייבוא של המטא-נתונים, אבל הרשומה התואמת מסומנת לעדכון, Knowledge Catalog מעדכן גם את ההיבט.
עם זאת, אם לפחות לאחד מההיבטים בקובץ הייבוא של המטא-נתונים יש חותמת זמן ישנה יותר מחותמת הזמן התואמת בפרויקט, אז Knowledge Catalog לא מבצע עדכונים ברשומה המצורפת.
משימה שמתמקדת רק בהיבט מסוים
במשימת מטא-נתונים של היבט בלבד, לכל היבט שהוא חלק מהיקף המשימה, Knowledge Catalog מבצע אחת מהפעולות הבאות:
- יצירת היבט. אם היבט לא קיים בפרויקט, והוא נכלל במפת היבטים, בשדה מסכת העדכון ובשדה מפתחות ההיבטים בקובץ ייבוא המטא-נתונים, Knowledge Catalog יוצר את ההיבט.
מחיקת היבט. אם ההיבט האופציונלי קיים בפרויקט, והוא נכלל בשדה מסכת העדכון ובשדה מפתחות ההיבטים בקובץ הייבוא של המטא-נתונים, אבל לא נכלל במפת ההיבטים, Knowledge Catalog מוחק את ההיבט.
אי אפשר למחוק היבטים נדרשים.
עדכון היבט. אם היבט קיים בפרויקט ונכלל במפת היבטים, בשדה מסכת העדכון ובשדה מפתחות ההיבטים בקובץ הייבוא של המטא-נתונים, וחותמת הזמן של עדכון מקור ההיבט בקובץ הייבוא של המטא-נתונים עדכנית יותר מחותמת הזמן התואמת בפרויקט, Knowledge Catalog מעדכן את ההיבט.
אם לא צוינה חותמת זמן של עדכון מקור ההיבט בקובץ ייבוא המטא-נתונים, גם ההיבט מתעדכן ב-Knowledge Catalog.
Knowledge Catalog מעדכן היבטים על סמך חותמת הזמן של העדכון של מקור ההיבט, בלי קשר לחותמת הזמן של העדכון של מקור הרשומה התואמת.
יצירת קובץ לייבוא מטא-נתונים
לפני שאתם מייבאים מטא-נתונים, אתם צריכים ליצור קובץ לייבוא מטא-נתונים בשביל המשימה. כך עושים את זה:
- מכינים קובץ ייבוא של מטא-נתונים לפי ההנחיות שמתוארות למעלה.
- מעלים את הקובץ לקטגוריה של Cloud Storage.
אפשר לספק כמה קובצי ייבוא של מטא-נתונים באותה משימת מטא-נתונים. כדי לספק כמה קבצים, שומרים אותם באותה קטגוריה של Cloud Storage. כשמריצים את המשימה, מציינים קטגוריה ולא קובץ ספציפי. הכלי Knowledge Catalog מייבא מטא-נתונים מכל הקבצים שנשמרו בקטגוריה, כולל קבצים שנמצאים בתיקיות משנה.
הפעלה של משימת ייבוא מטא-נתונים
אחרי שיוצרים קובץ לייבוא מטא-נתונים, מריצים את משימת הייבוא של המטא-נתונים.
REST
כדי לייבא מטא-נתונים, משתמשים ב-method metadataJobs.create.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_NUMBER: מספר הפרויקט או מזהה הפרויקט ב- Google Cloud .
- LOCATION_ID: המיקום ב- Google Cloud , למשל
us-central1. - METADATA_JOB_ID: אופציונלי. מזהה המשימה של המטא-נתונים.
CLOUD_STORAGE_URI: ה-URI של הקטגוריה של Cloud Storage או התיקייה שמכילה את קובצי הייבוא של המטא-נתונים. למידע נוסף על הדרישות של הקובץ, קראו את המאמר קובץ ייבוא מטא-נתונים.
- ENTRY_GROUP: שם המשאב היחסי של קבוצות הרשומות שנכללות בהיקף של המשימה, בפורמט
projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryGroups/ENTRY_GROUP_ID. מידע נוסף זמין במאמר בנושא היקף המשימה. ENTRY_TYPE: שם המשאב היחסי של סוג רשומה שנכלל בהיקף של המשימה, בפורמט
projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/entryTypes/ENTRY_TYPE_ID. מידע נוסף זמין במאמר בנושא היקף המשימה.- ASPECT_TYPE: שם המשאב היחסי של סוג ההיבט שנמצא בהיקף של המשימה, בפורמט
projects/PROJECT_ID_OR_NUMBER/locations/LOCATION_ID/aspectTypes/ASPECT_TYPE_ID. אופציונלי כשיוצרים משימת סנכרון של רשומה מלאה, חובה כשיוצרים משימה של היבט בלבד. מידע נוסף זמין במאמר בנושא היקף המשימה. - ENTRY_SYNC_MODE: מצב הסנכרון של הרשומה, למשל
FULLאוNONE. מידע נוסף זמין במאמר מצב סנכרון. - LOG_LEVEL: רמת היומנים שרוצים לתעד, למשל
INFOאוDEBUG. מידע נוסף זמין במאמר הצגת יומני משימות ופתרון בעיות.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://dataplex.googleapis.com/v1/projects/TARGET_PROJECT_NUMBER/locations/LOCATION_ID/metadataJobs?metadataJobId=METADATA_JOB_ID
תוכן בקשת JSON:
{
"type": "IMPORT",
"import_spec": {
"source_storage_uri": "gs://CLOUD_STORAGE_URI/",
"scope": {
"entryGroups": [
"ENTRY_GROUP"
],
"entry_types": [
"ENTRY_TYPE"
],
"aspect_types": [
"ASPECT_TYPE"
]
},
"entry_sync_mode": "ENTRY_SYNC_MODE",
"aspect_sync_mode": "INCREMENTAL",
"log_level": "LOG_LEVEL"
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
התגובה מזהה פעולה ממושכת.
קבלת פרטים על משימת מטא-נתונים
כדי לקבל מידע על משימת מטא-נתונים, כמו סטטוס המשימה ומספר הרשומות ששונו, צריך לפעול לפי השלבים הבאים. למידע נוסף על פתרון בעיות במשימה שנכשלה, עיינו בקטע הצגת יומני משימות ופתרון בעיות במסמך הזה.
C#
C#
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של C# במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
המשך
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Java
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Node.js
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Python
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Ruby
Ruby
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Ruby במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Ruby API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי לקבל מידע על משימת מטא-נתונים, משתמשים ב-method metadataJobs.get.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
-
PROJECT_NUMBER: מספר הפרויקט או מזהה הפרויקט ב- Google Cloud . -
LOCATION_ID: המיקום של Google Cloud , למשלus-central1. -
METADATA_JOB_ID: מזהה המשימה של המטא-נתונים.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://dataplex.googleapis.com/v1/projects/TARGET_PROJECT_NUMBER/locations/LOCATION_ID/metadataJobs/METADATA_JOB_ID
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/123456789012/locations/us-central1/metadataJobs/my-metadata-job",
"uid": "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d",
"createTime": "2026-07-17T16:30:15Z",
"updateTime": "2026-07-17T16:35:15Z",
"type": "IMPORT",
"importSpec": {
"sourceStorageUri": "gs://my-bucket/",
"scope": {
"entryGroups": [
"projects/123456789012/locations/us-central1/entryGroups/my-entry-group"
],
"entryTypes": [
"projects/123456789012/locations/us-central1/entryTypes/my-entry-type"
],
"aspectTypes": [
"projects/123456789012/locations/us-central1/aspectTypes/my-aspect-type"
]
},
"entrySyncMode": "FULL",
"aspectSyncMode": "INCREMENTAL",
"logLevel": "INFO"
},
"status": {
"state": "SUCCEEDED"
},
"importResult": {
"deletedEntries": "2",
"updatedEntries": "5",
"createdEntries": "10",
"unchangedEntries": "20",
"updateTime": "2026-07-17T16:35:15Z"
}
}
קבלת רשימה של משימות מטא-נתונים
אתם יכולים לקבל רשימה של משימות המטא-נתונים האחרונות. משימות ישנות יותר שהגיעו למצב סופי נמחקות מהמערכת מדי פעם.
C#
C#
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של C# במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
המשך
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Java
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Node.js
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Python
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Ruby
Ruby
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Ruby במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Ruby API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי לקבל רשימה של משימות המטא-נתונים האחרונות, משתמשים בשיטה metadataJobs.list.
ביטול משימת מטא-נתונים
אתם יכולים לבטל משימת מטא-נתונים שאתם לא רוצים להפעיל.
C#
C#
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של C# במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
המשך
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Go במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Java
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Node.js
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Python
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Ruby
Ruby
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Ruby במדריך למתחילים של Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Ruby API.
כדי לבצע אימות ב-Knowledge Catalog, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי לבטל משימת מטא-נתונים, משתמשים בשיטה metadataJobs.cancel.
צפייה ביומני משימות ופתרון בעיות
שימוש ב-Cloud Logging כדי להציג יומנים של משימת מטא-נתונים. איך עוקבים אחרי היומנים של Knowledge Catalog
אתם מגדירים את רמת היומן כשאתם יוצרים משימת מטא-נתונים. אלה רמות היומנים שזמינות:
-
INFO: מספק יומנים ברמת המשימה הכוללת. כולל יומנים נצברים על פריטי ייבוא, אבל לא מציין באיזה פריט ייבוא יש שגיאה.
DEBUG: מספק יומנים מפורטים לכל פריט ייבוא. כדי לפתור בעיות בפריטים ספציפיים בייבוא, אפשר להשתמש ברישום ביומן ברמת ניפוי באגים. לדוגמה, אתם יכולים להשתמש ברישום ביומן ברמת ניפוי באגים כדי לזהות משאבים שחסרים בהיקף המשימה, רשומות או היבטים שלא תואמים לסוג הרשומה או לסוג ההיבט המשויכים, או הגדרות שגויות אחרות בקובץ הייבוא של המטא-נתונים.
שגיאות אימות
ב-Knowledge Catalog מתבצע אימות של קובצי הייבוא של המטא-נתונים מול המטא-נתונים הנוכחיים בפרויקט. אם יש בעיה באימות, סטטוס המשימה יכול להיות אחד מהמצבים הבאים:
-
FAILED: השגיאה הזו מתרחשת כשיש שגיאה בקובץ ייבוא המטא-נתונים. Knowledge Catalog לא מייבא מטא-נתונים והמשימה נכשלת. דוגמאות לשגיאות בקובץ הייבוא של המטא-נתונים:- אי אפשר לנתח פריט בקובץ כפריט ייבוא תקין
- רשומה או היבט בקובץ שייכים לקבוצת רשומות, לסוג רשומה או לסוג היבט שלא נכללים בהיקף של המשימה
- אותו שם רשומה צוין יותר מפעם אחת במשימה
- סוג ההיבט שצוין במפת ההיבטים או במפתחות ההיבטים לא משתמש בפורמט PROJECT_ID_OR_NUMBER.LOCATION_ID.ASPECT_TYPE_ID@OPTIONAL_PATH
- היבט נדרש מסומן למחיקה
-
SUCCEEDED_WITH_ERRORS: קורה כשאפשר לנתח את קובץ ייבוא המטא-נתונים, אבל ייבוא של פריט בקובץ יגרום לרשומה בפרויקט להיות במצב לא עקבי. Knowledge Catalog מתעלם מהרשומות האלה, אבל מייבא את שאר המטא-נתונים מהקובץ.
כדי לפתור את השגיאה, אפשר להשתמש ביומני המשימות.
המאמרים הבאים
- חיפוש נכסי נתונים ב-Knowledge Catalog
- ניהול היבטים והעשרת מטא-נתונים
- ניהול רשומות והטמעת מקורות בהתאמה אישית
- ייצוא מטא-נתונים