可取得項目

擷取現有項目。

程式碼範例

Java

在試用這個範例之前,請先按照Java使用用戶端程式庫的 Dataplex 通用目錄快速入門」中的設定操作說明進行操作。詳情請參閱 Dataplex Universal Catalog Java API 參考說明文件

如要向 Dataplex Universal Catalog 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

import com.google.cloud.dataplex.v1.CatalogServiceClient;
import com.google.cloud.dataplex.v1.Entry;
import com.google.cloud.dataplex.v1.EntryName;
import com.google.cloud.dataplex.v1.EntryView;
import com.google.cloud.dataplex.v1.GetEntryRequest;
import java.io.IOException;

public class GetEntry {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "MY_PROJECT_ID";
    // Available locations: https://cloud.google.com/dataplex/docs/locations
    String location = "MY_LOCATION";
    String entryGroupId = "MY_ENTRY_GROUP_ID";
    String entryId = "MY_ENTRY_ID";

    Entry entry = getEntry(projectId, location, entryGroupId, entryId);
    System.out.println("Entry retrieved successfully: " + entry.getName());
    entry
        .getAspectsMap()
        .keySet()
        .forEach(aspectKey -> System.out.println("Retrieved aspect for entry: " + aspectKey));
  }

  // Method to retrieve Entry located in projectId, location, entryGroupId and with entryId
  // When Entry is created in Dataplex for example for BigQuery table,
  // access permissions might differ between Dataplex and source system.
  // "Get" method checks permissions in Dataplex.
  // Please also refer how to lookup an Entry, which checks permissions in source system.
  public static Entry getEntry(
      String projectId, String location, String entryGroupId, String entryId) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests.
    try (CatalogServiceClient client = CatalogServiceClient.create()) {
      GetEntryRequest getEntryRequest =
          GetEntryRequest.newBuilder()
              .setName(EntryName.of(projectId, location, entryGroupId, entryId).toString())
              // View determines which Aspects are returned with the Entry.
              // For all available options, see:
              // https://cloud.google.com/sdk/gcloud/reference/dataplex/entries/lookup#--view
              .setView(EntryView.FULL)
              // Following 2 lines will be ignored, because "View" is set to FULL.
              // Their purpose is to demonstrate how to filter the Aspects returned for Entry
              // when "View" is set to CUSTOM.
              .addAspectTypes("projects/dataplex-types/locations/global/aspectTypes/generic")
              .addPaths("my_path")
              .build();
      return client.getEntry(getEntryRequest);
    }
  }
}

Python

在試用這個範例之前,請先按照Python使用用戶端程式庫的 Dataplex 通用目錄快速入門」中的設定操作說明進行操作。詳情請參閱 Dataplex Universal Catalog Python API 參考說明文件

如要向 Dataplex Universal Catalog 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。

from google.cloud import dataplex_v1


def get_entry(
    project_id: str, location: str, entry_group_id: str, entry_id: str
) -> dataplex_v1.Entry:
    """Method to retrieve Entry located in project_id, location, entry_group_id and with entry_id

    When Entry is created in Dataplex for example for BigQuery table,
    access permissions might differ between Dataplex and source system.
    "Get" method checks permissions in Dataplex.
    Please also refer how to lookup an Entry, which checks permissions in source system.
    """

    # Initialize client that will be used to send requests across threads. This
    # client only needs to be created once, and can be reused for multiple requests.
    # After completing all of your requests, call the "__exit__()" method to safely
    # clean up any remaining background resources. Alternatively, use the client as
    # a context manager.
    with dataplex_v1.CatalogServiceClient() as client:
        # The resource name of the Entry
        name = f"projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}"
        get_entry_request = dataplex_v1.GetEntryRequest(
            name=name,
            # View determines which Aspects are returned with the Entry.
            # For all available options, see:
            # https://cloud.google.com/sdk/gcloud/reference/dataplex/entries/lookup#--view
            view=dataplex_v1.EntryView.FULL,
            # Following 2 lines will be ignored, because "View" is set to FULL.
            # Their purpose is to demonstrate how to filter the Aspects returned for Entry
            # when "View" is set to CUSTOM.
            aspect_types=[
                "projects/dataplex-types/locations/global/aspectTypes/generic"
            ],
            paths=["my_path"],
        )
        return client.get_entry(request=get_entry_request)


if __name__ == "__main__":
    # TODO(developer): Replace these variables before running the sample.
    project_id = "MY_PROJECT_ID"
    # Available locations: https://cloud.google.com/dataplex/docs/locations
    location = "MY_LOCATION"
    entry_group_id = "MY_ENTRY_GROUP_ID"
    entry_id = "MY_ENTRY_ID"

    entry = get_entry(project_id, location, entry_group_id, entry_id)
    print(f"Entry retrieved successfully: {entry.name}")
    for aspect_key in entry.aspects.keys():
        print(f"Retrieved aspect for entry: {aspect_key}")

後續步驟

如要搜尋及篩選其他 Google Cloud 產品的程式碼範例,請參閱Google Cloud 範例瀏覽器