このページでは、既存の Dataplex Universal Catalog ゾーンで Cloud Storage バケットと BigQuery データセットをアセットとして追加、アップグレード、削除する方法について説明します。
概要
アセットは、Cloud Storage または BigQuery のいずれかに保存されているデータにマッピングします。別々の Google Cloud プロジェクトに保存されているデータをアセットとしてレイク内の単一のゾーンにマッピングできます。既存の Cloud Storage バケットまたは BigQuery データセットをアタッチして、レイク内で管理できます。
始める前に
大部分の
gcloud lakes
コマンドでは、ロケーションを指定する必要があります。ロケーションは、--location
フラグを使用して指定できます。
必要なロール
アセットを削除するには、
dataplex.lakes.delete
、dataplex.zones.delete
、またはdataplex.assets.delete
の IAM 権限を含む IAM ロールを付与します。Dataplex Universal Catalog 固有のroles/dataplex.admin
ロールとroles/dataplex.editor
ロールを使用して、これらの権限を付与できます。アセットを追加するには、権限
create
(dataplex.lakes.create
、dataplex.zones.create
、またはdataplex.assets.create
)を含む IAM ロールを付与します。ロールroles/dataplex.admin
とroles/dataplex.editor
には、こうした権限が含まれています。また、以前のロールの
roles/owner
とroles/editor
を使用して、ユーザーやグループへ権限を付与できます。Dataplex Universal Catalog レイクに関連付けられているリソースに対しては、Dataplex Universal Catalog サービスを承認する必要があります。レイクが作成されるプロジェクト内のリソースに対して、承認が自動的かつ暗黙的に付与されます。他のプロジェクトのリソースに対しては、Dataplex Universal Catalog サービスを明示的に承認します。
詳細については、Dataplex Universal Catalog の IAM とアクセス制御をご覧ください。
Cloud Storage バケットに対するロールを付与する
別のプロジェクトの Cloud Storage バケットをレイクに関連付けるには、Dataplex Universal Catalog サービス アカウント(service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com
、コンソールのレイクの詳細ページから取得)に、バケットを含むプロジェクトの Dataplex Universal Catalog サービス アカウントのロール(roles/dataplex.serviceAgent
)を付与する必要があります。このロールは、バケットに対して前提となる管理者レベルのロールを Dataplex Universal Catalog サービスに提供し、バケット自体に権限を設定できるようにします。
BigQuery データセットのロールを付与する
別のプロジェクトの BigQuery データセットをレイクに関連付けるには、データセットの BigQuery 管理者ロールを Dataplex Universal Catalog サービス アカウントに付与する必要があります。
VPC Service Controls の注意事項
Dataplex Universal Catalog が、VPC Service Controls の境界を超えることはありません。レイクにアセットを追加する前に、基盤となるバケットやデータセットがレイクと同じ VPC Service Controls ネットワークにあることを確認してください。
詳細については、Dataplex Universal Catalog を使用した VPC Service Controls をご覧ください。
アセットを追加する
Dataplex Universal Catalog レイク リージョンと Cloud Storage バケットのリージョンのいずれかに重なる部分がない場合は、バケットをレイク内のゾーンに追加することはできません。
Cloud Storage アセットのリージョンのロケーションと、公開データセットの作成時に Dataplex Universal Catalog がバケットのロケーションを扱う方法の詳細については、リージョン リソースをご覧ください。
アセットを追加する手順は次のとおりです。
コンソール
Google Cloud コンソールで、[Dataplex Universal Catalog] ページに移動します。
[管理] ページで、Cloud Storage バケットまたは BigQuery データセットを追加するレイクをクリックします。レイクページが開きます。
[ゾーン] タブで、アセットを追加するデータゾーンの名前をクリックします。そのデータゾーンの [データゾーン] ページが開きます。
[アセット] タブで [アセットを追加] をクリックします。[アセットを追加] ページが開きます。
[アセットを追加] をクリックします。
[タイプ] フィールドで、[BigQuery データセット] または [Cloud Storage バケット] を選択します。
[表示名] フィールドに、新しいアセットの名前を入力します。
[ID] フィールドで、アセットに一意の ID を指定します。
(省略可)説明を入力します。
アセットのタイプに基づいて、[データセット] フィールドまたは [バケット] フィールドで [参照] をクリックし、Cloud Storage バケットまたは BigQuery データセットを見つけて選択します。
省略可: アセットタイプが Cloud Storage バケットで、Dataplex Universal Catalog でアセットを管理する場合は、[マネージドにアップグレード] チェックボックスをオンにします。このオプションを選択すると、アセットを個別にアップグレードする必要はありません。このオプションは BigQuery データセットでは使用できません。
[続行] をクリックします。
残りのパラメータ値を選択します。セキュリティ設定の詳細については、レイクのセキュリティをご覧ください。
[送信] をクリックします。
データゾーン ページに戻り、新しいアセットがアセットリストに表示されていることを確認します。
REST
アセットを追加するには、lakes.zones.assets.create メソッドを使用します。
正常に追加されると、データゾーンは自動的にアクティブ状態になります。失敗した場合、データゾーンは以前の正常な状態にロールバックされます。
Cloud Storage バケット アセットをアップグレードする
Cloud Storage バケットタイプのアセットを追加すると、Dataplex Universal Catalog は、そのアセットでホストされているテーブルの BigQuery 外部テーブルを自動的に公開します。
Cloud Storage バケット アセットをアップグレードすると、Dataplex Universal Catalog は、関連付けられた外部テーブルを削除して BigLake テーブルを作成します。BigLake テーブルは、行レベル、列レベル、動的データ マスキングなど、より詳細なセキュリティをサポートしています。
Cloud Storage バケット アセットをアップグレードする手順は次のとおりです。
コンソール
Google Cloud コンソールで、[Dataplex Universal Catalog] ページに移動します。
[管理] ページで、レイクの名前をクリックします。レイクページが開きます。
[ゾーン] タブで、データゾーンの名前をクリックします。データゾーンのページが開きます。
[アセット] タブで、アップグレードするアセットの名前をクリックします。
[マネージドにアップグレード] をクリックします。
REST
バケット アセットをアップグレードするには、lakes.zones.assets.patch メソッドを使用します。
Cloud Storage バケットのアセットをダウングレードする
Cloud Storage バケット アセットをダウングレードすると、Dataplex Universal Catalog は、関連付けられた BigLake テーブルを削除して外部テーブルを作成します。
コンソール
Google Cloud コンソールで、[Dataplex Universal Catalog] ページに移動します。
[管理] ページで、レイクの名前をクリックします。レイクページが開きます。
[ゾーン] タブで、データゾーンの名前をクリックします。データゾーンのページが開きます。
[アセット] タブで、アップグレードするアセットの名前をクリックします。
[マネージドからダウングレード] をクリックします。
REST
バケット アセットをダウングレードするには、lakes.zones.assets.patch メソッドを使用します。ResourceSpec
で readAccessMode
フィールドを DIRECT
に設定します。
アセットを削除する
アセットを別のゾーンにアタッチする前に、データゾーンやレイクから削除します。
アセットを削除する手順は次のとおりです。
コンソール
Google Cloud コンソールで、[Dataplex Universal Catalog] ページに移動します。
[管理] ページで、Cloud Storage バケットまたは BigQuery データセットを削除するレイクをクリックします。そのレイクのレイクページが開きます。
[ゾーン] タブで、Cloud Storage バケットまたは BigQuery データセットを削除するデータゾーンの名前をクリックします。そのデータゾーンの [データゾーン] ページが開きます。
[アセット] タブで、アセット名の左側にあるチェックボックスをオンにして、アセットを選択します。
[アセットを削除] をクリックします。
確認ダイアログで [Delete] をクリックします。
REST
バケットを削除するには、lakes.zones,assets.delete メソッドを使用します。
次のステップ
- データの検出の詳細を確認する。
- レイクを作成する方法を確認する。
- Cloud Audit Logs の詳細を確認する。