クリーン ルームを作成する
この記事では、安全でプライバシーが保護される環境であるクリーン ルームを作成する方法について説明します。この環境では、複数の関係者が互いのデータに直接アクセスすることなく、機密性の高いエンタープライズ データで共同作業できます。
開始する前に
クリーン ルームを使用するために必要なアクセス許可は、タスクによって異なります。
クリーン ルームを作成するには、
CREATE CLEAN ROOM
アクセス許可が付与されているか、メタストア管理者である必要があります。作成者は、Unity Catalog メタストアのクリーン ルームの所有者として自動的に割り当てられます。自分と共有されているクリーン ルームへの参加を開始するには、メタストア管理者である必要があります。
クリーン ルームが共有されている場合、コラボレーターの組織のメタストア管理者には、クリーン ルームの所有権が自動的に割り当てられます。 メタストア管理者は、メタストア以外の管理者に所有権を再割り当てできます。Databricks では、データ ガバナンスのベスト プラクティスとして、所有権をグループに割り当てることをお勧めします。
ワークスペースにメタストア管理者が割り当てられていない場合は、そのロールを割り当てる必要があります。 「メタストア管理者を割り当てる」および「Unity Catalog オブジェクトの所有権を管理する」を参照してください。
クリーン ルームのデータ資産とノートブックを追加および削除するには、クリーン ルームの所有者であるか、クリーン ルームに対する
MODIFY CLEAN ROOM
アクセス許可が付与されている必要があります。 さらに、自分とクリーンルームの所有者(あなたが所有者でない場合)は、追加するテーブルとビューにSELECT
の権限を持ち、追加するボリュームにREAD VOLUME
の権限を持つ必要があります。
クリーン ルームの更新とクリーン ルームでのタスク (ノートブック) の実行に関するアクセス許可の要件については、「クリーン ルームを管理する」および「クリーン ルームでノートブックを実行する」を参照してください。
メタストアごとに最大 5 つのクリーン ルームを作成できます。
手順 1. コラボレーターの共有識別子を要求する
クリーン ルームを作成する前に、共同作業を行う組織のクリーン ルーム共有識別子が必要です。 共有識別子は、組織のグローバル メタストア ID + ワークスペース ID + 連絡先のユーザー名 (メール アドレス) で構成される文字列です。 コラボレーターは、任意のクラウドまたはリージョンに存在します。
コラボレーターに連絡して、共有識別子を要求してください。
コラボレーターは、「共有識別子を見つける」の手順を使用して共有識別子を取得できます。
手順 2. クリーン ルームを作成する
クリーン ルームを作成するには、カタログ エクスプローラーを使用する必要があります。
Azure Databricks ワークスペースで、
[カタログ] をクリックします。
[クイック アクセス] ページで、[Clean Rooms] > ボタンをクリックします。
または、
[カタログ] ペインの上部にある 歯車アイコンをクリックし、[Clean Rooms] を選択します。
[クリーン ルームを作成する] をクリックします。
[クリーン ルームを作成する] ページで、クリーン ルームに設定するわかりやすい名前を入力します。
名前にスペース、ピリオド、またはスラッシュ (/) を使用することはできません。
クリーン ルームの名前は、保存後に変更することはできません。 コラボレーターが便利でわかりやすいと感じる名前を使用してください。
中央クリーン ルームを作成するクラウド プロバイダーとリージョンを選択します。
クラウド プロバイダーは現在のワークスペースと同じである必要がありますが、リージョンは同じである必要はありません。 選択するときは、組織のデータ所在地またはその他のポリシーを検討してください。
(省略可能) コメントを追加します。
コラボレーターの Clean Room 共有識別子を入力します。
「手順 1.コラボレーターの共有識別子を要求する」を参照してください。
フル デプロイの前に、共有識別子または現在のメタストア内の別のユーザーの識別子を使用して、クリーン ルームをテストできます。 これにより、現在のメタストアに 2 つのクリーン ルームが作成されます。 たとえば、
test_clean_room
という名前のクリーン ルームを作成すると、test_clean_room_collaborator
という名前の 2 つ目のクリーン ルームも表示されます。 同じメタストア内のコラボレーターを使用してノートブックを実行すると、外部コラボレーターと同じように機能します。 「クリーン ルームでノートブックを実行する」を参照してください。自分 (作成者) とコラボレーターに割り当てられているカタログ名を書き留めておきます。
クリーン ルームに追加されたすべてのデータ資産は、中央クリーン ルームでそのカタログの下に表示され、Unity Catalog の 3 レベルの名前空間 (
<catalog>.<schema>.<table-etc>
) でそのカタログを使用して参照できます。ネットワーク アクセス ポリシーの種類を選択します。 これは、クリーン ルームの作成後は変更できません。
- フルアクセス: 無制限の外向きインターネットアクセス。
- 制限付きアクセス: 指定したインターネット宛先への送信アクセスが制限されます。 ネットワーク ポリシーの概要 およびサーバーレス エグレス制御 のネットワーク ポリシーの管理に関するを参照してください。
Note
制限付きアクセス は、資産の可用性を最大 10 分間遅延させる可能性があり、Google Cloud コラボレーターをサポートしていません。
クリーン ルームを作成したら、ネットワーク アクセス ポリシーを [セキュリティ] タブで表示できます。
[クリーン ルームを作成する] をクリックします。
現在のワークスペースが HIPAA コンプライアンス セキュリティ プロファイルに設定されている場合、クリーン ルームを作成すると、その設定が中央のクリーン ルームに適用されます。 コラボレーターは、同じセキュリティ プロファイルを持つワークスペースからクリーン ルームにアクセスする必要があります。 コンプライアンス セキュリティ プロファイル を参照してください。
手順 3. データ資産とノートブックをクリーン ルームに追加する
クリーン ルームのどちらのパーティー (作成者とコラボレーター) も、テーブル、ボリューム、ビュー、ノートブックをクリーン ルームに追加できます。
必要なアクセス許可:
クリーン ルームの所有者であるか、クリーン ルームに対する
MODIFY CLEAN ROOM
アクセス許可が付与されている必要があります。自分とクリーン ルームの所有者 (自分が所有者でない場合) は、追加するテーブルまたはビュー上に
SELECT
が、ボリューム上にREAD VOLUME
があり、同時に親カタログとスキーマに上にはUSE CATALOG
およびUSE SCHEMA
を持っている必要があります。クリーン ルームの所有者は、クリーン ルームの有効期間を通じて、これらのアクセス許可を維持する必要があります。
Note
次の手順では、アセットを追加するために既に作成されているクリーン ルームに戻ると仮定します。 初めてクリーン ルームを作成した場合は、ウィザードでデータ資産とノートブックを追加する手順が示されます。 これらの資産を追加する際の実際の UI は、ウィザードの指示に従っているかどうかに関係なく同じです。
資産を追加する手順を以下に示します。
Azure Databricks ワークスペースで、
[カタログ] をクリックします。
[クイック アクセス] ページで、[Clean Rooms] > ボタンをクリックします。
または、
[カタログ] ペインの上部にある 歯車アイコンをクリックし、[Clean Rooms] を選択します。
更新するクリーン ルームの名前を見つけてクリックします。
[+ データ資産の追加] をクリックして、テーブル、ボリューム、またはビューを追加します。
共有するデータ資産を選択し、[データ資産の追加] クリックします。
テーブル、ボリューム、またはビューを共有する場合は、必要に応じてエイリアスを追加できます。 エイリアス名は、クリーン ルームに表示される唯一の名前になります。
テーブルを共有する際は、必要に応じてパーティション句を追加して、テーブルの一部のみを共有することができます。 パーティションを使用して共有する内容を制限する方法の詳細については、「共有するテーブル パーティションを指定する」を参照してください。
Note
フェデレーション テーブル共有のプライベート プレビューに参加するには、Azure Databricks アカウントの担当者にお問い合わせください。 「Lakehouse フェデレーションとは何ですか?」を参照してください。
ノートブックを追加するには、[+ ノートブックの追加] ボタンをクリックし、追加するノートブックを参照します。
必要に応じて、ノートブックに別のノートブック名を指定できます。
クリーン ルームで共有するノートブックは、データのクエリを実行し、自分と他のコラボレーターがクリーン ルームに追加したテーブル、ビュー、ボリュームに対してデータ分析ワークロードを実行します。
ノートブックは暗黙的な承認の原則に基づいて動作します。作成したノートブックを実行することはできません。 コラボレーターが使用するノートブックは自分が作成し、自分が使用するノートブックはコラボレーターが作成します。
結果を含むノートブックを共有すると、それらの結果はコラボレーターと共有されます。
ノートブックを使用して、ノートブックの実行時にコラボレーターのメタストアと一時的に共有される 出力テーブル を作成できます。 Databricks Clean Rooms での出力テーブルの作成と操作を参照してください。
テスト データセットを使用するには、サンプル ノートブックをダウンロードします。
重要
クリーン ルームに追加されたテーブル、ビュー、またはボリュームへのノートブック参照では、クリーン ルームの作成時に割り当てられたカタログ名 (クリーン ルーム作成者によって追加されたデータ資産の場合は "作成者"、招待されたコラボレーターによって追加されたデータ資産の "コラボレーター") を使用する必要があります。 たとえば、作成者が追加したテーブルには
creator.sales.california
という名前が付けられます。同様に、ノートブックで、クリーン ルーム内のデータ資産だったエイリアスが割り当てられ、使用されていることを確認します。