ייבוא קישורים להשתתפות מגיליון אלקטרוני ב-Google Sheets

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

לפני שמתחילים

לפני שאתם מייבאים קישורים של רשומות ל-Knowledge Catalog, אתם צריכים לבצע את הפעולות הבאות.

הגדרת חשבון השירות

כדי להריץ את כלי הייבוא באמצעות Google Sheets, צריך להגדיר חשבון שירות עם ההרשאות הנדרשות כדי לגשת ל-Google Sheets API ולהתחזות לפרטי הכניסה של המשתמש:

  1. מאתרים או יוצרים חשבון שירות.

    בוחרים חשבון שירות קיים או יוצרים חשבון שירות חדש בפרויקט שבו מפעילים את כלי הייבוא. למידע נוסף, קראו את המאמר יצירת חשבונות שירות. שימו לב לכתובת האימייל של חשבון השירות (לדוגמה, SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com).

  2. מגדירים התחזות לחשבון שירות.

    כדי להריץ את הסקריפט של כלי הייבוא באופן מקומי, לחשבון המשתמש שלכם צריכה להיות הרשאה להתחזות לחשבון השירות. מקצים לחשבון המשתמש את התפקיד יצירת אסימונים בחשבון שירות (roles/iam.serviceAccountTokenCreator) בחשבון השירות.

    איך מנהלים את הגישה לחשבונות שירות

  3. נותנים לחשבון השירות Editor גישה לגיליון האלקטרוני ב-Google Sheets.

    פותחים את הגיליון האלקטרוני ב-Google Sheets שרוצים להשתמש בו לתהליך הייבוא, לוחצים על שיתוף ומוסיפים את כתובת האימייל של חשבון השירות בתור Editor. ההרשאה הזו מאפשרת לחשבון השירות לקרוא נתונים מהגיליון או לכתוב נתונים בגיליון.

יצירת קטגוריה של Cloud Storage

יוצרים קטגוריה של Cloud Storage שתשמש כאזור ביניים לקובצי הייבוא.

התפקידים הנדרשים

כדי לוודא שלחשבון השירות יש את ההרשאות שנדרשות כדי לייבא קישורים לרשומות מגיליון אלקטרוני ב-Google Sheets, צריך לבקש מהאדמין לתת לחשבון השירות את התפקידים הבאים ב-IAM:

להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שהאדמין גם יוכל לתת לחשבון השירות את ההרשאות שנדרשות באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

הפעלת ממשקי ה-API

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

התפקידים שנדרשים כדי להפעיל ממשקי API

כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

הפעלת ממשקי ה-API

הגדרת מאגר Git

משכפלים את המאגר של dataplex-labs:

git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git
cd dataplex-labs/dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import/dataplex-glossary/import

התקנת יחסי תלות

מתקינים את יחסי התלות הנדרשים של Python:

pip3 install -r requirements.txt
cd dataplex-glossary

אם נתקלתם בבעיות בהתקנת החבילה, הגדירו סביבת פיתוח חדשה ב-Python.

אימות והגדרה של התחזות לחשבון שירות

מפעילים את Google Cloud CLI ומבצעים אימות באמצעות Application Default Credentials ‏ (ADC) עם התחזות לחשבון שירות:

# Set your service account email address
SA_EMAIL="SERVICE_ACCOUNT_EMAIL"

# Authenticate ADC using service account impersonation and required scopes
gcloud init
gcloud auth login
gcloud auth application-default login \
  --impersonate-service-account="${SA_EMAIL}" \
  --scopes="https://www.googleapis.com/auth/spreadsheets"

מחליפים את SERVICE_ACCOUNT_EMAIL במזהה האימייל של חשבון השירות. לדוגמה:

SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

דרישות לייבוא בין פרויקטים

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

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

  • לפני שמפעילים את הייבוא, צריך לוודא שהרשומות כבר קיימות בפרויקטים המתאימים ב-Knowledge Catalog.

  • לתת לסוכני השירות של Knowledge Catalog גישה לקטגוריה של Cloud Storage: חשבונות השירות של Knowledge Catalog בכל פרויקט יעד צריכים גישה לקטגוריות של Cloud Storage.

יצירה והגדרה של הגיליון האלקטרוני ב-Google Sheets לייבוא

כדי להפעיל ייבוא בכמות גדולה, צריך ליצור גיליון אלקטרוני חדש ב-Google Sheets באמצעות סכימת עמודות מדויקת כדי להגדיר את קישורי הכניסה, כולל סוגי קישורי הכניסה definition, related ו-synonym. הסכימה הזו מאפשרת לכלי הייבוא לנתח ולאמת את שדות המטא-נתונים. מוודאים שנתתם לחשבון השירות Editor גישה לגיליון האלקטרוני ב-Google Sheets.

השורה הראשונה בגיליון חייבת להכיל את כותרות הסכימה המדויקות הבאות, תוך הקפדה על אותיות רישיות:

כותרת עמודה חובה או אופציונלי תיאור
entry_link_type חובה הערך חייב להיות definition,‏ related או synonym.
source_entry חובה הנתיב המלא של המשאב של רשומת המקור בפורמט:
projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRYGROUP_NAME/entries/ENTRY_NAME
target_entry חובה הנתיב המלא של המשאב של רשומת היעד בפורמט:
projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRYGROUP_NAME/entries/ENTRY_NAME
source_path אופציונלי נתיב העמודה או השדה של קישורי ההגדרה (לדוגמה, Schema.column_name).

הגדרת משתני סביבה

מגדירים את משתני הסביבה הבאים:

# Set your Google Sheet URL
export SPREADSHEET_URL="GOOGLE_SHEET_URL"

# Set your bucket name
export BUCKETS="COMMA_SEPARATED_LIST_OF_BUCKETS"

# Set the project ID
export USER_PROJECT="USER_PROJECT"

ייבוא קישורים לרשומות מהגיליון האלקטרוני ב-Google Sheets

כדי לייבא את הקישורים לרשומות מגיליון האלקטרוני ב-Google Sheets אל Knowledge Catalog, מריצים את הסקריפט entrylinks-import.py:

cd import
python3 entrylinks-import.py \
  --spreadsheet-url="$SPREADSHEET_URL" \
  --buckets="$BUCKETS" \
  --user-project="$USER_PROJECT"

כדי להריץ כמה משימות ייבוא במקביל, מציינים כמה קטגוריות של Cloud Storage בפרמטר --buckets. הסקריפט מפצל את המטא-נתונים לקבוצות קטנות יותר ומעבד אותן בו-זמנית בקטגוריות, וכך מקצר את זמן ההטמעה הכולל.

אפשר לעיין ביומני הביצוע בספרייה logs/ בנתיב הביצוע המקומי. היומנים האלה עוזרים לכם לבדוק את תהליך ההעברה ולזהות רשומות שדילגתם עליהן או אזהרות לגבי עיצוב.

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