データをプロファイリングする

このドキュメントでは、データ プロファイル スキャンを使用してデータをより深く理解する方法について説明します。BigQuery では、Dataplex Universal Catalog を使用して平均値、一意の値、最大値など、データの統計的特性を分析します。また、Dataplex Universal Catalog はこの情報を使用して、データ品質チェックのルールを推奨します。

データのプロファイリングの詳細については、データのプロファイリングについてをご覧ください。

始める前に

Enable the Dataplex API.

Roles required to enable APIs

To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

Enable the API

必要なロール

データ プロファイル スキャンの作成と管理に必要な権限を取得するには、プロジェクトやテーブルなどのリソースに対する次の IAM ロールを付与するよう管理者に依頼してください。

  • データ プロファイル スキャンの作成、実行、更新、削除を行うには: データ スキャンを含むプロジェクトに対する Dataplex DataScan 編集者roles/dataplex.dataScanEditor)ロール。
  • Dataplex Universal Catalog が BigQuery データに対してデータ プロファイル スキャンを実行できるようにするには、Dataplex Universal Catalog サービス アカウントに次のロールを付与します。スキャンを実行するプロジェクトに対する BigQuery ジョブユーザーroles/bigquery.jobUser)ロール、スキャン対象のテーブルに対する BigQuery データ閲覧者roles/bigquery.dataViewer)ロール。
  • Cloud Storage データを使用する BigQuery 外部テーブルのデータ プロファイル スキャンを実行するには、Dataplex Universal Catalog サービス アカウントに、Cloud Storage バケットに対するストレージ オブジェクト閲覧者roles/storage.objectViewer)ロールとストレージ レガシー バケット閲覧者roles/storage.legacyBucketReader)ロールを付与します。
  • データ プロファイル スキャンの結果、ジョブ、履歴を表示するには: データ スキャンを含むプロジェクトに対する Dataplex DataScan 閲覧者roles/dataplex.dataScanViewer)ロール。
  • データ プロファイル スキャン結果を BigQuery テーブルにエクスポートするには: テーブルに対する BigQuery データ編集者roles/bigquery.dataEditor)ロール。
  • データ プロファイル スキャン結果を Dataplex Universal Catalog に公開するには: @bigquery エントリ グループに対する Dataplex Catalog 編集者roles/dataplex.catalogEditor)ロール。
  • [データ プロファイル] タブで、公開されたデータ プロファイル スキャン結果を BigQuery で表示するには: テーブルに対する BigQuery データ閲覧者roles/bigquery.dataViewer)ロール。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

必要な権限

カスタムロールを使用する場合は、次の IAM 権限を付与する必要があります。

  • データ プロファイル スキャンを作成、実行、更新、削除する:
    • プロジェクトの dataplex.datascans.create - DataScan を作成する
    • データスキャンに対する dataplex.datascans.update - DataScan の説明を更新する
    • データスキャンに対する dataplex.datascans.delete - DataScan を削除する
    • データスキャンに対する dataplex.datascans.run - DataScan を実行する
    • データスキャンの dataplex.datascans.get - DataScan の詳細を表示する(結果を除く)
    • プロジェクトの dataplex.datascans.list - DataScan のリストを取得する
    • データスキャン ジョブに対する dataplex.dataScanJobs.get - DataScan ジョブ リソースを読み取る
    • データスキャンに対する dataplex.dataScanJobs.list - プロジェクト内の DataScan ジョブリソースを一覧表示する
  • Dataplex Universal Catalog が BigQuery データに対してデータ プロファイル スキャンを実行できるようにするには:
    • プロジェクトに対する bigquery.jobs.create - ジョブを実行する
    • テーブルに対する bigquery.tables.get - テーブルのメタデータを取得する
    • テーブルに対する bigquery.tables.getData - テーブルデータを取得する
  • Cloud Storage データを使用する BigQuery 外部テーブルのデータ プロファイル スキャンを実行するには:
    • バケットに対する storage.buckets.get - バケット メタデータを読み取る
    • オブジェクトに対する storage.objects.get - オブジェクト データを読み取る
  • データ プロファイルのスキャン結果、ジョブ、履歴を表示するには:
    • データスキャンの dataplex.datascans.getData - 結果を含む DataScan の詳細を表示する
    • プロジェクトの dataplex.datascans.list - DataScan のリストを取得する
    • データスキャン ジョブに対する dataplex.dataScanJobs.get - DataScan ジョブ リソースを読み取る
    • データスキャンに対する dataplex.dataScanJobs.list - プロジェクト内の DataScan ジョブリソースを一覧表示する
  • データ プロファイル スキャンの結果を BigQuery テーブルにエクスポートするには:
    • データセットに対する bigquery.tables.create - テーブルを作成する
    • テーブルに対する bigquery.tables.updateData - テーブルにデータを書き込む
  • データ プロファイル スキャンの結果を Dataplex Universal Catalog に公開するには:
    • エントリ グループに対する dataplex.entryGroups.useDataProfileAspect - Dataplex Universal Catalog データ プロファイル スキャンで、結果を Dataplex Universal Catalog に保存できるようにします
    • また、次のいずれかの権限が必要です。
      • テーブルに対する bigquery.tables.update - テーブルのメタデータを更新する
      • dataplex.entries.update(エントリ時) - エントリを更新
  • BigQuery または Dataplex Universal Catalog のテーブルで公開されたデータ プロファイルの結果を表示するには:
    • テーブルに対する bigquery.tables.get - テーブルのメタデータを取得する
    • テーブルに対する bigquery.tables.getData - テーブルデータを取得する

テーブルで BigQuery の行レベルのセキュリティが使用されている場合、Dataplex Universal Catalog は Dataplex Universal Catalog サービス アカウントに表示される行のみをスキャンできます。Dataplex Universal Catalog がすべての行をスキャンできるようにするには、述語が TRUE の行フィルタにサービス アカウントを追加します。

テーブルで BigQuery の列レベルのセキュリティが使用されている場合、Dataplex Universal Catalog は保護された列をスキャンするためのアクセス権を必要とします。アクセス権を付与するには、Dataplex Universal Catalog サービス アカウントに、テーブルで使用されているすべてのポリシータグに対する Data Catalog のきめ細かい読み取りroles/datacatalog.fineGrainedReader)ロールを付与します。データスキャンを作成または更新しているユーザーには、保護されている列に対する権限も必要です。

Dataplex Universal Catalog サービス アカウントにロールを付与する

データ プロファイル スキャンを実行するために、Dataplex Universal Catalog は、BigQuery ジョブの実行と BigQuery テーブルデータの読み取りに必要な権限を持つサービス アカウントを使用します。必要なロールを付与する手順は次のとおりです。

  1. Dataplex Universal Catalog サービス アカウントのメールアドレスを取得します。このプロジェクトでデータ プロファイル スキャンまたはデータ品質スキャンをまだ作成していない場合は、次の gcloud コマンドを実行してサービス ID を生成します。

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

    このコマンドは、service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com という形式のサービス アカウントのメールアドレスを返します。

    サービス アカウントがすでに存在する場合は、 Google Cloud コンソールの [IAM] ページDataplex という名前のプリンシパルを表示して、メールアドレスを確認できます。

  2. サービス アカウントに、プロジェクトに対する BigQuery ジョブユーザーroles/bigquery.jobUser)のロールを付与します。このロールにより、サービス アカウントでスキャンの BigQuery ジョブを実行できます。

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \
        --role="roles/bigquery.jobUser"
    

    次のように置き換えます。

    • PROJECT_ID: 実際の Google Cloud プロジェクト ID。
    • service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com: Dataplex Universal Catalog サービス アカウントのメールアドレス。
  3. プロファイリングする各テーブルに対して、サービス アカウントに BigQuery データ閲覧者roles/bigquery.dataViewer)ロールを付与します。このロールは、テーブルに対する読み取り専用アクセス権を付与します。

    gcloud bigquery tables add-iam-policy-binding DATASET_ID.TABLE_ID \
        --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \
        --role="roles/bigquery.dataViewer"
    

    次のように置き換えます。

    • DATASET_ID: テーブルを含むデータセットの ID。
    • TABLE_ID: プロファイリングするテーブルの ID。
    • service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com: Dataplex Universal Catalog サービス アカウントのメールアドレス。

      データ プロファイル スキャンを作成する

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. [データ プロファイル スキャンの作成] をクリックします。

      3. 省略可: 表示名を入力します。

      4. ID を入力します。リソースの命名規則をご覧ください。

      5. (省略可)説明を入力します。

      6. [テーブル] フィールドで、[参照] をクリックします。スキャンするテーブルを選択し、[選択] をクリックします。

        マルチリージョン データセット内のテーブルの場合は、データスキャンを作成するリージョンを選択します。

        Dataplex Universal Catalog レイク内で整理されたテーブルを参照するには、[Dataplex レイク内のブラウジング] をクリックします。

      7. [スコープ] フィールドで、[増分] または [データ全体] を選択します。

        • [増分データ] を選択した場合、[タイムスタンプ列] フィールドで、新しいレコードが追加されるたびに増加し、新しいレコードの識別に使用できる BigQuery テーブルから、DATE 型または TIMESTAMP 型の列を選択します。DATE 型または TIMESTAMP 型の列でパーティション分割されたテーブルでは、パーティション列をタイムスタンプ フィールドとして使用することをおすすめします。
      8. 省略可: データをフィルタするには、次のいずれかを行います。

        • 行でフィルタするには、[行のフィルタリング] チェックボックスをオンにします。GoogleSQL 構文の WHEREで使用できる有効な SQL 式を入力します。例: col1 >= 0

          フィルタには、複数の列に対する SQL 条件を組み合わせることができます。例: col1 >= 0 AND col2 < 10

        • 列でフィルタするには、[フィルタ列] チェックボックスをオンにします。

          • プロファイル スキャンに列を含めるには、[列を含める] フィールドで [参照] をクリックします。含める列を選択し、[選択] をクリックします。

          • プロファイル スキャンから列を除外するには、[列を除外する] フィールドで [参照] をクリックします。除外する列を選択し、[選択] をクリックします。

      9. データ プロファイル スキャンにサンプリングを適用するには、[サンプリング サイズ] リストでサンプリングの割合を選択します。0.0~100.0% の範囲のパーセンテージ値(小数点以下 3 桁まで)を選択します。

        • 大規模なデータセットの場合は、低いサンプリング率を選択します。たとえば、1 PB のテーブルの場合、0.1%~1.0% の値を入力すると、データ プロファイルは 1~10 TB のデータをサンプリングします。

        • 結果を返すには、サンプリング データにレコードが 100 個以上必要です。

        • 増分データスキャンの場合、データ プロファイル スキャンは最新の増分にサンプリングを適用します。

      10. 省略可:Google Cloud コンソールの BigQuery ページと Dataplex Universal Catalog ページでソーステーブルのデータ プロファイル スキャンの結果を公開します。[BigQuery と Dataplex Catalog に結果を公開する] チェックボックスをオンにします。

        最新のスキャン結果は、ソーステーブルの BigQuery ページと Dataplex Universal Catalog ページの [データ プロファイル] タブで表示できます。ユーザーが公開されたスキャン結果にアクセスできるようにするには、このドキュメントのデータ プロファイル スキャン結果へのアクセス権を付与するをご覧ください。

        次の場合には、公開オプションを使用できないことがあります。

        • テーブルに必要な権限がない。
        • 結果を公開するように別のデータ品質スキャンが設定されている。
      11. [スケジュール] セクションで、次のいずれかのオプションを選択します。

        • 繰り返し: データ プロファイル スキャンを 1 時間ごと、毎日、毎週、毎月、カスタムのいずれかのスケジュールで実行します。スキャンの実行頻度と時間を指定します。[カスタム] を選択した場合は、cron 形式を使用してスケジュールを指定します。

        • オンデマンド: データ プロファイル スキャンをオンデマンドで実行します。

      12. [続行] をクリックします。

      13. 省略可: スキャン結果を BigQuery 標準テーブルにエクスポートします。[スキャン結果を BigQuery テーブルにエクスポートする] セクションで、次の操作を行います。

        1. [BigQuery データセットの選択] フィールドで、[参照] をクリックします。 データ プロファイルのスキャン結果を保存する BigQuery データセットを選択します。

        2. [BigQuery テーブル] フィールドで、データ プロファイル スキャンの結果を保存するテーブルを指定します。既存のテーブルを使用している場合は、エクスポート テーブル スキーマと互換性があることを確認してください。指定したテーブルが存在しない場合は、Dataplex Universal Catalog によって作成されます。

      14. 省略可: ラベルを追加します。ラベルは、関連するオブジェクトをまとめてグループ化したり、他の Google Cloud リソースと組み合わせてグループ化できる Key-Value ペアです。

      15. スキャンを作成するには、[作成] をクリックします。

        スケジュールをオンデマンドに設定した場合は、[スキャンを実行] をクリックして、今すぐスキャンを実行することもできます。

      gcloud

      データ プロファイル スキャンを作成するには、gcloud dataplex datascans create data-profile コマンドを使用します。

      ソースデータが Dataplex Universal Catalog レイクに編成されている場合は、--data-source-entity フラグを指定します。

      gcloud dataplex datascans create data-profile DATASCAN \
      --location=LOCATION \
      --data-source-entity=DATA_SOURCE_ENTITY
      

      ソースデータが Dataplex Universal Catalog レイクに編成されていない場合は、--data-source-resource フラグを指定します。

      gcloud dataplex datascans create data-profile DATASCAN \
      --location=LOCATION \
      --data-source-resource=DATA_SOURCE_RESOURCE
      

      次の変数を置き換えます。

      • DATASCAN: データ プロファイル スキャンの名前。
      • LOCATION: データ プロファイル スキャンを作成する Google Cloud リージョン。
      • DATA_SOURCE_ENTITY: データ プロファイル スキャンのデータを含む Dataplex Universal Catalog エンティティ。例: projects/test-project/locations/test-location/lakes/test-lake/zones/test-zone/entities/test-entity
      • DATA_SOURCE_RESOURCE: データ プロファイル スキャンのデータを含むリソースの名前。例: //bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table

      C#

      C#

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある C# の設定手順を完了してください。詳細については、Dataplex Universal Catalog C# API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      using Google.Api.Gax.ResourceNames;
      using Google.Cloud.Dataplex.V1;
      using Google.LongRunning;
      
      public sealed partial class GeneratedDataScanServiceClientSnippets
      {
          /// <summary>Snippet for CreateDataScan</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 CreateDataScanRequestObject()
          {
              // Create client
              DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
              // Initialize request argument(s)
              CreateDataScanRequest request = new CreateDataScanRequest
              {
                  ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
                  DataScan = new DataScan(),
                  DataScanId = "",
                  ValidateOnly = false,
              };
              // Make the request
              Operation<DataScan, OperationMetadata> response = dataScanServiceClient.CreateDataScan(request);
      
              // Poll until the returned long-running operation is complete
              Operation<DataScan, OperationMetadata> completedResponse = response.PollUntilCompleted();
              // Retrieve the operation result
              DataScan 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<DataScan, OperationMetadata> retrievedResponse = dataScanServiceClient.PollOnceCreateDataScan(operationName);
              // Check if the retrieved long-running operation has completed
              if (retrievedResponse.IsCompleted)
              {
                  // If it has completed, then access the result
                  DataScan retrievedResult = retrievedResponse.Result;
              }
          }
      }

      Go

      Go

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Go の設定手順を完了してください。詳細については、Dataplex Universal Catalog Go API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      
      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.NewDataScanClient(ctx)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	defer c.Close()
      
      	req := &dataplexpb.CreateDataScanRequest{
      		// TODO: Fill request struct fields.
      		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateDataScanRequest.
      	}
      	op, err := c.CreateDataScan(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

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Java の設定手順を完了してください。詳細については、Dataplex Universal Catalog Java API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      import com.google.cloud.dataplex.v1.CreateDataScanRequest;
      import com.google.cloud.dataplex.v1.DataScan;
      import com.google.cloud.dataplex.v1.DataScanServiceClient;
      import com.google.cloud.dataplex.v1.LocationName;
      
      public class SyncCreateDataScan {
      
        public static void main(String[] args) throws Exception {
          syncCreateDataScan();
        }
      
        public static void syncCreateDataScan() 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 (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
            CreateDataScanRequest request =
                CreateDataScanRequest.newBuilder()
                    .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                    .setDataScan(DataScan.newBuilder().build())
                    .setDataScanId("dataScanId1260787906")
                    .setValidateOnly(true)
                    .build();
            DataScan response = dataScanServiceClient.createDataScanAsync(request).get();
          }
        }
      }

      Python

      Python

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Python の設定手順を完了してください。詳細については、Dataplex Universal Catalog Python API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      # 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_scan():
          # Create a client
          client = dataplex_v1.DataScanServiceClient()
      
          # Initialize request argument(s)
          data_scan = dataplex_v1.DataScan()
          data_scan.data_quality_spec.rules.dimension = "dimension_value"
          data_scan.data.entity = "entity_value"
      
          request = dataplex_v1.CreateDataScanRequest(
              parent="parent_value",
              data_scan=data_scan,
              data_scan_id="data_scan_id_value",
          )
      
          # Make the request
          operation = client.create_data_scan(request=request)
      
          print("Waiting for operation to complete...")
      
          response = operation.result()
      
          # Handle the response
          print(response)
      
      

      Ruby

      Ruby

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Ruby の設定手順を完了してください。詳細については、Dataplex Universal Catalog Ruby API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      require "google/cloud/dataplex/v1"
      
      ##
      # Snippet for the create_data_scan call in the DataScanService service
      #
      # 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/ruby/docs/reference.
      #
      # This is an auto-generated example demonstrating basic usage of
      # Google::Cloud::Dataplex::V1::DataScanService::Client#create_data_scan.
      #
      def create_data_scan
        # Create a client object. The client can be reused for multiple calls.
        client = Google::Cloud::Dataplex::V1::DataScanService::Client.new
      
        # Create a request. To set request fields, pass in keyword arguments.
        request = Google::Cloud::Dataplex::V1::CreateDataScanRequest.new
      
        # Call the create_data_scan method.
        result = client.create_data_scan request
      
        # The returned object is of type Gapic::Operation. You can use it to
        # check the status of an operation, cancel it, or wait for results.
        # Here is how to wait for a response.
        result.wait_until_done! timeout: 60
        if result.response?
          p result.response
        else
          puts "No response received."
        end
      end

      REST

      データ プロファイル スキャンを作成するには、dataScans.create メソッドを使用します。

      複数のデータ プロファイル スキャンを作成する

      Google Cloud コンソールを使用して、BigQuery データセット内の複数のテーブルのデータ プロファイル スキャンを同時に構成できます。

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. [データ プロファイル スキャンの作成] をクリックします。

      3. [複数のデータ プロファイル スキャン] オプションを選択します。

      4. ID 接頭辞を入力します。Dataplex Universal Catalog は、指定された接頭辞と一意の接尾辞を使用して、スキャン ID を自動的に生成します。

      5. すべてのデータ プロファイル スキャンの説明を入力します。

      6. [データセット] フィールドで [参照] をクリックします。テーブルを選択するデータセットを選択します。[選択] をクリックします。

      7. データセットがマルチリージョンの場合は、データ プロファイル スキャンを作成するリージョンを選択します。

      8. スキャンの共通設定を構成します。

        1. [スコープ] フィールドで、[増分] または [データ全体] を選択します。

        2. データ プロファイル スキャンにサンプリングを適用するには、[サンプリング サイズ] リストでサンプリングのパーセンテージを選択します。

          0.0%~100.0% の間のパーセンテージ値(小数点以下 3 桁まで)を選択します。

        3. 省略可:Google Cloud コンソールの BigQuery ページと Dataplex Universal Catalog ページでソーステーブルのデータ プロファイル スキャンの結果を公開します。[BigQuery と Dataplex Catalog に結果を公開する] チェックボックスをオンにします。

          最新のスキャン結果は、ソーステーブルの BigQuery ページと Dataplex Universal Catalog ページの [データ プロファイル] タブで表示できます。ユーザーが公開されたスキャン結果にアクセスできるようにするには、このドキュメントのデータ プロファイル スキャン結果へのアクセス権を付与するをご覧ください。

        4. [スケジュール] セクションで、次のいずれかのオプションを選択します。

          • 繰り返し: データ プロファイル スキャンを 1 時間ごと、毎日、毎週、毎月、カスタムのいずれかのスケジュールで実行します。スキャンの実行頻度と時間を指定します。[カスタム] を選択した場合は、cron 形式を使用してスケジュールを指定します。

          • オンデマンド: データ プロファイル スキャンをオンデマンドで実行します。

      9. [続行] をクリックします。

      10. [テーブルを選択] フィールドで、[参照] をクリックします。スキャンするテーブルを 1 つ以上選択し、[選択] をクリックします。

      11. [続行] をクリックします。

      12. 省略可: スキャン結果を BigQuery 標準テーブルにエクスポートします。[スキャン結果を BigQuery テーブルにエクスポートする] セクションで、次の操作を行います。

        1. [BigQuery データセットの選択] フィールドで、[参照] をクリックします。 データ プロファイルのスキャン結果を保存する BigQuery データセットを選択します。

        2. [BigQuery テーブル] フィールドで、データ プロファイル スキャンの結果を保存するテーブルを指定します。既存のテーブルを使用している場合は、エクスポート テーブル スキーマと互換性があることを確認してください。指定したテーブルが存在しない場合は、Dataplex Universal Catalog によって作成されます。

          Dataplex Universal Catalog は、すべてのデータ プロファイル スキャンに同じ結果テーブルを使用します。

      13. 省略可: ラベルを追加します。ラベルは、関連するオブジェクトをまとめてグループ化したり、他の Google Cloud リソースと組み合わせてグループ化できる Key-Value ペアです。

      14. スキャンを作成するには、[作成] をクリックします。

        スケジュールをオンデマンドに設定した場合は、[スキャンを実行] をクリックして、今すぐスキャンを実行することもできます。

      データ プロファイル スキャンを実行する

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. データ プロファイル スキャンをクリックして実行します。
      3. [今すぐ実行] をクリックします。

      gcloud

      データ プロファイル スキャンを実行するには、gcloud dataplex datascans run コマンドを使用します。

      gcloud dataplex datascans run DATASCAN \
      --location=LOCATION
      

      次の変数を置き換えます。

      • DATASCAN: データ プロファイル スキャンの名前。
      • LOCATION: データ プロファイル スキャンが作成された Google Cloud リージョン。

      C#

      C#

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある C# の設定手順を完了してください。詳細については、Dataplex Universal Catalog C# API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      using Google.Cloud.Dataplex.V1;
      
      public sealed partial class GeneratedDataScanServiceClientSnippets
      {
          /// <summary>Snippet for RunDataScan</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 RunDataScanRequestObject()
          {
              // Create client
              DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
              // Initialize request argument(s)
              RunDataScanRequest request = new RunDataScanRequest
              {
                  DataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
              };
              // Make the request
              RunDataScanResponse response = dataScanServiceClient.RunDataScan(request);
          }
      }

      Go

      Go

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Go の設定手順を完了してください。詳細については、Dataplex Universal Catalog Go API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      
      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.NewDataScanClient(ctx)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	defer c.Close()
      
      	req := &dataplexpb.RunDataScanRequest{
      		// TODO: Fill request struct fields.
      		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#RunDataScanRequest.
      	}
      	resp, err := c.RunDataScan(ctx, req)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	// TODO: Use resp.
      	_ = resp
      }
      

      Java

      Java

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Java の設定手順を完了してください。詳細については、Dataplex Universal Catalog Java API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      import com.google.cloud.dataplex.v1.DataScanName;
      import com.google.cloud.dataplex.v1.DataScanServiceClient;
      import com.google.cloud.dataplex.v1.RunDataScanRequest;
      import com.google.cloud.dataplex.v1.RunDataScanResponse;
      
      public class SyncRunDataScan {
      
        public static void main(String[] args) throws Exception {
          syncRunDataScan();
        }
      
        public static void syncRunDataScan() 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 (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
            RunDataScanRequest request =
                RunDataScanRequest.newBuilder()
                    .setName(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
                    .build();
            RunDataScanResponse response = dataScanServiceClient.runDataScan(request);
          }
        }
      }

      Python

      Python

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Python の設定手順を完了してください。詳細については、Dataplex Universal Catalog Python API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      # 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_run_data_scan():
          # Create a client
          client = dataplex_v1.DataScanServiceClient()
      
          # Initialize request argument(s)
          request = dataplex_v1.RunDataScanRequest(
              name="name_value",
          )
      
          # Make the request
          response = client.run_data_scan(request=request)
      
          # Handle the response
          print(response)
      
      

      Ruby

      Ruby

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Ruby の設定手順を完了してください。詳細については、Dataplex Universal Catalog Ruby API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      require "google/cloud/dataplex/v1"
      
      ##
      # Snippet for the run_data_scan call in the DataScanService service
      #
      # 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/ruby/docs/reference.
      #
      # This is an auto-generated example demonstrating basic usage of
      # Google::Cloud::Dataplex::V1::DataScanService::Client#run_data_scan.
      #
      def run_data_scan
        # Create a client object. The client can be reused for multiple calls.
        client = Google::Cloud::Dataplex::V1::DataScanService::Client.new
      
        # Create a request. To set request fields, pass in keyword arguments.
        request = Google::Cloud::Dataplex::V1::RunDataScanRequest.new
      
        # Call the run_data_scan method.
        result = client.run_data_scan request
      
        # The returned object is of type Google::Cloud::Dataplex::V1::RunDataScanResponse.
        p result
      end

      REST

      データ プロファイル スキャンを実行するには、dataScans.run メソッドを使用します。

      データ プロファイル スキャンの結果を表示する

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. データ プロファイル スキャンの名前をクリックします。

        • [概要] セクションには、スキャンが実行された日時、スキャンされたテーブル レコードの数、ジョブのステータスなど、最新のジョブに関する情報が表示されます。

        • [Data profile scan configuration] セクションには、スキャンについての詳細が表示されます。

      3. スキャンされたテーブルの列、スキャンで見つかった列に関する統計情報、ジョブログなど、ジョブの詳細情報を確認するには、[ジョブ履歴] タブをクリックします。ジョブ ID をクリックします。

      gcloud

      データ プロファイル スキャン ジョブの結果を表示するには、gcloud dataplex datascans jobs describe コマンドを使用します。

      gcloud dataplex datascans jobs describe JOB \
      --location=LOCATION \
      --datascan=DATASCAN \
      --view=FULL
      

      次の変数を置き換えます。

      • JOB: データ プロファイル スキャン ジョブのジョブ ID。
      • LOCATION: データ プロファイル スキャンが作成された Google Cloud リージョン。
      • DATASCAN: ジョブが属するデータ プロファイル スキャンの名前。
      • --view=FULL: スキャンジョブの結果を表示するには、FULL を指定します。

      C#

      C#

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある C# の設定手順を完了してください。詳細については、Dataplex Universal Catalog C# API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      using Google.Cloud.Dataplex.V1;
      
      public sealed partial class GeneratedDataScanServiceClientSnippets
      {
          /// <summary>Snippet for GetDataScan</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 GetDataScanRequestObject()
          {
              // Create client
              DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
              // Initialize request argument(s)
              GetDataScanRequest request = new GetDataScanRequest
              {
                  DataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
                  View = GetDataScanRequest.Types.DataScanView.Unspecified,
              };
              // Make the request
              DataScan response = dataScanServiceClient.GetDataScan(request);
          }
      }

      Go

      Go

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Go の設定手順を完了してください。詳細については、Dataplex Universal Catalog Go API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      
      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.NewDataScanClient(ctx)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	defer c.Close()
      
      	req := &dataplexpb.GetDataScanRequest{
      		// TODO: Fill request struct fields.
      		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#GetDataScanRequest.
      	}
      	resp, err := c.GetDataScan(ctx, req)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	// TODO: Use resp.
      	_ = resp
      }
      

      Java

      Java

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Java の設定手順を完了してください。詳細については、Dataplex Universal Catalog Java API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      import com.google.cloud.dataplex.v1.DataScan;
      import com.google.cloud.dataplex.v1.DataScanName;
      import com.google.cloud.dataplex.v1.DataScanServiceClient;
      import com.google.cloud.dataplex.v1.GetDataScanRequest;
      
      public class SyncGetDataScan {
      
        public static void main(String[] args) throws Exception {
          syncGetDataScan();
        }
      
        public static void syncGetDataScan() 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 (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
            GetDataScanRequest request =
                GetDataScanRequest.newBuilder()
                    .setName(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
                    .build();
            DataScan response = dataScanServiceClient.getDataScan(request);
          }
        }
      }

      Python

      Python

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Python の設定手順を完了してください。詳細については、Dataplex Universal Catalog Python API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      # 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_get_data_scan():
          # Create a client
          client = dataplex_v1.DataScanServiceClient()
      
          # Initialize request argument(s)
          request = dataplex_v1.GetDataScanRequest(
              name="name_value",
          )
      
          # Make the request
          response = client.get_data_scan(request=request)
      
          # Handle the response
          print(response)
      
      

      Ruby

      Ruby

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Ruby の設定手順を完了してください。詳細については、Dataplex Universal Catalog Ruby API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      require "google/cloud/dataplex/v1"
      
      ##
      # Snippet for the get_data_scan call in the DataScanService service
      #
      # 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/ruby/docs/reference.
      #
      # This is an auto-generated example demonstrating basic usage of
      # Google::Cloud::Dataplex::V1::DataScanService::Client#get_data_scan.
      #
      def get_data_scan
        # Create a client object. The client can be reused for multiple calls.
        client = Google::Cloud::Dataplex::V1::DataScanService::Client.new
      
        # Create a request. To set request fields, pass in keyword arguments.
        request = Google::Cloud::Dataplex::V1::GetDataScanRequest.new
      
        # Call the get_data_scan method.
        result = client.get_data_scan request
      
        # The returned object is of type Google::Cloud::Dataplex::V1::DataScan.
        p result
      end

      REST

      データ プロファイル スキャンの結果を表示するには、dataScans.get メソッドを使用します。

      公開された結果を表示する

      データ プロファイル スキャンの結果が Google Cloud コンソールの BigQuery ページと Dataplex Universal Catalog ページに公開されている場合は、ソーステーブルの [データ プロファイル] タブで最新のスキャン結果を確認できます。

      1. Google Cloud コンソールで、[BigQuery] ページに移動します。

        BigQuery に移動

      2. 左側のペインで、 エクスプローラをクリックします。

        ハイライト表示されたエクスプローラ ペインのボタン。

        左側のペインが表示されていない場合は、 [左ペインを開く] をクリックしてペインを開きます。

      3. [エクスプローラ] ペインで、[データセット] をクリックし、データセットをクリックします。

      4. [概要] > [テーブル] をクリックし、データ プロファイル スキャンの結果を表示するテーブルを選択します。

      5. [データ プロファイル] タブをクリックします。

        最後に公開された結果が表示されます。

      最新のデータ プロファイル スキャン ジョブを表示する

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. データ プロファイル スキャンの名前をクリックします。

      3. [ジョブの最新結果] タブをクリックします。

        正常に完了した実行が少なくとも 1 つある場合、[ジョブの最新結果] タブには、最新のジョブに関する情報が表示されます。スキャンされたテーブルの列と、スキャンで検出された列に関する統計情報が一覧表示されます。

      gcloud

      正常に完了した最新のデータ プロファイル スキャンを表示するには、gcloud dataplex datascans describe コマンドを使用します。

      gcloud dataplex datascans describe DATASCAN \
      --location=LOCATION \
      --view=FULL
      

      次の変数を置き換えます。

      • DATASCAN: 最新のジョブを表示するデータ プロファイル スキャンの名前。
      • LOCATION: データ プロファイル スキャンが作成された Google Cloud リージョン。
      • --view=FULL: スキャンジョブの結果を表示するには、FULL を指定します。

      REST

      最新のスキャンジョブを表示するには、dataScans.get メソッドを使用します。

      スキャン結果の履歴を表示する

      Dataplex Universal Catalog には、過去 300 件のジョブ、または過去 1 年間のジョブのいずれか早いほうのデータ プロファイル スキャンの履歴が保存されます。

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. データ プロファイル スキャンの名前をクリックします。

      3. [ジョブ履歴] タブをクリックします。

        [ジョブ履歴] タブには、過去のジョブに関する情報(各ジョブでスキャンされたレコード数、ジョブのステータス、ジョブの実行時刻など)が表示されます。

      4. ジョブについての詳細情報を表示するには、[ジョブ ID] 列でジョブをクリックします。

      gcloud

      過去のデータ プロファイル スキャン ジョブを表示するには、gcloud dataplex datascans jobs list コマンドを使用します。

      gcloud dataplex datascans jobs list \
      --location=LOCATION \
      --datascan=DATASCAN
      

      次の変数を置き換えます。

      • LOCATION: データ プロファイル スキャンが作成された Google Cloud リージョン。
      • DATASCAN: ジョブを表示するデータ プロファイル スキャンの名前。

      C#

      C#

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある C# の設定手順を完了してください。詳細については、Dataplex Universal Catalog C# API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      using Google.Api.Gax;
      using Google.Cloud.Dataplex.V1;
      using System;
      
      public sealed partial class GeneratedDataScanServiceClientSnippets
      {
          /// <summary>Snippet for ListDataScanJobs</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 ListDataScanJobsRequestObject()
          {
              // Create client
              DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
              // Initialize request argument(s)
              ListDataScanJobsRequest request = new ListDataScanJobsRequest
              {
                  ParentAsDataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
                  Filter = "",
              };
              // Make the request
              PagedEnumerable<ListDataScanJobsResponse, DataScanJob> response = dataScanServiceClient.ListDataScanJobs(request);
      
              // Iterate over all response items, lazily performing RPCs as required
              foreach (DataScanJob item in response)
              {
                  // Do something with each item
                  Console.WriteLine(item);
              }
      
              // Or iterate over pages (of server-defined size), performing one RPC per page
              foreach (ListDataScanJobsResponse page in response.AsRawResponses())
              {
                  // Do something with each page of items
                  Console.WriteLine("A page of results:");
                  foreach (DataScanJob item in page)
                  {
                      // Do something with each item
                      Console.WriteLine(item);
                  }
              }
      
              // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
              int pageSize = 10;
              Page<DataScanJob> singlePage = response.ReadPage(pageSize);
              // Do something with the page of items
              Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
              foreach (DataScanJob item in singlePage)
              {
                  // Do something with each item
                  Console.WriteLine(item);
              }
              // Store the pageToken, for when the next page is required.
              string nextPageToken = singlePage.NextPageToken;
          }
      }

      Go

      Go

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Go の設定手順を完了してください。詳細については、Dataplex Universal Catalog Go API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      
      package main
      
      import (
      	"context"
      
      	dataplex "cloud.google.com/go/dataplex/apiv1"
      	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
      	"google.golang.org/api/iterator"
      )
      
      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.NewDataScanClient(ctx)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	defer c.Close()
      
      	req := &dataplexpb.ListDataScanJobsRequest{
      		// TODO: Fill request struct fields.
      		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#ListDataScanJobsRequest.
      	}
      	it := c.ListDataScanJobs(ctx, req)
      	for {
      		resp, err := it.Next()
      		if err == iterator.Done {
      			break
      		}
      		if err != nil {
      			// TODO: Handle error.
      		}
      		// TODO: Use resp.
      		_ = resp
      
      		// If you need to access the underlying RPC response,
      		// you can do so by casting the `Response` as below.
      		// Otherwise, remove this line. Only populated after
      		// first call to Next(). Not safe for concurrent access.
      		_ = it.Response.(*dataplexpb.ListDataScanJobsResponse)
      	}
      }
      

      Java

      Java

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Java の設定手順を完了してください。詳細については、Dataplex Universal Catalog Java API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      import com.google.cloud.dataplex.v1.DataScanJob;
      import com.google.cloud.dataplex.v1.DataScanName;
      import com.google.cloud.dataplex.v1.DataScanServiceClient;
      import com.google.cloud.dataplex.v1.ListDataScanJobsRequest;
      
      public class SyncListDataScanJobs {
      
        public static void main(String[] args) throws Exception {
          syncListDataScanJobs();
        }
      
        public static void syncListDataScanJobs() 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 (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
            ListDataScanJobsRequest request =
                ListDataScanJobsRequest.newBuilder()
                    .setParent(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
                    .setPageSize(883849137)
                    .setPageToken("pageToken873572522")
                    .setFilter("filter-1274492040")
                    .build();
            for (DataScanJob element : dataScanServiceClient.listDataScanJobs(request).iterateAll()) {
              // doThingsWith(element);
            }
          }
        }
      }

      Python

      Python

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Python の設定手順を完了してください。詳細については、Dataplex Universal Catalog Python API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      # 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_list_data_scan_jobs():
          # Create a client
          client = dataplex_v1.DataScanServiceClient()
      
          # Initialize request argument(s)
          request = dataplex_v1.ListDataScanJobsRequest(
              parent="parent_value",
          )
      
          # Make the request
          page_result = client.list_data_scan_jobs(request=request)
      
          # Handle the response
          for response in page_result:
              print(response)
      
      

      Ruby

      Ruby

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Ruby の設定手順を完了してください。詳細については、Dataplex Universal Catalog Ruby API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      require "google/cloud/dataplex/v1"
      
      ##
      # Snippet for the list_data_scan_jobs call in the DataScanService service
      #
      # 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/ruby/docs/reference.
      #
      # This is an auto-generated example demonstrating basic usage of
      # Google::Cloud::Dataplex::V1::DataScanService::Client#list_data_scan_jobs.
      #
      def list_data_scan_jobs
        # Create a client object. The client can be reused for multiple calls.
        client = Google::Cloud::Dataplex::V1::DataScanService::Client.new
      
        # Create a request. To set request fields, pass in keyword arguments.
        request = Google::Cloud::Dataplex::V1::ListDataScanJobsRequest.new
      
        # Call the list_data_scan_jobs method.
        result = client.list_data_scan_jobs request
      
        # The returned object is of type Gapic::PagedEnumerable. You can iterate
        # over elements, and API calls will be issued to fetch pages as needed.
        result.each do |item|
          # Each element is of type ::Google::Cloud::Dataplex::V1::DataScanJob.
          p item
        end
      end

      REST

      過去のデータ プロファイル スキャン ジョブを表示するには、dataScans.jobs.list メソッドを使用します。

      テーブルのデータ プロファイル スキャンを表示する

      特定のテーブルに適用されるデータ プロファイル スキャンを表示する手順は次のとおりです。

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. テーブル名とスキャンタイプでリストをフィルタします。

      データ プロファイル スキャンの結果へのアクセスを許可する

      組織内のユーザーがスキャン結果を表示できるようにするには、次の操作を行います。

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. 結果を共有するデータ品質スキャンをクリックします。

      3. [権限] タブをクリックします。

      4. 手順は次のとおりです。

        • プリンシパルにアクセス権を付与するには、[ アクセス権を付与] をクリックします。関連するプリンシパルに Dataplex DataScan データ閲覧者ロールを付与します。
        • プリンシパルからアクセス権を削除するには、Dataplex DataScan データ閲覧者ロールを削除するプリンシパルを選択します。[アクセス権を削除] をクリックし、プロンプトが表示されたら確定します。

      特定のテーブルのデータ プロファイル スキャンを管理する

      このドキュメントの手順では、Google Cloud コンソールの BigQuery の [メタデータのキュレーション] > [データ プロファイリングと品質] ページを使用して、プロジェクト全体でデータ プロファイル スキャンを管理する方法について説明します。

      特定のテーブルを操作するときに、データ プロファイル スキャンを作成して管理することもできます。 Google Cloud コンソールのテーブルの BigQuery ページで、[データ プロファイル] タブを使用します。手順は次のとおりです。

      1. Google Cloud コンソールで、[BigQuery] ページに移動します。

        [BigQuery] に移動

        [エクスプローラ] ペイン(左側のペイン)で、[データセット] をクリックし、データセットをクリックします。[概要] > [テーブル] をクリックし、データ プロファイル スキャンの結果を表示するテーブルを選択します。

      2. [データ プロファイル] タブをクリックします。

      3. 結果が公開されているデータ プロファイル スキャンがテーブルにあるかどうかに応じて、次の方法でテーブルのデータ プロファイル スキャンを操作できます。

        • データ プロファイル スキャンの結果が公開されている: 最新の公開済みスキャンの結果がページに表示されます。

          このテーブルのデータ プロファイル スキャンを管理するには、[データ プロファイル スキャン] をクリックし、次のいずれかのオプションを選択します。

          • 新しいスキャンを作成: 新しいデータ プロファイル スキャンを作成します。詳細については、このドキュメントのデータ プロファイル スキャンを作成するをご覧ください。テーブルの詳細ページからスキャンを作成すると、テーブルが事前に選択されます。

          • 今すぐ実行: スキャンを実行します。

          • スキャン構成を編集: 表示名、フィルタ、サンプリング サイズ、スケジュールなどの設定を編集します。

          • スキャン権限を管理: スキャン結果にアクセスできるユーザーを制御します。詳細については、このドキュメントのデータ プロファイル スキャンの結果へのアクセスを許可するをご覧ください。

          • 過去の結果を見る: 以前のデータ プロファイル スキャン ジョブの詳細情報を表示します。詳細については、このドキュメントのデータ プロファイル スキャン結果を表示する過去のスキャン結果を表示するのセクションをご覧ください。

          • すべてのスキャンを表示: このテーブルに適用されるデータ プロファイル スキャンのリストを表示します。

        • データ プロファイル スキャンの結果が公開されていない: [クイック データ プロファイル] の横にあるメニューをクリックし、次のオプションから選択します。

          • データ プロファイリングをカスタマイズ: 新しいデータ プロファイル スキャンを作成します。詳細については、このドキュメントのデータ プロファイル スキャンを作成するをご覧ください。テーブルの詳細ページからスキャンを作成すると、テーブルが事前に選択されます。

          • 以前のプロファイルを表示: このテーブルに適用されるデータ プロファイル スキャンのリストを表示します。

      データ プロファイル スキャンを更新する

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. データ プロファイル スキャンの名前をクリックします。

      3. [編集] をクリックし、値を編集します。

      4. [保存] をクリックします。

      gcloud

      データ プロファイル スキャンを更新するには、gcloud dataplex datascans update data-profile コマンドを使用します。

      gcloud dataplex datascans update data-profile DATASCAN \
      --location=LOCATION \
      --description=DESCRIPTION
      

      次の変数を置き換えます。

      • DATASCAN: 更新するデータ プロファイル スキャンの名前。
      • LOCATION: データ プロファイル スキャンが作成された Google Cloud リージョン。
      • DESCRIPTION: データ プロファイル スキャンの新しい説明。

      C#

      C#

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある C# の設定手順を完了してください。詳細については、Dataplex Universal Catalog C# API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      using Google.Cloud.Dataplex.V1;
      using Google.LongRunning;
      using Google.Protobuf.WellKnownTypes;
      
      public sealed partial class GeneratedDataScanServiceClientSnippets
      {
          /// <summary>Snippet for UpdateDataScan</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 UpdateDataScanRequestObject()
          {
              // Create client
              DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
              // Initialize request argument(s)
              UpdateDataScanRequest request = new UpdateDataScanRequest
              {
                  DataScan = new DataScan(),
                  UpdateMask = new FieldMask(),
                  ValidateOnly = false,
              };
              // Make the request
              Operation<DataScan, OperationMetadata> response = dataScanServiceClient.UpdateDataScan(request);
      
              // Poll until the returned long-running operation is complete
              Operation<DataScan, OperationMetadata> completedResponse = response.PollUntilCompleted();
              // Retrieve the operation result
              DataScan 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<DataScan, OperationMetadata> retrievedResponse = dataScanServiceClient.PollOnceUpdateDataScan(operationName);
              // Check if the retrieved long-running operation has completed
              if (retrievedResponse.IsCompleted)
              {
                  // If it has completed, then access the result
                  DataScan retrievedResult = retrievedResponse.Result;
              }
          }
      }

      Go

      Go

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Go の設定手順を完了してください。詳細については、Dataplex Universal Catalog Go API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      
      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.NewDataScanClient(ctx)
      	if err != nil {
      		// TODO: Handle error.
      	}
      	defer c.Close()
      
      	req := &dataplexpb.UpdateDataScanRequest{
      		// TODO: Fill request struct fields.
      		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#UpdateDataScanRequest.
      	}
      	op, err := c.UpdateDataScan(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

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Java の設定手順を完了してください。詳細については、Dataplex Universal Catalog Java API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      import com.google.cloud.dataplex.v1.DataScan;
      import com.google.cloud.dataplex.v1.DataScanServiceClient;
      import com.google.cloud.dataplex.v1.UpdateDataScanRequest;
      import com.google.protobuf.FieldMask;
      
      public class SyncUpdateDataScan {
      
        public static void main(String[] args) throws Exception {
          syncUpdateDataScan();
        }
      
        public static void syncUpdateDataScan() 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 (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
            UpdateDataScanRequest request =
                UpdateDataScanRequest.newBuilder()
                    .setDataScan(DataScan.newBuilder().build())
                    .setUpdateMask(FieldMask.newBuilder().build())
                    .setValidateOnly(true)
                    .build();
            DataScan response = dataScanServiceClient.updateDataScanAsync(request).get();
          }
        }
      }

      Python

      Python

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Python の設定手順を完了してください。詳細については、Dataplex Universal Catalog Python API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      # 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_scan():
          # Create a client
          client = dataplex_v1.DataScanServiceClient()
      
          # Initialize request argument(s)
          data_scan = dataplex_v1.DataScan()
          data_scan.data_quality_spec.rules.dimension = "dimension_value"
          data_scan.data.entity = "entity_value"
      
          request = dataplex_v1.UpdateDataScanRequest(
              data_scan=data_scan,
          )
      
          # Make the request
          operation = client.update_data_scan(request=request)
      
          print("Waiting for operation to complete...")
      
          response = operation.result()
      
          # Handle the response
          print(response)
      
      

      Ruby

      Ruby

      このサンプルを試す前に、クライアント ライブラリを使用した Dataplex Universal Catalog のクイックスタートにある Ruby の設定手順を完了してください。詳細については、Dataplex Universal Catalog Ruby API のリファレンス ドキュメントをご覧ください。

      Dataplex Universal Catalog で認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。

      require "google/cloud/dataplex/v1"
      
      ##
      # Snippet for the update_data_scan call in the DataScanService service
      #
      # 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/ruby/docs/reference.
      #
      # This is an auto-generated example demonstrating basic usage of
      # Google::Cloud::Dataplex::V1::DataScanService::Client#update_data_scan.
      #
      def update_data_scan
        # Create a client object. The client can be reused for multiple calls.
        client = Google::Cloud::Dataplex::V1::DataScanService::Client.new
      
        # Create a request. To set request fields, pass in keyword arguments.
        request = Google::Cloud::Dataplex::V1::UpdateDataScanRequest.new
      
        # Call the update_data_scan method.
        result = client.update_data_scan request
      
        # The returned object is of type Gapic::Operation. You can use it to
        # check the status of an operation, cancel it, or wait for results.
        # Here is how to wait for a response.
        result.wait_until_done! timeout: 60
        if result.response?
          p result.response
        else
          puts "No response received."
        end
      end

      REST

      データ プロファイル スキャンを編集するには、dataScans.patch メソッドを使用します。

      データ プロファイル スキャンを削除する

      コンソール

      1. Google Cloud コンソールの BigQuery の [メタデータのキュレーション] ページで、[データのプロファイリングと品質] タブに移動します。

        [データのプロファイリングと品質] に移動

      2. 削除するスキャンをクリックします。

      3. [削除] をクリックし、プロンプトが表示されたら確定します。

      gcloud

      データ プロファイル スキャンを削除するには、gcloud dataplex datascans delete コマンドを使用します。

      gcloud dataplex datascans delete DATASCAN \
      --location=LOCATION --async
      

      次の変数を置き換えます。

      • DATASCAN: 削除するデータ プロファイル スキャンの名前。
      • LOCATION: データ プロファイル スキャンが作成された Google Cloud リージョン。

      REST

      データ プロファイル スキャンを削除するには、dataScans.delete メソッドを使用します。

      次のステップ