レイク内のデータアセットを管理する

このページでは、既存の Dataplex ゾーンで Cloud Storage バケットと BigQuery データセットをアセットとして追加、アップグレード、削除する方法について説明します。

概要

アセットは、Cloud Storage または BigQuery のいずれかに保存されているデータにマッピングします。別々の Google Cloud プロジェクトに保存されているデータをアセットとしてレイク内の単一のゾーンにマッピングできます。既存の Cloud Storage バケットまたは BigQuery データセットを接続して、レイク内で管理できます。

始める前に

  • まだ作成していない場合は、レイクを作成し、そのレイクにゾーンを作成します。

  • 大部分の gcloud lakes コマンドでは、ロケーションを指定する必要があります。ロケーションは、--location フラグを使用して指定できます。

必要なロール

  • アセットを削除するには、dataplex.lakes.deletedataplex.zones.delete、または dataplex.assets.delete の IAM 権限を含む IAM ロールを付与します。Dataplex 固有の roles/dataplex.admin ロールと roles/dataplex.editor ロールを使用して、これらの権限を付与できます。

  • アセットを追加するには、権限 create - dataplex.lakes.createdataplex.zones.create、または dataplex.assets.create を含む IAM ロールを付与します。ロール roles/dataplex.adminroles/dataplex.editor には、こうした権限が含まれています。

  • また、従来のロールの roles/ownerroles/editor も、ユーザーやグループへの権限の付与に使用できます。

  • Dataplex レイクに接続されているリソースに対しては、Dataplex サービスを承認する必要があります。レイクが作成されるプロジェクト内のリソースに対して、承認が自動的かつ暗黙的に付与されます。他のプロジェクトのリソースに対しては、Dataplex サービスを明示的に承認します。

詳細については、Dataplex IAM とアクセス制御をご覧ください。

Cloud Storage バケットに対するロールを付与する

別のプロジェクトの Cloud Storage バケットをレイクに接続するには、コンソールのレイクの詳細ページから取得した Dataplex サービス アカウント(service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com)に、バケットを含むプロジェクトの Dataplex サービス アカウントのロール(roles/dataplex.serviceAgent)を付与する必要があります。このロールは、バケットに対して前提となる管理者レベルのロールを Dataplex サービスに提供し、バケット自体に権限を設定できるようにします。

BigQuery データセットに対するロールを付与する

別のプロジェクトの BigQuery データセットをレイクに接続するには、データセットに対する BigQuery 管理者ロールを Dataplex サービス アカウントに付与する必要があります。

VPC Service Controls の注意事項

Dataplex が、VPC Service Controls の境界を超えることはありません。レイクにアセットを追加する前に、基盤となるバケットやデータセットがレイクと同じ VPC Service Controls ネットワークにあることを確認してください。

詳細については、VPC Service Controls と Dataplex をご覧ください。

アセットを追加する

Dataplex レイク リージョンと Cloud Storage バケットのリージョンのいずれかに重なる部分がない場合は、バケットをレイク内のゾーンに追加することはできません。

Cloud Storage アセットのリージョンのロケーションと、公開データセットの作成時に Dataplex がバケットのロケーションを扱う方法の詳細については、リージョン リソースをご覧ください。

アセットを追加する手順は次のとおりです。

Console

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

    Dataplex に移動

  2. [管理] ページで、Cloud Storage バケットまたは BigQuery データセットを追加するレイクをクリックします。レイクページが開きます。

  3. [ゾーン] タブで、アセットを追加するデータゾーンの名前をクリックします。そのデータゾーンの [データゾーン] ページが開きます。

  4. [アセット] タブで、[+ アセットを追加] をクリックします。[アセットを追加] ページが開きます。

  5. [アセットを追加] をクリックします。

  6. [タイプ] フィールドで、[BigQuery データセット] または [Cloud Storage バケット] を選択します。

  7. [表示名] フィールドに、新しいアセットの名前を入力します。

  8. [ID] フィールドに、アセットの一意の ID を入力します。

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

  10. アセットのタイプに基づいて、[データセット] フィールドまたは [バケット] フィールドで [参照] をクリックして、Cloud Storage バケットまたは BigQuery データセットを見つけて選択します。

  11. オプション: アセットタイプが Cloud Storage バケットで、Dataplex でアセットを管理する場合は、[マネージドにアップグレード] チェックボックスをオンにします。このオプションを選択すると、アセットを個別にアップグレードする必要はありません。このオプションは BigQuery データセットでは使用できません。

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

  13. 残りのパラメータ値を選択します。セキュリティ設定の詳細については、レイクのセキュリティをご覧ください。

  14. [送信] をクリックします。

  15. データゾーン ページに戻り、新しいアセットがアセットリストに表示されていることを確認します。

REST

アセットを追加するには、lakes.zones.assets.create メソッドを使用します。

正常に追加されると、データゾーンは自動的にアクティブ状態になります。失敗した場合、データゾーンは以前の正常な状態にロールバックされます。

Cloud Storage バケット アセットをアップグレードする

Cloud Storage バケットタイプのアセットを追加すると、Dataplex は、そのアセットでホストされているテーブルの BigQuery 外部テーブルを自動的に公開します。

Cloud Storage バケット アセットをアップグレードすると、Dataplex は、接続された外部テーブルを削除して BigLake テーブルを作成します。BigLake テーブルは、行レベル、列レベル、動的データ マスキングなど、よりきめ細かいセキュリティをサポートしています。

Cloud Storage バケット アセットをアップグレードする手順は次のとおりです。

Console

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

    Dataplex に移動

  2. [管理] ページで、レイクの名前をクリックします。レイクページが開きます。

  3. [ゾーン] タブで、データゾーンの名前をクリックします。データゾーンのページが開きます。

  4. [アセット] タブで、アップグレードするアセットの名前をクリックします。

  5. [管理対象にアップグレード] をクリックします。

REST

バケット アセットをアップグレードするには、lakes.zones.assets.patch メソッドを使用します。

Cloud Storage バケットのアセットをダウングレードする

Cloud Storage バケット アセットをダウングレードすると、Dataplex は、接続された BigLake テーブルを削除して外部テーブルを作成します。

Console

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

    Dataplex に移動

  2. [管理] ページで、レイクの名前をクリックします。レイクページが開きます。

  3. [ゾーン] タブで、データゾーンの名前をクリックします。データゾーンのページが開きます。

  4. [アセット] タブで、アップグレードするアセットの名前をクリックします。

  5. [マネージドからダウングレード] をクリックします。

REST

バケット アセットをダウングレードするには、lakes.zones.assets.patch メソッドを使用します。ResourceSpecreadAccessMode フィールドを DIRECT に設定します。

アセットを削除する

アセットを別のゾーンに接続する前に、データゾーンやレイクから削除します。

アセットを削除する手順は次のとおりです。

Console

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

    Dataplex に移動

  2. [管理] ページで、Cloud Storage バケットまたは BigQuery データセットを削除するレイクをクリックします。そのレイクのレイクページが開きます。

  3. [ゾーン] タブで、Cloud Storage バケットまたは BigQuery データセットを削除するデータゾーンの名前をクリックします。そのデータゾーンの [データゾーン] ページが開きます。

  4. [アセット] タブで、アセット名の左側にあるチェックボックスをオンにして、アセットを選択します。

  5. [アセットを削除] をクリックします。

  6. 確認ダイアログで [Delete] をクリックします。

REST

バケットを削除するには、lakes.zones,assets.delete メソッドを使用します。

次のステップ