במסמך הזה מוסבר איך לפתור את הבעיות הנפוצות ביותר שגורמות לכך שלא מוצגים תרשימי שושלת נתונים ב-Knowledge Catalog (לשעבר Dataplex Universal Catalog). פתרון הבעיות האלה מבטיח שתוכלו לעקוב אחרי תנועת הנתונים, להבין את מקורות הנתונים ולבצע ניפוי באגים בצינורות הנתונים.
סוגי פרויקטים
נכסי נתונים יכולים להיות בפרויקטים שונים. לפניכם סיכום של פרויקטים אפשריים ושמות הנכסים שלהם.
פרויקט אחסון ב-BigQuery
בפרויקט הזה מאוחסנים נכסי הנתונים שלכם ב-BigQuery.
אפשר למצוא אותו בפרטי הנכס כחלק מTable ID, לפני הנקודה הראשונה.
פרויקט Compute
בפרויקט הזה נשמרים המטא-נתונים של שושלת הנתונים. ב-BigQuery, זה המקום שבו מריצים משימה. אם מריצים עבודה באמצעות מסוף Google Cloud , אפשר למצוא את שם פרויקט המחשוב בבורר הפרויקטים:
כששולחים בקשות ל-BigQuery API, צריך לציין את פרויקט החישוב בכתובת ה-URL, לדוגמה:
POST /bigquery/v2/projects/docs-compute/jobs HTTP/1.1
Host: bigquery.googleapis.com
User-Agent: Go-http-client/1.1
Authorization: <REDACTED 1031 BYTES>
Accept-Encoding: gzip
{
"configuration": {
"query": {
"useLegacySql": false,
"query": "CREATE OR REPLACE TABLE `docs-target.dataset.target-002` AS SELECT * FROM `docs-source.dataset.source-002`;"
}
},
"jobReference": {
"projectId": "docs-compute",
"jobId": "docs-compute-job-id",
"location": "us",
}
}
פרויקט פעיל
זה הפרויקט שממנו אתם צופים בנתוני שרשרת המקור. במסוף Google Cloud , הפרויקט הפעיל מוצג ברשימת הפרויקטים. אם משתמשים ב-API, הפרויקט הפעיל הוא הפרויקט שממנו מתבצעות קריאות ל-API.
השיוך של נתונים ב-BigQuery לא מוצג
הבעיה הבאה מתרחשת אחרי שמריצים משימה ב-BigQuery. במקרה כזה, יכולות להיות שלוש סיבות לבעיה:
- Data Lineage API מושבת בפרויקט הפעיל או בפרויקט החישוב.
- אין לכם את התפקיד 'צפייה בנתוני שושלת' (
roles/datalineage.viewer) בפרויקט הפעיל או בפרויקט החישוב. - הנתונים על מקורות הנתונים עדיין לא הגיעו. בהתאם לנפח ולמורכבות של הנתונים שעוברים עיבוד, יכולות לעבור 30 דקות עד 24 שעות עד שמוצג מקור הנתונים.
אם מופיעה ההודעה "Fetching lineage failed due to missing permissions" (אחזור שרשרת המקור נכשל בגלל הרשאות חסרות), סימן שחסרות לכם הרשאות בפרויקט הפעיל. אחרת, חסרות לכם הרשאות בפרויקט המחשוב.
כדי לפתור את הבעיה, צריך לבדוק אם Data Lineage API מופעל בפרויקט החישוב. אחרי שמפעילים את ה-API, צריך להריץ עבודה כדי לראות את מקור הנתונים. בהתאם לנפח ולמורכבות של הנתונים שעוברים עיבוד, יכולות לחלוף 30 דקות עד 24 שעות עד שיוצג מקור הנתונים.
לאחר מכן, בודקים אם Data Lineage API מופעל בפרויקט הפעיל.
כשממשק Data Lineage API מופעל, צריך להעניק את התפקיד Data Lineage Viewer (roles/datalineage.viewer) בפרויקטים הפעילים ובפרויקטים של החישוב.
מטא-נתונים של תהליך BigQuery לא מוצגים
הבעיה הבאה מתרחשת כשפותחים את חלונית הפרטים של הטבלה, שלא מציגה את כל הפרטים כמו הצהרת ה-SQL או המאפיין Process type.
המצב הזה קורה גם אם שרשרת מקורות הנתונים מוצגת בצורה תקינה.
יכול להיות שהסיבה לכך היא שאין לכם הרשאות לראות את המטא-נתונים בפרויקט של Compute.
דוגמה:
- טבלת המקור ב-BigQuery:
docs-source.dataset.source-001 - טבלת היעד ב-BigQuery:
docs-target.dataset.target-001 - שושלת נתונים בין
docs-source.dataset.source-001לביןdocs-target.dataset.target-001בפרויקט מחשובdocs-compute - יש לכם את התפקיד 'צפייה במוצא נתונים' בפרויקטים הפעילים ושל מחשוב
docs-compute.
כשלוחצים על פרטי התהליך של BigQuery, מוצגת ההודעה הבאה במסוף: Google Cloud
You don't have permission to view BigQuery process metadata in project X.
כדי לפתור את הבעיה הזו, צריך להעניק למשתמש את ההרשאה bigquery.jobs.get (לדוגמה, ההרשאה כלולה בתפקיד BigQuery Resource Viewer) בפרויקט החישוב.
פרטי הטבלה ב-BigQuery לא מוצגים
הבעיה הבאה מתרחשת כשפותחים את חלונית פרטי הטבלה, שמוצגת בה רק המאפיין Fully qualified name. זה קורה גם אם שרשרת מקורות הנתונים מוצגת בצורה תקינה.
זה יכול לקרות אם אין לכם את כל ההרשאות הנדרשות בפרויקטים של אחסון בטבלה.
דוגמה:
- טבלת BigQuery
docs-source.dataset.source-001 - טבלה ב-BigQuery
docs-target.dataset.target-001 - שושלת נתונים בין
docs-source.dataset.source-001לביןdocs-target.dataset.target-001עם פרויקט מחשובdocs-compute - יש לכם את התפקיד 'צפייה במוצא נתונים' בפרויקטים הפעילים ושל מחשוב
docs-compute.
במקרה כזה, כשלוחצים על פרטי הצומת של BigQuery, מוצגת ההודעה Entry with this fully qualified name is not available in Knowledge
Catalog or you do not have permissions to view it.
כדי לפתור את הבעיה, צריך להעניק את ההרשאה bigquery.tables.get (לדוגמה, ההרשאה הזו כלולה בתפקיד BigQuery Data Viewer) בפרויקט האחסון.
חיובים לא צפויים על עיבוד פרימיום של קטלוג הידע
השבתתם את Dataplex API (dataplex.googleapis.com) כדי להפסיק את החיובים, אבל אתם ממשיכים לראות חיובים יומיים על המק"ט Knowledge Catalog Premium Processing.
הבעיה הזו יכולה להתרחש אם Data Lineage API (datalineage.googleapis.com)
עדיין מופעל. החיוב על Data Lineage API מתבצע במסגרת SKU של Knowledge Catalog Premium Processing, אבל הוא מנוהל כ-API נפרד במסוף Google Cloud . השבתה של Dataplex API
לא משביתה את Data Lineage API ולא מפסיקה את החיובים שלו.
כדי לזהות אם מקור החיובים הוא מעקב אחר מקורות נתונים, צריך לבדוק את דוח החיוב ב-Cloud ולחפש את התווית goog-dataplex-workload-type עם הערך LINEAGE.
כדי להפסיק את החיובים, צריך להשבית את תכונת שרשרת המקורות של הנתונים על ידי השבתת Data Lineage API בפרויקטים.