ניהול חילופי נתונים

במאמר הזה מוסבר איך לנהל שיתוף נתונים ב-BigQuery (לשעבר Analytics Hub). כאדמינים של שיתוף ב-BigQuery, אתם יכולים:

  • יצירה, עדכון, צפייה, שיתוף ומחיקה של החלפות נתונים.
  • ליצור, לעדכן, למחוק ולשתף כרטיסי מוצר.
  • ניהול של מנהלי BigQuery sharing, מנהלי רישום, מפרסמים, מנויים וצופים.

כברירת מחדל, שיתוף נתונים הוא פרטי. רק משתמשים או קבוצות שיש להם גישה לבורסה יכולים לראות את הנתונים שלה או להירשם לקבלת עדכונים לגביהם. אתם יכולים לבקש לפרסם את חילופי הנתונים שלכם. אם תגדירו את חילופי הנתונים כציבוריים, Google Cloud משתמשים (allAuthenticatedUsers) יוכלו לגלות ולהירשם לרישומים.

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

כדי להתחיל להשתמש ב-BigQuery sharing (לשעבר Analytics Hub), צריך להפעיל את Analytics Hub API בתוך Google Cloud הפרויקט.

כדי להפעיל את Analytics Hub API, אתם צריכים את ההרשאות הבאות בממשק של ניהול הזהויות והרשאות הגישה (IAM):

  • serviceUsage.services.get
  • serviceUsage.services.list
  • serviceUsage.services.enable

תפקיד ה-IAM המוגדר מראש הבא כולל את ההרשאות שנדרשות להפעלת Analytics Hub API:

כדי להפעיל את Analytics Hub API, בוחרים באחת מהאפשרויות הבאות:

המסוף

עוברים לדף Analytics Hub API ומפעילים את Analytics Hub API בפרויקט Google Cloud .

הפעלת Analytics Hub API

gcloud

מריצים את הפקודה gcloud services enable:

gcloud services enable analyticshub.googleapis.com

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

כדי לקבל את ההרשאות שנדרשות לניהול מרכזי נתונים, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין של Analytics Hub (roles/analyticshub.admin) בפרויקט. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

יצירת חילופי נתונים

כדי ליצור שיתוף נתונים, פועלים לפי השלבים הבאים:

המסוף

  1. עוברים לדף שיתוף (מרכז Analytics).

    מעבר אל 'שיתוף' (Analytics Hub)

  2. לוחצים על Create exchange.

  3. בתיבת הדו-שיח Create exchange, בוחרים Project ו-Region לחילופי הנתונים. אחרי שיוצרים את מרכז הנתונים, אי אפשר לעדכן את הפרויקט והאזור.

  4. בשדה שם לתצוגה, מזינים שם לבורסת הנתונים.

  5. אופציונלי: מזינים ערכים בשדות הבאים:

    • איש קשר ראשי: מזינים את כתובת ה-URL או את כתובת האימייל של איש הקשר הראשי להחלפת הנתונים.
    • תיאור: מזינים תיאור של חילופי הנתונים.
  6. כדי לרשום ביומן את מזהי העיקרון של כל המשתמשים שמריצים משימות ושאילתות במערכי נתונים מקושרים, לוחצים על המתג Subscriber Email Logging (רישום ביומן של כתובות אימייל של מנויים). כשמפעילים את האפשרות הזו, רישום כתובות האימייל של המנויים מופעל בכל כרטיסי המוצר העתידיים בבורסת הנתונים. הנתונים שנרשמו ביומן זמינים בשדה job_principal_subject בתצוגה INFORMATION_SCHEMA.SHARED_DATASET_USAGE.

  7. כדי לאפשר גילוי ציבורי, לוחצים על המתג גילוי ציבורי. כשבורסה ניתנת לגילוי באופן ציבורי, כל כרטיסי המוצר בבורסה מופיעים בקטלוג וניתן לחפש אותם. אם מפעילים את האפשרות 'גילוי על ידי הציבור', צריך להגדיר את הרשאות ההחלפה. כברירת מחדל, כל כרטיסי המוצר מקבלים בירושה את הגדרת החשיפה לציבור של חילופי הנתונים. המשמעות של העברת ההגדרות היא שבבורסות ציבוריות לא יכולים להיות מלאי שטחי פרסום פרטיים, אבל בבורסות פרטיות יכולים להיות מלאי שטחי פרסום ציבוריים. אפשר להגדיר את סוג החשיפה לציבור ברמת כרטיס המוצר הבודד. לפרויקט שבו יוצרים את מרכז הנתונים צריך להיות משויך ארגון וחשבון לחיוב.

  8. לוחצים על יצירת בורסה.

  9. אופציונלי: בקטע Exchange Permissions, מבצעים את השלבים הבאים:

    1. מזינים כתובות אימייל בשדות הבאים כדי להעניק את התפקידים בניהול הזהויות והרשאות הגישה (IAM):

    2. כדי לשמור את ההרשאות, לוחצים על הגדרת הרשאות.

  10. אם לא הגדרתם הרשאות לשיתוף הנתונים, לוחצים על דילוג.

API

משתמשים בשיטה projects.locations.dataExchanges.create.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט שבו רוצים ליצור את מרכז הנתונים.
  • LOCATION: המיקום של חילופי הנתונים. מידע נוסף על מיקומים שתומכים ב-BigQuery sharing זמין במאמר בנושא אזורים נתמכים.
  • DATAEXCHANGE_ID: המזהה של חילופי הנתונים.

בגוף הבקשה, מציינים את פרטי חילופי הנתונים.

אם הבקשה מצליחה, גוף התגובה מכיל את הפרטים של חילופי הנתונים.

אם מפעילים רישום ביומן של כתובות אימייל של מנויים באמצעות השדה logLinkedDatasetQueryUserEmail, התשובה של חילופי הנתונים מכילה log_linked_dataset_query_user_email: true. הנתונים שנרשמו ביומן זמינים בשדה job_principal_subject של INFORMATION_SCHEMA.SHARED_DATASET_USAGE התצוגה.

מידע נוסף על המשימות שאפשר לבצע בבורסות נתונים באמצעות ממשקי API זמין במאמר שיטות של projects.locations.dataExchanges.

עדכון של שיתוף נתונים

כדי לעדכן שיתוף נתונים, פועלים לפי השלבים הבאים:

המסוף

  1. עוברים לדף שיתוף (מרכז Analytics).

    מעבר אל 'שיתוף' (Analytics Hub)

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

  3. עוברים לכרטיסייה פרטים.

  4. לוחצים על עריכת החשבון.

  5. בתיבת הדו-שיח עריכת בורסה, מעדכנים את השדות הבאים:

    • השם המוצג
    • איש הקשר הראשי
    • תיאור
    • גילוי ציבורי
      • אם מפעילים את האפשרות 'גילוי ציבורי', צריך להקצות את התפקיד 'צפייה ב-Analytics Hub' (roles/analyticshub.viewer) למשתמש allUsers או allAuthenticatedUsers.
      • אם משביתים את האפשרות שאנשים יוכלו למצוא את המרכז, צריך להסיר את התפקיד 'צפייה ב-Analytics Hub' (roles/analyticshub.viewer) מ-allUsers או מ-allAuthenticatedUsers. בבורסות פתוחות אי אפשר לפרסם מלאי שטחי פרסום פרטי, אבל בבורסות פרטיות אפשר לפרסם מלאי שטחי פרסום פתוח.
    • רישום ביומן של אימיילים למנויים

  6. לוחצים על Save.

API

משתמשים בשיטה projects.locations.dataExchanges.patch.

PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK

מחליפים את UPDATEMASK ברשימת השדות שרוצים לעדכן. כדי לעדכן כמה ערכים, צריך להשתמש ברשימה מופרדת בפסיקים. לדוגמה, כדי לעדכן את השם המוצג ואת איש הקשר הראשי של שיתוף נתונים, מזינים displayName,primaryContact.

בגוף הבקשה, מציינים ערכים מעודכנים בשדות הבאים:

  • displayName
  • description
  • primaryContact
  • documentation
  • icon
  • discoveryType
  • logLinkedDatasetQueryUserEmail

פרטים על השדות האלה זמינים במאמר בנושא משאב: DataExchange.

מידע נוסף על המשימות שאפשר לבצע בבורסות נתונים באמצעות ממשקי API זמין במאמר שיטות של projects.locations.dataExchanges.

צפייה בהחלפות נתונים

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

המסוף

  1. עוברים לדף שיתוף (מרכז Analytics).

    מעבר אל 'שיתוף' (Analytics Hub)

  2. בדף מוצגים חילופי הנתונים ב Google Cloud פרויקט. אם יש לכם הרשאה resourcemanager.organizations.get, תוכלו גם לראות את חילופי הנתונים בארגון שלכם Google Cloud .

API

כדי לראות את חילופי הנתונים בפרויקט, משתמשים בשיטה projects.locations.dataExchanges.list:

GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: המיקום שלגביו רוצים להציג את בורסות הנתונים הקיימות.

כדי לראות את חילופי הנתונים בארגון, משתמשים בשיטה organizations.locations.dataExchanges.list:

GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/location/LOCATION/dataExchanges

מחליפים את מה שכתוב בשדות הבאים:

  • ORGANIZATION_ID: מזהה הארגון. מידע נוסף זמין במאמר איך מוצאים את מספר הארגון.
  • LOCATION: המיקום שבו רוצים להציג את רשימת חילופי הנתונים הקיימים.

שיתוף של חילופי נתונים

אם המפרסם של BigQuery sharing שייך לארגון אחר מהארגון שמכיל את מרכז הנתונים, המפרסם לא יכול לראות את מרכז הנתונים ב-BigQuery sharing. משתפים עם בעל התוכן הדיגיטלי קישור לחילופי הנתונים.

  1. עוברים לדף שיתוף (מרכז Analytics).

    מעבר אל 'שיתוף' (Analytics Hub)

  2. ברשימת חילופי הנתונים, לוחצים על אפשרויות נוספות.

  3. לוחצים על העתקת קישור לשיתוף.

איך מעניקים למשתמשים גישה לחילופי נתונים

כדי לתת למשתמשים גישה להחלפת נתונים, צריך להגדיר את מדיניות IAM להחלפת הנתונים הזו. במאמר תפקידי IAM לשיתוף ב-BigQuery יש מידע על תפקידי משתמש מוגדרים מראש ב-IAM.

המסוף

  1. נכנסים לדף Sharing (Analytics Hub) במסוף Google Cloud .

    מעבר אל 'שיתוף' (Analytics Hub)

  2. לוחצים על השם של מרכז הנתונים שרוצים להגדיר לו הרשאות.

  3. עוברים לכרטיסייה פרטים.

  4. לוחצים על הגדרת הרשאות.

  5. כדי להוסיף ישויות, לוחצים על Add principal.

  6. בשדה New principals, מוסיפים את מזהי האימייל שרוצים להעניק להם גישה. אפשר גם להשתמש ב-allUsers כדי להגדיר משאב כציבורי ונגיש לכל אחד באינטרנט, או ב-allAuthenticatedUsers כדי להגדיר אותו כנגיש רק למשתמשים שמחוברים לחשבון Google.

  7. בתפריט Select a role, בוחרים באפשרות Analytics Hub ואז בוחרים אחד מהתפקידים הבאים בניהול זהויות והרשאות גישה (IAM):

    • Analytics Hub Admin
    • אדמין של כרטיס מוצר ב-Analytics Hub
    • Analytics Hub Publisher
    • Analytics Hub Subscriber
    • בעלים של מינוי ל-Analytics Hub
    • Analytics Hub Viewer
  8. לוחצים על Save.

API

  1. קוראים את המדיניות הקיימת באמצעות ה-method‏ getIamPolicy של הרישום באמצעות projects.locations.dataExchanges.getIamPolicy:

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID: מזהה הפרויקט, לדוגמה: my-project-1.
    • LOCATION: המיקום של בורסת הנתונים. משתמשים באותיות קטנות.
    • DATAEXCHANGE_ID: מזהה חילופי הנתונים.

    שיתוף ב-BigQuery (לשעבר Analytics Hub) מחזיר את המדיניות הנוכחית.

  2. כדי להוסיף או להסיר חברים ואת התפקידים המשויכים שלהם בניהול הזהויות והרשאות הגישה (IAM), צריך לערוך את המדיניות באמצעות כלי לעריכת טקסט. כדי להוסיף חברים, צריך להשתמש בפורמט הבא:

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    לדוגמה, כדי להקצות את התפקיד roles/analyticshub.subscriber ל-group:subscribers@example.com, מוסיפים את הקישור הבא למדיניות:

    {
     "members": [
       "group:subscribers@example.com"
     ],
     "role":"roles/analyticshub.subscriber"
    }
    
  3. כותבים את המדיניות המעודכנת באמצעות השיטה projects.locations.dataExchanges.setIamPolicy. בגוף הבקשה, מציינים את מדיניות ה-IAM המעודכנת מהשלב הקודם.

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
    

    בגוף הבקשה, מציינים את פרטי כרטיס המוצר. אם הבקשה תאושר, גוף התגובה יכיל את פרטי כרטיס המוצר.

יצירת אדמינים לשיתוף ב-BigQuery

כדי לנהל את מרכזי הנתונים, צריך ליצור אדמינים של מרכזי נתונים על ידי הענקת תפקיד האדמין ב-Analytics Hub (roles/analyticshub.admin) למשתמשים ברמת הפרויקט או ברמת מרכז הנתונים.

כדי לאפשר לאדמינים לנהל את כל חילופי הנתונים בפרויקט, צריך להקצות להם את תפקיד האדמין ב-Analytics Hub בפרויקט הזה.

כדי לאפשר לאדמינים לנהל חילופי נתונים ספציפיים, צריך להקצות להם את תפקיד האדמין ב-Analytics Hub עבור חילופי הנתונים האלה.

הגדרת גישה ציבורית להחלפת נתונים

כברירת מחדל, שיתוף נתונים הוא פרטי. רק משתמשים או קבוצות עם גישה לבורסה יכולים לראות את רשימות המוצרים שלה או להירשם אליהן. אפשר להפוך את חילופי הנתונים לציבוריים, וכך משתמשיGoogle Cloud (allAuthenticatedUsers) יוכלו לגלות את כרטיסי המוצר שלהם ולהירשם אליהם.

כדי להפוך את שיתוף הנתונים לציבורי, פועלים לפי השלבים הבאים:

  1. כדי לאפשר למשתמש allAuthenticatedUsers לצפות בכרטיסי מוצר, צריך להקצות לו את התפקיד 'צפייה ב-Analytics Hub' (roles/analyticshub.viewer) ברמת חילופי הנתונים.

  2. כדי לאפשר ל-allAuthenticatedUsers להירשם לכרטיסי מוצר, צריך להקצות לו את התפקיד 'מנוי ל-Analytics Hub' (roles/analyticshub.subscriber) ברמת חילופי הנתונים.

  3. מפעילים את האפשרות 'גילוי על ידי הציבור' כשיוצרים או מעדכנים חילופי נתונים. כשמגדירים שיתוף נתונים כציבורי, צריך לציין את ההרשאות המתאימות.

מחיקת חילופי נתונים

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

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

כדי למחוק שיתוף נתונים:

המסוף

  1. עוברים לדף שיתוף (מרכז Analytics).

    מעבר אל 'שיתוף' (Analytics Hub)

  2. ברשימת חילופי הנתונים, בוחרים את חילוף הנתונים שרוצים למחוק.

  3. עוברים לכרטיסייה פרטים.

  4. לוחצים על מחיקת החלפה.

  5. בתיבת הדו-שיח למחוק את ההחלפה?, מקלידים מחיקה כדי לאשר את המחיקה.

  6. לוחצים על Delete.

API

משתמשים בשיטה projects.locations.dataExchanges.delete.

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: המזהה של הפרויקט שבו רוצים ליצור את מרכז חילופי הנתונים.
  • LOCATION: המיקום של חילופי הנתונים. מידע נוסף על מיקומים שתומכים ב-BigQuery sharing זמין במאמר בנושא אזורים נתמכים.
  • DATAEXCHANGE_ID: המזהה של חילופי הנתונים.

מידע נוסף על המשימות שאפשר לבצע בבורסות נתונים באמצעות ממשקי API זמין במאמר שיטות של projects.locations.dataExchanges.

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