ניהול רשומות והוספת מקורות בהתאמה אישית

במאמר הזה מוסבר איך להוסיף מידע על מקורות נתונים ייחודיים ומותאמים אישית אל Knowledge Catalog (לשעבר Dataplex Universal Catalog).

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

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

  • סוג הרשומה: משמש כתבנית או כסכימה. הוא מגדיר את שדות המטא-נתונים הנדרשים (כמו בעלי הנתונים, תדירות העדכון או ציון האיכות) לסוג מסוים של נכס נתונים.

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

תהליך השילוב

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

  1. יוצרים קבוצת רשומות (התיקייה).

  2. מגדירים סוג רשומה (התבנית או הסכימה).

  3. יוצרים את הרשומה המותאמת אישית (רשומת הנתונים) באמצעות התבנית בתיקייה.

דפים

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

קטגוריות של רשומות

  • רשומות מערכת: ב-Knowledge Catalog נוצרות רשומות עבור Google Cloud משאבים, כמו מערכי נתונים או טבלאות ב-BigQuery. הערכים שנוצרים ב-Knowledge Catalog נקראים ערכי מערכת. Knowledge Catalog מעדכן באופן אוטומטי את הרשומות במערכת באמצעות סנכרון רציף של מטא-נתונים מהמערכות הנתמכות Google Cloud .

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

  • רשומות בהתאמה אישית: רשומות שאפשר ליצור ולנהל עבור משאבים בהתאמה אישית נקראות רשומות בהתאמה אישית. משאבים בהתאמה אישית הם משאבים בשירותים שלא שייכים ל-Google, שמתארחים ב- Google Cloud או חיצונית (למשל, בשרתים מקומיים).

קבוצות של רשומות

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

קטגוריות של קבוצות ערכים

  • קבוצות של רשומות שנוצרו על ידי המערכת: עבור Google Cloud משאבים, Knowledge Catalog יוצר באופן אוטומטי קבוצות של רשומות לכל מערכת בכל פרויקט ובכל מיקום שבו המשאבים נמצאים. לדוגמה, @bigquery היא קבוצת רשומות המערכת של BigQuery.

  • קבוצות כניסה בהתאמה אישית: קבוצות כניסה שיוצרים עבור משאבים בהתאמה אישית.

סוגי רשומות

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

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

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

קטגוריות של סוגי רשומות

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

  • סוגי רשומות במערכת: Knowledge Catalog מספק את סוגי הרשומות האלה כברירת מחדל: סוגי הרשומות במערכת מסווגים גם כסוגים שאפשר לעשות בהם שימוש חוזר וכסוגים מוגבלים.

    בטבלה הבאה מתוארות הקטגוריות של סוגי הרשומות במערכת, ורשימת סוגי הרשומות ש-Knowledge Catalog מספק לכל אחת מהקטגוריות:

    קטגוריה של סוג רשומה במערכת תיאור סוגי הרשומות שמופיעים ב-Knowledge Catalog
    סוג רשומה של מערכת לשימוש חוזר אתם יכולים להשתמש בסוג הרשומה הזה כדי ליצור רשומות מותאמות אישית.
    • generic
    סוג רשומה של מערכת מוגבלת הם שמורים לשימוש המערכת, למשל ליצירת רשומות של משאביGoogle Cloud .

    אי אפשר להשתמש בסוגי הרשומות האלה כדי ליצור רשומות, אבל אפשר לערוך רשומות מסוגים כאלה כדי להוסיף היבטים אופציונליים.
    כולל, בין היתר:
    • analytics-hub-exchange
    • analytics-hub-listing
    • aspecttype
    • bigquery-dataset
    • bigquery-table
    • cloudsql-database
    • cloudsql-instance
    • cloudsql-table
    • entrygroup
    • entrytype
    • sql-access
    • storage
    • storage-bucket
    • storage-folder

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

סוגי רשומות של מערכת הם תמיד גלובליים. סוגי הרשומות של המערכת מאוחסנים בפרויקט בניהול Google עם מזהה הפרויקט 655216118709. לדוגמה, projects/655216118709/locations/global/entryTypes/bigquery-table.

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

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

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

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

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

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

מידע נוסף זמין במאמר תפקידי IAM ב-Knowledge Catalog.

הפעלת ה-API

מפעילים את Dataplex API בפרויקט Knowledge Catalog. אם אתם משתמשים בפרויקט חדש Google Cloud או בפרויקט שבו BigQuery API מופעל, Dataplex API מופעל כברירת מחדל.

הפעלה של ה-API

יצירת קבוצת רשומות

המסוף

  1. במסוף Google Cloud , עוברים לדף Metadata types ב-Knowledge Catalog.

    מעבר אל סוגי מטא-נתונים

  2. לוחצים על הכרטיסייה קבוצות של רשומות > מותאם אישית.

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

  4. בחלון Create entry group, מזינים את הפרטים הבאים:

    1. אופציונלי: בשדה השם המוצג, מזינים שם מוצג לקבוצת הרשומות.
    2. מזהה קבוצת רשומות: מזינים מזהה ייחודי לקבוצת הרשומות.
    3. אופציונלי: בשדה Description, מזינים תיאור לקבוצת הרשומות.
    4. מיקום: בוחרים מיקום. אי אפשר לשנות את המיקום אחרי שיוצרים את קבוצת הרשומות.
  5. אופציונלי: בקטע Labels (תוויות), מוסיפים למשאבים תוויות שרירותיות בתור צמדי מפתח/ערך:

    1. לוחצים על הוספת תווית.
    2. בשדה מפתח, מזינים מפתח.
    3. בשדה ערך, מזינים ערך למפתח.
    4. כדי להוסיף עוד תוויות, לוחצים על הוספת תווית וחוזרים על השלבים.
  6. לוחצים על Save.

gcloud

כדי ליצור קבוצת רשומות, משתמשים בפקודה gcloud dataplex entry-groups create.

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 GeneratedCatalogServiceClientSnippets
{
    /// <summary>Snippet for CreateEntryGroup</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 CreateEntryGroupRequestObject()
    {
        // Create client
        CatalogServiceClient catalogServiceClient = CatalogServiceClient.Create();
        // Initialize request argument(s)
        CreateEntryGroupRequest request = new CreateEntryGroupRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            EntryGroupId = "",
            EntryGroup = new EntryGroup(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<EntryGroup, OperationMetadata> response = catalogServiceClient.CreateEntryGroup(request);

        // Poll until the returned long-running operation is complete
        Operation<EntryGroup, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        EntryGroup 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<EntryGroup, OperationMetadata> retrievedResponse = catalogServiceClient.PollOnceCreateEntryGroup(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            EntryGroup 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.NewCatalogClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CreateEntryGroupRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateEntryGroupRequest.
	}
	op, err := c.CreateEntryGroup(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.CatalogServiceClient;
import com.google.cloud.dataplex.v1.CreateEntryGroupRequest;
import com.google.cloud.dataplex.v1.EntryGroup;
import com.google.cloud.dataplex.v1.LocationName;

public class SyncCreateEntryGroup {

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

  public static void syncCreateEntryGroup() 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 (CatalogServiceClient catalogServiceClient = CatalogServiceClient.create()) {
      CreateEntryGroupRequest request =
          CreateEntryGroupRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setEntryGroupId("entryGroupId1228924712")
              .setEntryGroup(EntryGroup.newBuilder().build())
              .setValidateOnly(true)
              .build();
      EntryGroup response = catalogServiceClient.createEntryGroupAsync(request).get();
    }
  }
}

Node.js

Node.js

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

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

// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ** This file is automatically generated by gapic-generator-typescript. **
// ** https://github.com/googleapis/gapic-generator-typescript **
// ** All changes to this file may be overwritten. **



'use strict';

function main(parent, entryGroupId, entryGroup) {
  /**
   * 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 resource name of the entryGroup, of the form:
   *  projects/{project_number}/locations/{location_id}
   *  where `location_id` refers to a Google Cloud region.
   */
  // const parent = 'abc123'
  /**
   *  Required. EntryGroup identifier.
   */
  // const entryGroupId = 'abc123'
  /**
   *  Required. EntryGroup Resource.
   */
  // const entryGroup = {}
  /**
   *  Optional. The service validates the request without performing any
   *  mutations. The default is false.
   */
  // const validateOnly = true

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

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

  async function callCreateEntryGroup() {
    // Construct request
    const request = {
      parent,
      entryGroupId,
      entryGroup,
    };

    // Run request
    const [operation] = await dataplexClient.createEntryGroup(request);
    const [response] = await operation.