יצירת מוצרי נתונים

המסמך הזה מיועד לבעלי מוצרי נתונים שרוצים ליצור ולהגדיר מוצרי נתונים ב-Knowledge Catalog (לשעבר Dataplex Universal Catalog).

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

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

לפני שיוצרים מוצרי נתונים, צריך להשלים את הדרישות המוקדמות הבאות.

הפעלה של Gemini

הגדרת Gemini בנכס הנתונים היא שלב אופציונלי, אבל מומלץ מאוד לבצע אותו לפני שיוצרים את מוצר הנתונים הראשון.

כברירת מחדל, כשיוצרים מוצר נתונים צריך להזין ידנית תיאורים של העסק, הגדרות טכניות ומסמכי הצטרפות לנכסים. כשמפעילים את השילוב עם Gemini, כלי Knowledge Catalog נעזר ב-AI כדי לנתח באופן אוטומטי את הסכימות ואת תוצאות הסריקה של הנתונים, וליצור את הפריטים הבאים:

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

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

מידע נוסף על הפעלת Gemini ב-BigQuery זמין במאמר הגדרת Gemini ב-BigQuery.

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

מפעילים את ממשקי ה-API של Dataplex ו-BigQuery.

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

כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאה serviceusage.services.enable. איך מקצים תפקידים

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

יצירת נכסי נתונים

מוודאים שנכסי הנתונים (לדוגמה, מערכי נתונים, טבלאות ותצוגות מפורטות של BigQuery) נוצרו ואוכלסו.

מידע נוסף על יצירת נכסי נתונים זמין במאמרים הבאים:

הגדרת זהויות

מאתרים או יוצרים את קבוצות Google או חשבונות השירות שרוצים להגדיר במוצר הנתונים.

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

בקטע הזה מפורטים תפקידי ה-IAM המינימליים שנדרשים עבור החלקים העיקריים הבאים:

  • בעלי מוצרי נתונים: משתמשים שיוצרים, מגדירים ומנהלים מוצרי נתונים ואת הנכסים המשויכים להם

  • צרכני מוצרי נתונים: משתמשים שמחפשים מוצרי נתונים שפורסמו, צופים בהם ומבקשים גישה אליהם

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

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

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

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

ההרשאות הנדרשות

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

  • ליצור מוצר נתונים: dataplex.dataProducts.create
  • הצגת רשימה של מוצרי נתונים בפרויקט: dataplex.dataProducts.list
  • קבלת מוצר נתונים או הצגה שלו: dataplex.dataProducts.get
  • כדי לערוך מוצר נתונים קיים: dataplex.dataProducts.update
  • מחיקת מוצר נתונים: dataplex.dataProducts.delete
  • אישור בקשת גישה למוצר נתונים: dataplex.dataProducts.approve
  • כדי לחפש מוצר נתונים באמצעות Knowledge Catalog:
    • dataplex.dataProducts.get
    • dataplex.projects.search
  • יצירת בקשת גישה למוצר נתונים: dataplex.dataProducts.get
  • יוצרים נכס נתונים: dataplex.dataAssets.create
  • הצגת רשימה של נכסי נתונים במוצר נתונים: dataplex.dataAssets.list
  • קבלת נכס נתונים: dataplex.dataAssets.get
  • כדי לערוך נכס נתונים קיים: dataplex.dataAssets.update
  • מחיקת נכס נתונים: dataplex.dataAssets.delete
  • יוצרים סריקת נתונים: dataplex.datascans.create
  • הצגת כל סריקות הנתונים: dataplex.datascans.list
  • קבלת סריקת נתונים: dataplex.datascans.get
  • מריצים סריקת נתונים: dataplex.datascans.run
  • עורכים את סוג היחס overview של המערכת: dataplex.entryGroups.useOverviewAspect
  • עורכים את סוג היחס refresh cadence של המערכת: dataplex.entryGroups.useRefreshCadenceAspect
  • עורכים את סוג היחס queries של המערכת: dataplex.entryGroups.useQueriesAspect

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

תפקידים נדרשים לצרכני מוצרי נתונים

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

  • חיפוש מוצרי נתונים ובקשת גישה אליהם: Dataplex Data Product Consumer (dataplex.dataProductsConsumer) ו-Dataplex Catalog Viewer (roles/dataplex.catalogViewer)
  • גישת קריאה בלבד להצגת הגדרות של מוצרי נתונים ומטא-נתונים: Dataplex Data Product Viewer (dataplex.dataProductsViewer)

יצירה והגדרה של מוצר נתונים

יצירת מוצר נתונים כוללת את המשימות הכלליות הבאות:

  1. יצירת מוצר נתונים

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

  2. אופציונלי: הוספת נכסים

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

    רשימת הנכסים הנתמכים זמינה במאמר נכסים נתמכים.

  3. אופציונלי: הגדרת קבוצות גישה והרשאות גישה לנכסים

    בשלב הזה, שהוא אופציונלי, יוצרים קבוצות גישה כדי לפשט את בקרת הגישה. קבוצות הגישה האלה פועלות ככינויים ידידותיים למשתמש (לדוגמה, Analyst או Reader) לקבוצות Google ולחשבונות שירות בסיסיים. לאחר מכן מקצים הרשאות על ידי בחירת תפקיד ספציפי ב-IAM ומיפוי שלו לקבוצת גישה של נכס ספציפי.

  4. אופציונלי: הוספת פרטים על החוזה וההיבטים

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

  5. אופציונלי: הוספת פרטים נוספים

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

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

יצירת מוצר נתונים

המסוף

  1. נכנסים לדף Data products בקטלוג הידע במסוף Google Cloud .

    מעבר אל 'מוצרי נתונים'

  2. לוחצים על יצירה.

  3. בחלונית Create data products, מזינים את הפרטים הבאים:

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

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

  4. לוחצים על יצירת מוצר נתונים.

Terraform

כדי ליצור מוצר נתונים, משתמשים במשאב google_dataplex_data_product.

resource "google_dataplex_data_product" "example_product" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
display_name    = "DISPLAY_NAME"
description     = "DESCRIPTION"
owner_emails    = ["EMAIL_IDs"]

provider = google-beta
}

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • LOCATION: האזור שבו רוצים ליצור את מוצר הנתונים
  • DATA_PRODUCT_ID: מזהה ייחודי של מוצר הנתונים
  • DISPLAY_NAME: שם ידידותי למשתמש למוצר הנתונים
  • DESCRIPTION: תיאור קצר של מוצר הנתונים
  • EMAIL_IDs: כתובות אימייל מופרדות בפסיקים של בעלי מוצר הנתונים, לדוגמה – ["user1@example.com", "user2@example.com"]

C#‎

C#

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי C#ההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using Google.LongRunning;

public sealed partial class GeneratedDataProductServiceClientSnippets
{
    /// <summary>Snippet for CreateDataProduct</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CreateDataProductRequestObject()
    {
        // Create client
        DataProductServiceClient dataProductServiceClient = DataProductServiceClient.Create();
        // Initialize request argument(s)
        CreateDataProductRequest request = new CreateDataProductRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            DataProductId = "",
            DataProduct = new DataProduct(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<DataProduct, OperationMetadata> response = dataProductServiceClient.CreateDataProduct(request);

        // Poll until the returned long-running operation is complete
        Operation<DataProduct, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        DataProduct result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<DataProduct, OperationMetadata> retrievedResponse = dataProductServiceClient.PollOnceCreateDataProduct(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            DataProduct retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataProductClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CreateDataProductRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateDataProductRequest.
	}
	op, err := c.CreateDataProduct(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.CreateDataProductRequest;
import com.google.cloud.dataplex.v1.DataProduct;
import com.google.cloud.dataplex.v1.DataProductServiceClient;
import com.google.cloud.dataplex.v1.LocationName;

public class SyncCreateDataProduct {

  public static void main(String[] args) throws Exception {
    syncCreateDataProduct();
  }

  public static void syncCreateDataProduct() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataProductServiceClient dataProductServiceClient = DataProductServiceClient.create()) {
      CreateDataProductRequest request =
          CreateDataProductRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setDataProductId("dataProductId1437828576")
              .setDataProduct(DataProduct.newBuilder().build())
              .setValidateOnly(true)
              .build();
      DataProduct response = dataProductServiceClient.createDataProductAsync(request).get();
    }
  }
}

Node.js

Node.js

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Node.jsההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The parent resource where this data product will be created.
 *  Format: projects/{project_id_or_number}/locations/{location_id}
 */
// const parent = 'abc123'
/**
 *  Optional. The ID of the data product to create.
 *  The ID must conform to RFC-1034 and contain only lower-case letters (a-z),
 *  numbers (0-9), or hyphens, with the first character a letter, the last a
 *  letter or a number, and a 63 character maximum. Characters outside of
 *  ASCII are not permitted.
 *  Valid format regex: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`
 *  If not provided, a system generated ID will be used.
 */
// const dataProductId = 'abc123'
/**
 *  Required. The data product to create.
 */
// const dataProduct = {}
/**
 *  Optional. Validates the request without actually creating the data product.
 *  Default: false.
 */
// const validateOnly = true

// Imports the Dataplex library
const {DataProductServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new DataProductServiceClient();

async function callCreateDataProduct() {
  // Construct request
  const request = {
    parent,
    dataProduct,
  };

  // Run request
  const [operation] = await dataplexClient.createDataProduct(request);
  const [response] = await operation.promise();
  console.log(response);
}

callCreateDataProduct();

Python

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_create_data_product():
    # Create a client
    client = dataplex_v1.DataProductServiceClient()

    # Initialize request argument(s)
    data_product = dataplex_v1.DataProduct()
    data_product.display_name = "display_name_value"
    data_product.owner_emails = ["owner_emails_value1", "owner_emails_value2"]

    request = dataplex_v1.CreateDataProductRequest(
        parent="parent_value",
        data_product=data_product,
    )

    # Make the request
    operation = client.create_data_product(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

כדי ליצור מוצר נתונים, משתמשים ב-method‏ dataProducts.create.

לדוגמה, שולחים את הבקשה הבאה POST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"display_name": "DISPLAY_NAME", "owner_emails": ["EMAIL_IDs"], "access_approval_config": { "approver_emails": ["APPROVER_EMAIL_IDs"]} }' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts?data_product_id=DATA_PRODUCT_ID

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

  • DISPLAY_NAME: שם ידידותי למשתמש למוצר הנתונים
  • EMAIL_IDs: כתובות האימייל של בעלי מוצר הנתונים, מופרדות בפסיקים
  • APPROVER_EMAIL_IDs: כתובות אימייל מופרדות בפסיקים של המאשרים הייעודיים שאחראים על אישור בקשות גישה או שינויים.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • LOCATION: האזור שבו רוצים ליצור את מוצר הנתונים
  • DATA_PRODUCT_ID: מזהה ייחודי של מוצר הנתונים

אופציונלי: הוספת נכסים

אתם יכולים להוסיף למוצר הנתונים נכסי נתונים שונים, כמו טבלאות, תצוגות, מערכי נתונים ומודלים של BigQuery. רשימת הנכסים הנתמכים זמינה במאמר נכסים נתמכים.

המסוף

  1. בחלונית הוספת נכסים, לוחצים על +הוספה.

  2. מחפשים את הנכסים שרוצים להוסיף למוצר הנתונים ובוחרים אותם. הנכסים שאתם בוחרים צריכים להיות באותו אזור כמו מוצר הנתונים.

    אם יש לכם את ההרשאות הדרושות, אתם יכולים ללחוץ על הנכס כדי לראות את המטא-נתונים שלו.

  3. כדי למקד את תוצאות החיפוש, משתמשים במסננים.

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

  5. לוחצים על Continue.

Terraform

כדי להוסיף נכס נתונים למוצר הנתונים, משתמשים במשאב google_dataplex_data_product_data_asset.

resource "google_dataplex_data_product_data_asset" "example_asset" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
data_asset_id   = "DATA_ASSET_ID"
resource        = "RESOURCE_NAME"

provider = google-beta
}

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • LOCATION: האזור שבו קיים מוצר הנתונים
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • DATA_ASSET_ID: מזהה ייחודי של נכס הנתונים הזה במוצר הנתונים
  • RESOURCE_NAME: שם המשאב המלא של נכס הנתונים (לדוגמה, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID)

C#‎

C#

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי C#ההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;

public sealed partial class GeneratedDataProductServiceClientSnippets
{
    /// <summary>Snippet for CreateDataAsset</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CreateDataAssetRequestObject()
    {
        // Create client
        DataProductServiceClient dataProductServiceClient = DataProductServiceClient.Create();
        // Initialize request argument(s)
        CreateDataAssetRequest request = new CreateDataAssetRequest
        {
            ParentAsDataProductName = DataProductName.FromProjectLocationDataProduct("[PROJECT]", "[LOCATION]", "[DATA_PRODUCT]"),
            DataAssetId = "",
            DataAsset = new DataAsset(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<DataAsset, OperationMetadata> response = dataProductServiceClient.CreateDataAsset(request);

        // Poll until the returned long-running operation is complete
        Operation<DataAsset, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        DataAsset result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<DataAsset, OperationMetadata> retrievedResponse = dataProductServiceClient.PollOnceCreateDataAsset(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            DataAsset retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataProductClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CreateDataAssetRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateDataAssetRequest.
	}
	op, err := c.CreateDataAsset(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.CreateDataAssetRequest;
import com.google.cloud.dataplex.v1.DataAsset;
import com.google.cloud.dataplex.v1.DataProductName;
import com.google.cloud.dataplex.v1.DataProductServiceClient;

public class SyncCreateDataAsset {

  public static void main(String[] args) throws Exception {
    syncCreateDataAsset();
  }

  public static void syncCreateDataAsset() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataProductServiceClient dataProductServiceClient = DataProductServiceClient.create()) {
      CreateDataAssetRequest request =
          CreateDataAssetRequest.newBuilder()
              .setParent(DataProductName.of("[PROJECT]", "[LOCATION]", "[DATA_PRODUCT]").toString())
              .setDataAssetId("dataAssetId2108984609")
              .setDataAsset(DataAsset.newBuilder().build())
              .setValidateOnly(true)
              .build();
      DataAsset response = dataProductServiceClient.createDataAssetAsync(request).get();
    }
  }
}

Node.js

Node.js

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Node.jsההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The parent resource where this data asset will be created.
 *  Format:
 *  projects/{project_id_or_number}/locations/{location_id}/dataProducts/{data_product_id}
 */
// const parent = 'abc123'
/**
 *  Optional. The ID of the data asset to create.
 *  The ID must conform to RFC-1034 and contain only lower-case letters (a-z),
 *  numbers (0-9), or hyphens, with the first character a letter, the last a
 *  letter or a number, and a 63 character maximum. Characters outside of
 *  ASCII are not permitted.
 *  Valid format regex: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`
 *  If not provided, a system generated ID will be used.
 */
// const dataAssetId = 'abc123'
/**
 *  Required. The data asset to create.
 */
// const dataAsset = {}
/**
 *  Optional. Validates the request without actually creating the data asset.
 *  Defaults to false.
 */
// const validateOnly = true

// Imports the Dataplex library
const {DataProductServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new DataProductServiceClient();

async function callCreateDataAsset() {
  // Construct request
  const request = {
    parent,
    dataAsset,
  };

  // Run request
  const [operation] = await dataplexClient.createDataAsset(request);
  const [response] = await operation.promise();
  console.log(response);
}

callCreateDataAsset();

Python

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_create_data_asset():
    # Create a client
    client = dataplex_v1.DataProductServiceClient()

    # Initialize request argument(s)
    data_asset = dataplex_v1.DataAsset()
    data_asset.resource = "resource_value"

    request = dataplex_v1.CreateDataAssetRequest(
        parent="parent_value",
        data_asset=data_asset,
    )

    # Make the request
    operation = client.create_data_asset(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

כדי להוסיף נכס נתונים למוצר הנתונים, משתמשים בשיטה dataAssets.create.

לדוגמה, שולחים את הבקשה הבאה POST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"resource": "RESOURCE_NAME"}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets?data_asset_id=DATA_ASSET_ID

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

  • RESOURCE_NAME: שם המשאב המלא של נכס הנתונים (לדוגמה, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID)
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • LOCATION: האזור שבו קיים מוצר הנתונים
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • DATA_ASSET_ID: מזהה ייחודי של נכס הנתונים הזה במוצר הנתונים

אופציונלי: הגדרת קבוצות גישה והרשאות לנכסים

בחלונית Configure access groups and asset permissions (הגדרת קבוצות גישה והרשאות לנכסים), אפשר ליצור קבוצות גישה ולהקצות הרשאות לנכסים.

הגדרת קבוצות גישה

המסוף

  1. לוחצים על הוספת קבוצת גישה.

  2. בשדה שם קבוצת הגישה, מזינים שם לקבוצת הגישה. לדוגמה, Analyst.

  3. בשדה תיאור קבוצת הגישה, מזינים תיאור לקבוצת הגישה.

  4. בשדה מזהה קבוצת הגישה, מזינים את כתובת האימייל של קבוצת Google שרוצים להקצות לקבוצת הגישה הזו.

    משתמשים במוצר נתונים שמבקשים גישה לעצמם מתווספים כחברים לקבוצת Google הממופה.

    מידע נוסף על יצירת קבוצות Google מופיע במאמר בנושא יצירה וניהול של קבוצות Google במסוף Google Cloud .

  5. בשדה Access group service account, מזינים את כתובת האימייל של חשבון השירות שרוצים להקצות לקבוצת הגישה הזו.

    לצרכני מוצרי נתונים שמבקשים גישה לחשבונות השירות שלהם מוקצה תפקיד ה-IAM ‏Service Account Token Creator (roles/iam.serviceAccountTokenCreator) כדי להתחזות לחשבון השירות של יצרן הנתונים שממופה לקבוצת הגישה.

    מידע נוסף על יצירת חשבונות שירות זמין במאמר יצירת חשבונות שירות.

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

  7. כדי להוסיף עוד קבוצת גישה, לוחצים על הוספת קבוצת גישה וחוזרים על השלבים.

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

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

Terraform

כדי להגדיר קבוצות גישה למוצר הנתונים, משתמשים בבלוק access_groups nested בתוך המשאב google_dataplex_data_product.

לדוגמה, אפשר להשתמש בהגדרה הבאה:

resource "google_dataplex_data_product" "example_data_product" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
display_name    = "DISPLAY_NAME"
owner_emails    = ["EMAIL_IDs"]

access_groups {
  id           = "analyst" # Internal identifier for configuration
  group_id     = "analyst" # Unique identifier of the access group, should be same as the 'id'
  display_name = "Business Analyst"
  description  = "Access group for regional analysts"
  principal {
    google_group = "analyst-team@example.com"
  }

provider = google-beta
}

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • LOCATION: האזור שבו קיים מוצר הנתונים
  • DATA_PRODUCT_ID: מזהה ייחודי של מוצר הנתונים
  • DISPLAY_NAME: שם ידידותי למשתמש למוצר הנתונים
  • EMAIL_IDs: כתובות אימייל מופרדות בפסיקים של בעלי מוצר הנתונים, לדוגמה – ["user1@example.com", "user2@example.com"]

C#‎

C#

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי C#ההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public sealed partial class GeneratedDataProductServiceClientSnippets
{
    /// <summary>Snippet for UpdateDataProduct</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void UpdateDataProductRequestObject()
    {
        // Create client
        DataProductServiceClient dataProductServiceClient = DataProductServiceClient.Create();
        // Initialize request argument(s)
        UpdateDataProductRequest request = new UpdateDataProductRequest
        {
            DataProduct = new DataProduct(),
            UpdateMask = new FieldMask(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<DataProduct, OperationMetadata> response = dataProductServiceClient.UpdateDataProduct(request);

        // Poll until the returned long-running operation is complete
        Operation<DataProduct, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        DataProduct result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<DataProduct, OperationMetadata> retrievedResponse = dataProductServiceClient.PollOnceUpdateDataProduct(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            DataProduct retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataProductClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.UpdateDataProductRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#UpdateDataProductRequest.
	}
	op, err := c.UpdateDataProduct(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataProduct;
import com.google.cloud.dataplex.v1.DataProductServiceClient;
import com.google.cloud.dataplex.v1.UpdateDataProductRequest;
import com.google.protobuf.FieldMask;

public class SyncUpdateDataProduct {

  public static void main(String[] args) throws Exception {
    syncUpdateDataProduct();
  }

  public static void syncUpdateDataProduct() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataProductServiceClient dataProductServiceClient = DataProductServiceClient.create()) {
      UpdateDataProductRequest request =
          UpdateDataProductRequest.newBuilder()
              .setDataProduct(DataProduct.newBuilder().build())
              .setUpdateMask(FieldMask.newBuilder().build())
              .setValidateOnly(true)
              .build();
      DataProduct response = dataProductServiceClient.updateDataProductAsync(request).get();
    }
  }
}

Node.js

Node.js

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Node.jsההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The data product to update.
 *  The data product's `name` field is used to identify the data product to
 *  update.
 */
// const dataProduct = {}
/**
 *  Optional. The list of fields to update.
 *  If this is empty or not set, then all the fields will be updated.
 */
// const updateMask = {}
/**
 *  Optional. Validates the request without actually updating the data product.
 *  Default: false.
 */
// const validateOnly = true

// Imports the Dataplex library
const {DataProductServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new DataProductServiceClient();

async function callUpdateDataProduct() {
  // Construct request
  const request = {
    dataProduct,
  };

  // Run request
  const [operation] = await dataplexClient.updateDataProduct(request);
  const [response] = await operation.promise();
  console.log(response);
}

callUpdateDataProduct();

Python

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_update_data_product():
    # Create a client
    client = dataplex_v1.DataProductServiceClient()

    # Initialize request argument(s)
    data_product = dataplex_v1.DataProduct()
    data_product.display_name = "display_name_value"
    data_product.owner_emails = ["owner_emails_value1", "owner_emails_value2"]

    request = dataplex_v1.UpdateDataProductRequest(
        data_product=data_product,
    )

    # Make the request
    operation = client.update_data_product(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

כדי להגדיר קבוצת גישה למוצר הנתונים, משתמשים בשיטה dataProducts.patch.

לדוגמה, שולחים את הבקשה הבאה PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"access_groups": ACCESS_GROUPS_MAP}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID?update_mask="access_groups"

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

  • ACCESS_GROUPS_MAP: אובייקט JSON שמייצג מפה שבה כל מפתח הוא מזהה של קבוצת גישה, והערך הוא אובייקט AccessGroup. לדוגמה:

    {
    "analyst": {
      "id": "analyst",
      "display_name": "Analyst access group",
      "description": "Access group for analysts",
      "principal":
        {
          "google_group": "analyst-team@example.com",
          "service_account": "analyst-svc@gserviceaccount.com"
        }
    }
    
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud

  • LOCATION: האזור שבו קיים מוצר הנתונים

  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים

הגדרת הרשאות גישה לנכסים

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

המסוף

  1. בקטע הרשאות לנכס, בוחרים את הנכס שרוצים להגדיר לו הרשאות. אפשר לבחור עד 10 נכסים בכל פעם ולהגדיר להם הרשאות.

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

  3. בשדה בחירת קבוצת גישה, בוחרים קבוצת גישה.

  4. בשדה Assign IAM role, בוחרים את תפקיד ה-IAM שרוצים להקצות לקבוצת הגישה.

    לדוגמה, אם הנכס הוא טבלה ב-BigQuery בשם Sales, ואם בחרתם בקבוצת הגישה Analyst והקציתם לה את התפקיד BigQuery Metadata Viewer, לצרכני מוצר הנתונים שחברים בקבוצת הגישה Analyst תהיה הרשאת BigQuery Metadata Viewer בטבלה Sales.

    אפשר להוסיף כמה תפקידים לנכס.

  5. לוחצים על Configure (הגדרה). עכשיו מוצגות ההרשאות שהוקצו לנכס.

  6. כדי להגדיר הרשאות לנכסים אחרים, חוזרים על השלבים.

  7. לוחצים על Continue.

Terraform

מקצים תפקידי IAM לקבוצות הגישה שלכם לנכסים ספציפיים באמצעות הבלוק access_group_configs במשאב google_dataplex_data_product_data_asset.

לדוגמה, אפשר להשתמש בהגדרה הבאה:

resource "google_dataplex_data_product_data_asset" "example_data_asset" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
data_asset_id   = "DATA_ASSET_ID"
resource        = "RESOURCE_NAME"

access_group_configs {
  access_group = "analyst" # Must match the 'id' defined in google_dataplex_data_product
  iam_roles    = ["roles/bigquery.dataViewer"]
}

provider = google-beta
}

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • LOCATION: האזור שבו קיים מוצר הנתונים
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • DATA_ASSET_ID: מזהה ייחודי של נכס הנתונים הזה במוצר הנתונים
  • RESOURCE_NAME: שם המשאב המלא של נכס הנתונים (לדוגמה, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID)

C#‎

C#

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי C#ההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog C# API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public sealed partial class GeneratedDataProductServiceClientSnippets
{
    /// <summary>Snippet for UpdateDataAsset</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void UpdateDataAssetRequestObject()
    {
        // Create client
        DataProductServiceClient dataProductServiceClient = DataProductServiceClient.Create();
        // Initialize request argument(s)
        UpdateDataAssetRequest request = new UpdateDataAssetRequest
        {
            DataAsset = new DataAsset(),
            UpdateMask = new FieldMask(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<DataAsset, OperationMetadata> response = dataProductServiceClient.UpdateDataAsset(request);

        // Poll until the returned long-running operation is complete
        Operation<DataAsset, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        DataAsset result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<DataAsset, OperationMetadata> retrievedResponse = dataProductServiceClient.PollOnceUpdateDataAsset(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            DataAsset retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Go API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataProductClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.UpdateDataAssetRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#UpdateDataAssetRequest.
	}
	op, err := c.UpdateDataAsset(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Javaההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Java API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataAsset;
import com.google.cloud.dataplex.v1.DataProductServiceClient;
import com.google.cloud.dataplex.v1.UpdateDataAssetRequest;
import com.google.protobuf.FieldMask;

public class SyncUpdateDataAsset {

  public static void main(String[] args) throws Exception {
    syncUpdateDataAsset();
  }

  public static void syncUpdateDataAsset() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataProductServiceClient dataProductServiceClient = DataProductServiceClient.create()) {
      UpdateDataAssetRequest request =
          UpdateDataAssetRequest.newBuilder()
              .setDataAsset(DataAsset.newBuilder().build())
              .setUpdateMask(FieldMask.newBuilder().build())
              .setValidateOnly(true)
              .build();
      DataAsset response = dataProductServiceClient.updateDataAssetAsync(request).get();
    }
  }
}

Node.js

Node.js

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Node.jsההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Node.js API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

/**
 * This snippet has been automatically generated and should be regarded as a code template only.
 * It will require modifications to work.
 * It may require correct/in-range values for request initialization.
 * TODO(developer): Uncomment these variables before running the sample.
 */
/**
 *  Required. The data asset to update.
 *  The data asset's `name` field is used to identify the data asset to update.
 */
// const dataAsset = {}
/**
 *  Optional. The list of fields to update.
 *  If this is empty or not set, then all the fields will be updated.
 */
// const updateMask = {}
/**
 *  Optional. Validates the request without actually updating the data asset.
 *  Defaults to false.
 */
// const validateOnly = true

// Imports the Dataplex library
const {DataProductServiceClient} = require('@google-cloud/dataplex').v1;

// Instantiates a client
const dataplexClient = new DataProductServiceClient();

async function callUpdateDataAsset() {
  // Construct request
  const request = {
    dataAsset,
  };

  // Run request
  const [operation] = await dataplexClient.updateDataAsset(request);
  const [response] = await operation.promise();
  console.log(response);
}

callUpdateDataAsset();

Python

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonההוראות להגדרה במאמר מדריך למתחילים לעבודה עם Knowledge Catalog באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Knowledge Catalog Python API.

כדי לבצע אימות לקטלוג הידע, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_update_data_asset():
    # Create a client
    client = dataplex_v1.DataProductServiceClient()

    # Initialize request argument(s)
    data_asset = dataplex_v1.DataAsset()
    data_asset.resource = "resource_value"

    request = dataplex_v1.UpdateDataAssetRequest(
        data_asset=data_asset,
    )

    # Make the request
    operation = client.update_data_asset(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

REST

כדי להגדיר הרשאות לנכסים במוצר הנתונים, משתמשים ב-method ‏dataAssets.patch.

לדוגמה, שולחים את הבקשה הבאה PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"access_group_configs": ACCESS_GROUP_CONFIGS_MAP}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets/DATA_ASSET_ID?update_mask="access_group_configs"

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

  • ACCESS_GROUP_CONFIGS_MAP: אובייקט JSON שמייצג מפה שבה כל מפתח הוא מזהה של קבוצת גישה, והערך הוא אובייקט AccessGroupConfig. לדוגמה:

    {
    "analyst": {
      iam_roles: ["roles/bigquery.dataViewer"]
      }
    }
    
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud

  • LOCATION: האזור שבו קיים מוצר הנתונים

  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים

  • DATA_ASSET_ID: המזהה של הנכס שעבורו רוצים להגדיר הרשאות

אופציונלי: מוסיפים פרטים על החוזה וההיבט

אפשר להוסיף חוזים והיבטים למוצר נתונים.

הוספת חוזה

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

המסוף

  1. בחלונית הוספת פרטים של חוזה והיבט, לוחצים על הוספת חוזה.

  2. בשדה Select contract (בחירת חוזה), בוחרים באפשרות Refresh cadence.

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

  4. בשדה זמן הרענון, מזינים את הזמן המקסימלי שבו הנתונים מתעדכנים במקור שלהם ועד שהם זמינים לצרכן. לדוגמה, 23:00 PST.

  5. בשדה סף (בדקות), מזינים מגבלה מדידה בדקות של העיכוב המקובל במסירת הנתונים. לדוגמה, מזינים 30 כדי להגדיר סף של 30 דקות.

  6. אופציונלי: בשדה Cron schedule, מזינים ביטוי cron שמגדיר את לוח הזמנים ליצירה ולמסירה של נתונים בפורמט: MINUTE HOUR DAY_OF_MONTH MONTH DAY_OF_WEEK

    אלה הערכים הקבילים:

    • MINUTE: 0-59
    • HOUR: 0-23
    • DAY_OF_MONTH: 1-31
    • MONTH: 1-31 או JAN-DEC
    • DAY_OF_WEEK: 0-6 או SUN-SAT

    לדוגמה, 0 8 * * 1-5 פועל בשעה 8:00 בבוקר בימי חול (שני עד שישי).

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

REST

החוזים מוגדרים כמאפיינים במוצר הנתונים. כדי להוסיף Refresh Cadenceחוזה למוצר נתונים, משתמשים בשיטה entries.patch.

לדוגמה, שולחים את הבקשה הבאה PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "dataplex-types.global.refresh-cadence": {
      "aspectType": "projects/dataplex-types/locations/global/aspectTypes/refresh-cadence",
      "data": {
        "frequency": "REFRESH_FREQUENCY"
      }
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

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

  • REFRESH_FREQUENCY: לוח הזמנים המוסכם לעדכון או למסירת הנתונים, כדי להבטיח זרימה צפויה מהגורם שמפיק את הנתונים אל הגורם שצורכים אותם. לדוגמה: Weekly
  • PROJECT_ID: מזהה Google Cloud הפרויקט שבו מתבצעת הקריאה ל-API
  • LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שאליו מתקשרים (לדוגמה, us-central1)
  • DATA_PRODUCT_PROJECT_NUMBER: מספר הפרויקט שבו נמצא משאב מוצר הנתונים
  • DATA_PRODUCT_LOCATION: המיקום של משאב מוצר הנתונים
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים

Terraform

החוזים מוגדרים כמאפיינים במוצר הנתונים. כדי לנהל חוזה, צריך לנהל את הרשומה הבסיסית ב-Knowledge Catalog. מכיוון ש-Terraform לא מזהה באופן אוטומטי היבטים קיימים, אתם צריכים קודם לייבא את google_dataplex_entry.

כדי לייבא את הרשומה, משתמשים בפקודה הבאה:

terraform import google_dataplex_entry.data_product_metadata "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"

הגדרות של Terraform:

resource "google_dataplex_entry" "data_product_metadata" {
project        = "DATA_PRODUCT_PROJECT_NUMBER"
location       = "LOCATION"
entry_group_id = "@dataplex"
entry_id       = "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"
entry_type     = "projects/655216118709/locations/global/entryTypes/data-product"

aspects {
  aspect_key = "655216118709.global.refresh-cadence"
  aspect {
    data = jsonencode({
      frequency = "REFRESH_FREQUENCY"
    })
  }
}

provider = google-beta
}

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

  • DATA_PRODUCT_PROJECT_NUMBER: מספר הפרויקט שבו נמצא משאב מוצר הנתונים
  • LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שאליו מתקשרים (לדוגמה, us-central1)
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • REFRESH_FREQUENCY: לוח הזמנים המוסכם לעדכון או למסירת הנתונים, כדי להבטיח זרימה צפויה מהגורם שמפיק את הנתונים אל הגורם שצורכת אותם. לדוגמה: Weekly

מידע כללי על תהליך הייבוא זמין במאמרי העזרה בנושא ייבוא ב-Terraform.

הוספת היבטים

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

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

המסוף

  1. בחלונית הוספת פרטים של חוזה והיבט, לוחצים על + הוספת היבט.

  2. בשדה בחירת סוג היבט, מחפשים ובוחרים סוג היבט מהרשימה. לדוגמה, Geo context.

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

REST

כדי להוסיף היבטים למוצר נתונים, משתמשים בשיטה entries.patch.

לדוגמה, שולחים את הבקשה הבאה PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "ASPECT_PROJECT_ID.ASPECT_LOCATION.ASPECT_NAME": {
      "aspectType": "projects/ASPECT_PROJECT_ID/locations/ASPECT_LOCATION/aspectTypes/ASPECT_NAME",
      "data": {}
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

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

  • ASPECT_PROJECT_ID: המזהה של הפרויקט Google Cloudשבו נוצר ההיבט
  • ASPECT_LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שבו נוצר ההיבט (לדוגמה, us-central1)
  • ASPECT_NAME: שם ההיבט שרוצים לצרף למוצר הנתונים
  • PROJECT_ID: מזהה Google Cloud הפרויקט שבו מתבצעת הקריאה ל-API
  • LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שאליו מתקשרים (לדוגמה, us-central1)
  • DATA_PRODUCT_PROJECT_NUMBER: מספר הפרויקט שבו נמצא משאב מוצר הנתונים
  • DATA_PRODUCT_LOCATION: המיקום של משאב מוצר הנתונים
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים

Terraform

כדי לנהל את ההיבטים, צריך לנהל את הרשומה הבסיסית ב-Knowledge Catalog. מכיוון ש-Terraform לא מגלה באופן אוטומטי היבטים קיימים, צריך קודם לייבא את google_dataplex_entry.

כדי לייבא את הרשומה, משתמשים בפקודה הבאה:

terraform import google_dataplex_entry.data_product_metadata "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"

הגדרות של Terraform:

resource "google_dataplex_entry" "data_product_metadata" {
project        = "DATA_PRODUCT_PROJECT_NUMBER"
location       = "LOCATION"
entry_group_id = "@dataplex"
entry_id       = "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"
entry_type     = "projects/655216118709/locations/global/entryTypes/data-product"

aspects {
  aspect_key = "ASPECT_PROJECT_NUMBER.ASPECT_LOCATION.ASPECT_NAME"
  aspect {
    data = {}
  }
}

provider = google-beta
}

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

  • DATA_PRODUCT_PROJECT_NUMBER: מספר הפרויקט שבו נמצא משאב מוצר הנתונים
  • LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שאליו מתקשרים (לדוגמה, us-central1)
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • ASPECT_PROJECT_NUMBER: Google Cloud מספר הפרויקט שבו נוצר ההיבט
  • ASPECT_LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שבו נוצר ההיבט (לדוגמה, us-central1)
  • ASPECT_NAME: שם ההיבט שרוצים לצרף למוצר הנתונים

מידע כללי על תהליך הייבוא זמין במאמרי העזרה בנושא ייבוא ב-Terraform.

אופציונלי: הוספת פרטים נוספים

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

אפשר ליצור את התיעוד הזה באופן ידני או להשתמש בתובנות לגבי נתונים ב-Knowledge Catalog כדי ליצור אותו באופן אוטומטי.

הוספה ידנית של תיעוד ושאילתות לדוגמה

המסוף

כדי להוסיף תיעוד למוצר הנתונים:

  1. בחלונית Add additional details (הוספת פרטים נוספים), לוחצים על Edit (עריכה) לצד Documentation (תיעוד).

  2. מקלידים את התוכן בכלי Rich Text Editor.

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

כדי להוסיף שאילתות לדוגמה למוצר הנתונים:

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

  2. מקלידים את השאילתות לדוגמה.

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

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

REST

התיעוד מוגדר כהיבטים במוצר הנתונים. כדי להוסיף תיעוד, משתמשים בשיטה entries.patch.

לדוגמה, שולחים את הבקשה הבאה PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "dataplex-types.global.overview": {
      "aspectType": "projects/dataplex-types/locations/global/aspectTypes/overview",
      "data": {
        "content": "DOCUMENTATION"
      }
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

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

  • PROJECT_ID: מזהה Google Cloud הפרויקט שבו מתבצעת הקריאה ל-API
  • LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שאליו מתקשרים (לדוגמה, us-central1)
  • DATA_PRODUCT_PROJECT_NUMBER: מספר הפרויקט שבו נמצא משאב מוצר הנתונים
  • DATA_PRODUCT_LOCATION: המיקום של משאב מוצר הנתונים
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • DOCUMENTATION: התוכן שרוצים לצרף למוצר הנתונים

Terraform

התיעוד מוגדר כהיבטים במוצר הנתונים. כדי לנהל את התיעוד, צריך לנהל את הרשומה הבסיסית ב-Knowledge Catalog. מכיוון ש-Terraform לא מזהה באופן אוטומטי היבטים קיימים, אתם צריכים קודם לייבא את google_dataplex_entry.

כדי לייבא את הרשומה, משתמשים בפקודה הבאה:

terraform import google_dataplex_entry.data_product_metadata "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"

הגדרות של Terraform:

resource "google_dataplex_entry" "data_product_metadata" {
project        = "DATA_PRODUCT_PROJECT_NUMBER"
location       = "LOCATION"
entry_group_id = "@dataplex"
entry_id       = "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"
entry_type     = "projects/655216118709/locations/global/entryTypes/data-product"

aspects {
  aspect_key = "655216118709.global.overview"
  aspect {
    data = jsonencode({
      content = "DOCUMENTATION"
    })
  }
}

provider = google-beta
}

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

  • DATA_PRODUCT_PROJECT_NUMBER: מספר הפרויקט שבו נמצא משאב מוצר הנתונים
  • LOCATION: האזור של נקודת הקצה של שירות Knowledge Catalog שאליו מתקשרים (לדוגמה, us-central1)
  • DATA_PRODUCT_ID: המזהה של מוצר הנתונים
  • DOCUMENTATION: התוכן שרוצים לצרף למוצר הנתונים

מידע כללי על תהליך הייבוא זמין במאמרי העזרה בנושא ייבוא ב-Terraform.

יצירת תיעוד אוטומטי ושאילתות לדוגמה באמצעות תובנות לגבי נתונים

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

  1. מפעילים את Gemini for Google Cloud API בפרויקט שבו יוצרים את מוצר הנתונים.

  2. הקצאת תפקידי משתמש ספציפיים לתובנות: בקשו מהאדמין להקצות לזהות שלכם את התפקידים וההרשאות הבאים בפרויקט של מוצר הנתונים:

    • יצירה וניהול של תובנות לגבי נתונים: Dataplex DataScan Editor‏ (roles/dataplex.dataScanEditor) או Dataplex DataScan Administrator‏ (roles/dataplex.dataScanAdmin) בפרויקט שבו נמצא מוצר הנתונים
    • הצגת תובנות שנוצרו: Dataplex DataScan DataViewer‏ (roles/dataplex.dataScanDataViewer) בפרויקט שבו נמצא מוצר הנתונים
  3. הגדרת הרשאות לסוכן שירות בין פרויקטים. אם נכסי הנתונים הבסיסיים נמצאים בפרויקט שונה מהפרויקט של מוצר הנתונים, צריך להעניק לסוכן השירות של Knowledge Catalog ‏ (P4SA) גישה לנכסים האלה: Google Cloud

    1. כדי ליצור או לאחזר את מזהה סוכן השירות של פרויקט מוצר הנתונים, מריצים את הפקודה הבאה ב-Google Cloud CLI:

      gcloud beta services identity create --service=dataplex.googleapis.com --project=DATA_PRODUCT_PROJECT_ID
      

      מחליפים את DATA_PRODUCT_PROJECT_ID במזהה הפרויקט ב-Google Cloud שבו נמצא מוצר הנתונים.

    2. בכל פרויקט חיצוני שבו נמצאים הנכסים שלכם, מקצים לסוכן השירות של פרויקט מוצר הנתונים את התפקידים הבאים:

      • עריכה של נתוני BigQuery‏ (roles/bigquery.dataEditor) בטבלאות ובמערכי הנתונים הבסיסיים

      • אדמין של BigQuery Studio‏ (roles/bigquery.studioAdmin) בפרויקט של נכס

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

  1. בחלונית הוספת פרטים נוספים, בסרגל יצירת תובנות באמצעות Gemini, לוחצים על יצירה.

    ממתינים כמה דקות עד שתהליך יצירת התובנות יסתיים.

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

  3. הערכת התוכן שנוצר:

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

    • אם התוכן לא עומד בציפיות, לוחצים על ביטול.

  4. לוחצים על שמירה כדי לסיים.

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