このページでは、既存の Dataplex ゾーンで 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 固有の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 レイクに接続されているリソースに対しては、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
Google Cloud コンソールで、[Dataplex] ページに移動します。
[管理] ページで、Cloud Storage バケットまたは BigQuery データセットを追加するレイクをクリックします。レイクページが開きます。
[ゾーン] タブで、アセットを追加するデータゾーンの名前をクリックします。そのデータゾーンの [データゾーン] ページが開きます。
[アセット] タブで、[+ アセットを追加] をクリックします。[アセットを追加] ページが開きます。
[アセットを追加] をクリックします。
[タイプ] フィールドで、[BigQuery データセット] または [Cloud Storage バケット] を選択します。
[表示名] フィールドに、新しいアセットの名前を入力します。
[ID] フィールドに、アセットの一意の ID を入力します。
(省略可)説明を入力します。
アセットのタイプに基づいて、[データセット] フィールドまたは [バケット] フィールドで [参照] をクリックして、Cloud Storage バケットまたは BigQuery データセットを見つけて選択します。
オプション: アセットタイプが Cloud Storage バケットで、Dataplex でアセットを管理する場合は、[マネージドにアップグレード] チェックボックスをオンにします。このオプションを選択すると、アセットを個別にアップグレードする必要はありません。このオプションは BigQuery データセットでは使用できません。
[続行] をクリックします。
残りのパラメータ値を選択します。セキュリティ設定の詳細については、レイクのセキュリティをご覧ください。
[送信] をクリックします。
データゾーン ページに戻り、新しいアセットがアセットリストに表示されていることを確認します。
REST
アセットを追加するには、lakes.zones.assets.create メソッドを使用します。
正常に追加されると、データゾーンは自動的にアクティブ状態になります。失敗した場合、データゾーンは以前の正常な状態にロールバックされます。
Cloud Storage バケット アセットをアップグレードする
Cloud Storage バケットタイプのアセットを追加すると、Dataplex は、そのアセットでホストされているテーブルの BigQuery 外部テーブルを自動的に公開します。
Cloud Storage バケット アセットをアップグレードすると、Dataplex は、接続された外部テーブルを削除して BigLake テーブルを作成します。BigLake テーブルは、行レベル、列レベル、動的データ マスキングなど、よりきめ細かいセキュリティをサポートしています。
Cloud Storage バケット アセットをアップグレードする手順は次のとおりです。
Console
Google Cloud コンソールで、[Dataplex] ページに移動します。
[管理] ページで、レイクの名前をクリックします。レイクページが開きます。
[ゾーン] タブで、データゾーンの名前をクリックします。データゾーンのページが開きます。
[アセット] タブで、アップグレードするアセットの名前をクリックします。
[管理対象にアップグレード] をクリックします。
REST
バケット アセットをアップグレードするには、lakes.zones.assets.patch メソッドを使用します。
Cloud Storage バケットのアセットをダウングレードする
Cloud Storage バケット アセットをダウングレードすると、Dataplex は、接続された BigLake テーブルを削除して外部テーブルを作成します。
Console
Google Cloud コンソールで、[Dataplex] ページに移動します。
[管理] ページで、レイクの名前をクリックします。レイクページが開きます。
[ゾーン] タブで、データゾーンの名前をクリックします。データゾーンのページが開きます。
[アセット] タブで、アップグレードするアセットの名前をクリックします。
[マネージドからダウングレード] をクリックします。
REST
バケット アセットをダウングレードするには、lakes.zones.assets.patch メソッドを使用します。ResourceSpec
で readAccessMode
フィールドを DIRECT
に設定します。
アセットを削除する
アセットを別のゾーンに接続する前に、データゾーンやレイクから削除します。
アセットを削除する手順は次のとおりです。
Console
Google Cloud コンソールで、[Dataplex] ページに移動します。
[管理] ページで、Cloud Storage バケットまたは BigQuery データセットを削除するレイクをクリックします。そのレイクのレイクページが開きます。
[ゾーン] タブで、Cloud Storage バケットまたは BigQuery データセットを削除するデータゾーンの名前をクリックします。そのデータゾーンの [データゾーン] ページが開きます。
[アセット] タブで、アセット名の左側にあるチェックボックスをオンにして、アセットを選択します。
[アセットを削除] をクリックします。
確認ダイアログで [Delete] をクリックします。
REST
バケットを削除するには、lakes.zones,assets.delete メソッドを使用します。
次のステップ
- データの検出の詳細を確認する。
- レイクを作成する方法を学ぶ。
- Cloud 監査ログの詳細を確認する。