このページでは、新しい Azure Databricks ワークスペースのワークスペース管理者向けに、Unity Catalog の初期セットアップについて説明します。内容は次のとおりです。
- ワークスペースが Unity カタログに対して有効になっていることを確認する
- ワークスペースのアクセスと ID の管理
- Unity カタログに準拠したコンピューティング リソースの作成
- データのカタログとスキーマの作成
- ユーザーに必要な特権を付与する
始める前の準備
開始する前に、次の Unity カタログの概念を理解しておいてください。
- メタストア: 1 つのクラウド リージョンにスコープが設定された最上位の Unity カタログ コンテナー。 カタログ、ストレージ資格情報、外部の場所など、 セキュリティ保護可能なすべてのオブジェクトが保持されます。 メタストアを参照してください。
- カタログ: メタストア内の最上位レベルのデータ コンテナー オブジェクト。 カタログにはスキーマが保持され、テーブル、ビュー、ボリューム、関数が含まれます。 カタログを参照してください。
- 管理者ロール: Unity カタログには、アカウント管理者、ワークスペース管理者、メタストア管理者の 3 つの主要な管理者ロールがあり、それぞれスコープと責任が異なります。 Unity Catalog の管理者特権に関する記事を参照してください。
次のものも必要です:
- Premium プランのAzure Databricks ワークスペース。
-
ワークスペース管理者 特権。 次の場合は 、アカウント管理者 特権が必要になる場合があります。
- ワークスペースにコンピューティング リソースがまだない場合は、「手順 1: ワークスペースが Unity カタログに対して有効になっていることを確認する」のアカウント コンソールを使用して Unity カタログが有効になっていることを確認するには、アカウント管理者特権が必要です。
- ワークスペースが Unity カタログ メタストアにアタッチされていない場合は、それをアタッチするためにアカウント管理者特権が必要です。
- メタストアが存在しない場合は、アカウント管理者特権を使用して作成する必要があります。
手順 1: ワークスペースが Unity カタログに対して有効になっていることを確認する
次のいずれかの方法を使用して、ワークスペースが Unity カタログ メタストアにアタッチされていることを確認します。
アカウント コンソールを使用する
この方法では、アカウント管理者特権が必要です。
- Azure Databricks アカウント管理者として、アカウント コンソールにログインします。
- [
ワークスペース。
- ワークスペースを見つけて、[メタストア] 列を確認します。 メタストア名が存在する場合、ワークスペースは Unity カタログに対して有効になります。
SQL クエリを実行する
この方法では管理者特権は必要ありませんが、Unity カタログに準拠したコンピューティング リソースが必要です。 手順 3: Unity カタログに準拠したコンピューティングを作成 する方法について、UC 準拠のコンピューティング リソースを作成する手順を示します。
SQL クエリ エディターまたはコンピューティング リソースにアタッチされているノートブックで、次のコマンドを実行します。
SELECT CURRENT_METASTORE();
クエリからメタストア ID が返された場合、ワークスペースは Unity カタログに対して有効になります。
ワークスペースが Unity カタログに対して有効になっていない場合は、「Azure Databricks ワークスペースを Unity カタログにアップグレードするを参照してください。
手順 2: ワークスペースのアクセスと ID を管理する
ワークスペース管理者は、ユーザーとグループの追加、管理者ロールの割り当て、サービス プリンシパルの管理を行うことができます。
ユーザーの追加
このワークスペースにアクセスする必要がある個々のユーザーを追加します。 手順については、「 ユーザーの管理」を参照してください。
ユーザーをグループに整理する
Databricks では、個々のユーザーではなく、グループを使用してアクセスを管理することをお勧めします。 グループに権限を付与すると、すべてのメンバーに適用されます。これにより、チームの成長に伴う管理オーバーヘッドが軽減されます。
ID プロバイダー (IdP) : グループ メンバーシップが自動的に同期されるように、自動 ID 管理または SCIM プロビジョニングを使用してグループをAzure Databricksに同期します。 自動 ID 管理を参照してください。- グループがまだない場合: ワークスペース管理者として、設定>ID とアクセス>グループ の横にある 管理 に移動して、アカウントレベルのグループを作成します。 「グループの管理」を参照してください。
管理者ロールを割り当てる
ワークスペース管理者 は、ユーザーの追加と削除、コンピューティングの管理、ワークスペース設定の構成、データへのアクセスの許可など、日常的な管理タスクを実行できます。 このロールは、中央データ プラットフォームのメンバー、またはワークスペースの保守を担当する IT チームのメンバーに適しています。 このロールを受け取るユーザーを選択する。 ワークスペース管理者は、ワークスペースのリソースと設定に幅広くアクセスできます。
通常、ワークスペース管理者ロールは、割り当てる必要がある唯一の管理者ロールです。 必要に応じて、特殊なユース ケースに メタストア管理者 を割り当てることができます。 たとえば、次の作業を行う必要がある場合は、専用のデータ ガバナンス チームまたは少数の上級プラットフォーム エンジニア グループにこのロールを割り当てることができます。
- カタログの作成をワークスペース以外の管理者に委任します。
- init スクリプトと JAR 許可リストを管理します。
- Delta 共有を通じて共有データを受け取る。
- チーム メンバーが離れたときにオブジェクトの所有権を譲渡します。
これらのロールを割り当てる手順については、 Unity カタログの管理者特権に関する記事を参照してください。
手順 3: Unity カタログに準拠したコンピューティングを作成する
Unity カタログ ワークロードを実行するには、コンピューティング リソースが Unity カタログのセキュリティ要件を満たしている必要があります。 次の表に、準拠しているコンピューティングの種類を示します。
| コンピューティングの種類 | UC 準拠 |
|---|---|
| SQL Warehouse | はい |
| サーバーレス コンピューティング (ノートブック、ジョブ、パイプライン) | はい |
| クラスター - シングル ユーザー アクセス モード | はい |
| クラスター - 共有アクセス モード | はい |
| クラスター - 分離共有アクセス モードなし | いいえ |
UC 準拠のコンピューティングを作成するには:
- SQL ウェアハウス: 「SQL ウェアハウスの作成」を参照してください。
- サーバーレス コンピューティング: サーバーレス コンピューティングへの接続を参照してください。
- クラスター: クラスターを構成するときに、アクセス モードとして [単一ユーザー ] または [ 共有] を選択します。 「アクセス モード」を参照してください。
ワークスペース管理者は、クラスターの作成を管理者のみに制限することも、クラスター ポリシーを使用してユーザーが独自の Unity カタログ準拠クラスターを作成できるようにすることもできます。 「コンピューティングのアクセス許可」と「コンピューティング ポリシーの作成と管理」を参照してください。
手順 4: カタログとスキーマを作成する
カタログは、Unity カタログのデータ分離の主要な単位です。 すべてのスキーマ、テーブル、ボリューム、ビュー、および関数はカタログに格納されます。
新しいカタログを作成するタイミング
新しいワークスペースはワークスペース カタログで自動的にプロビジョニングされます。既定では、このカタログにはワークスペースの名前が付けられます。 ワークスペース カタログがあるかどうかを確認するには、[データ] アイコンをクリックサイドバーのカタログで、ワークスペース名に一致するカタログを探します。 存在する場合は、すぐに追加のカタログを作成する必要がない場合があります。
時間の経過と同時に、次のような論理的な境界に従って、使用量が増加するにつれて新しいカタログを作成することを検討してください。
- チームまたはビジネス ユニット: エンジニアリング、財務、およびマーケティング用の個別のカタログ
-
環境:
dev、staging、およびprodカタログを分離して、開発を運用データから分離する - プロジェクト: 主要なデータ製品またはイニシアティブごとの専用カタログ
組織のデータ境界が既に明確に定義されている場合は、ここでカタログを作成できます。
カタログの作成
カタログを作成するには、次の SQL を実行します。
CREATE CATALOG IF NOT EXISTS <catalog-name>;
Note
このカタログ内のマネージド データは、メタストアの既定のマネージド ストレージの場所に格納されます。 別の場所を使用するには、 MANAGED LOCATIONを指定します。
Unity カタログを使用したクラウド オブジェクト ストレージへの接続を参照してください。
次に、テーブルやその他のデータ オブジェクトを整理するスキーマを作成します。
CREATE SCHEMA IF NOT EXISTS <catalog-name>.<schema-name>;
詳細な手順とカタログ エクスプローラーの使用方法については、「カタログの 作成 」と 「スキーマの作成」を参照してください。
手順 5: ユーザーに権限を付与する
Unity カタログでは、ユーザーは既定でデータにアクセスできなくなります。 ワークスペース管理者は、ワークスペース全体でセキュリティ保護可能なオブジェクトに特権を付与できます。 Databricks では、個々のユーザーではなくグループに特権を付与することをお勧めします。 これにより、チームの成長に合わせてアクセスを管理しやすくなります。
データ検出を有効にする
Azure Databricksでは、すべてのカタログに対する BROWSE 特権を All account users グループに付与することをお勧めします。
BROWSE を使用すると、基になるデータへのアクセスを許可することなく、オブジェクトが存在することを確認し、カタログ エクスプローラーでメタデータを表示できます。 これにより、ユーザーはデータを検出し、アクセスを要求できます。管理者はアクセス許可を事前に付与する必要はありません。
GRANT BROWSE ON CATALOG <catalog-name> TO `account users`;
データ アクセスを許可する
Unity カタログのデータにアクセスするには、通常、操作に対する特定の特権 (テーブルを読み取るための SELECT など) と適切な 使用権限 (親カタログでの USE CATALOG 、親スキーマの USE SCHEMA など) が必要です。
Unity カタログのアクセス許可モデルの概念を参照してください。
これらの権限は、特定のカタログとスキーマへのアクセスを必要とするユーザーとグループにのみ付与します。 たとえば、スキーマへの読み取り専用アクセス権を付与するには、次の SQL を使用します。
GRANT USE CATALOG ON CATALOG <catalog-name> TO `<group-name>`;
GRANT USE SCHEMA ON SCHEMA <catalog-name>.<schema-name> TO `<group-name>`;
GRANT SELECT ON SCHEMA <catalog-name>.<schema-name> TO `<group-name>`;
読み取り/書き込みアクセスの場合:
GRANT USE CATALOG ON CATALOG <catalog-name> TO `<group-name>`;
GRANT USE SCHEMA ON SCHEMA <catalog-name>.<schema-name> TO `<group-name>`;
GRANT SELECT, MODIFY ON SCHEMA <catalog-name>.<schema-name> TO `<group-name>`;
アクセス パターンは時間の経過と同時に変化します。 Unity カタログで権限を管理する場合は、次のページを参照として使用します。
- Unity カタログのアクセス許可モデルの概念: オブジェクト階層、所有権、特権の継承、および Unity カタログのアクセス許可モデルのしくみについて説明します。
- Unity カタログ権限リファレンス: Unity カタログ内のすべての権限、適用されるセキュリティ保護可能なオブジェクト、および許可される内容を一覧表示します。
- Unity カタログでの権限の管理: SQL またはカタログ エクスプローラーを使用して、セキュリティ保護可能なオブジェクトに対する権限を付与、取り消し、検査する方法について説明します。
設定チェックリスト
5 つの手順をすべて完了すると、ワークスペースに Unity カタログが設定され、ユーザーはデータの操作を開始できます。 次のチェックリストを使用して、すべてが適切に配置されていることを確認します。
- [ ] Unity カタログが有効になっている。つまり、Unity カタログメタストアがワークスペースにアタッチされます。 「手順 1: ワークスペースが Unity Catalog で有効になっていることを確認する」を参照してください。
- [ ] ユーザーはワークスペースに追加され、適切なロールを持ちます。 「手順 2: ワークスペースのアクセスと ID を管理する」を参照してください。
- [ ] Unity カタログに準拠したコンピューティングを使用できます。 「手順 3: Unity カタログに準拠したコンピューティングを作成する」を参照してください。
- [ ] カタログとスキーマは、データを整理するために作成されます。 「手順 4: カタログとスキーマを作成する」を参照してください。
- [ ] ユーザーは、目的のカタログにアクセスできます。 「手順 5: ユーザーに権限を付与する」を参照してください。
次のステップ
Unity カタログを設定すると、より高度なガバナンス機能のワークスペースへの適用を開始できます。
属性ベースのアクセス制御
属性ベースのアクセス制御 (ABAC) を使用すると、データの属性とアクセスするユーザーに基づいて、動的できめ細かいアクセス ポリシーを定義できます。 テーブルごとにアクセス許可テーブルを管理する代わりに、行レベルのフィルター処理と列レベルのマスクを自動的に適用するポリシーを記述します。 たとえば、特定のリージョン外のユーザーから機密性の高い列を非表示にしたり、特権のないロールの PII をマスクしたりできます。
データの分類
データ分類 では、AI エージェントを使用してカタログを自動的にスキャンし、PII、財務情報、資格情報などの機密データにタグを付けます。 分類後、タグは ABAC ポリシーと直接統合できるため、オブジェクトによってアクセス オブジェクトを管理するのではなく、実際にデータに含まれている内容に基づいてガバナンス制御を適用できます。
データ品質の監視
データ品質の監視 では、スキーマ内のすべてのテーブルの異常検出と、テーブル レベルでのデータ プロファイリングが提供されます。 異常検出は、過去のデータパターンを使用して鮮度と完全性を自動的に監視し、手動設定なしで問題を検出します。 データ プロファイルでは、時間の経過と同時に統計分布がキャプチャされるため、データの整合性を追跡し、予期しない変更に対するアラートを設定できます。
Unity AI Gateway を使用した AI ガバナンス
Unity AI Gateway は 、Unity カタログ のガバナンスを AI に拡張します。 LLM エンドポイント、エージェント、および MCP サーバーのエンタープライズ ガバナンスを提供し、統合された UI 内のすべての AI 対話にアクセス制御、監査ログ、および可観測性を実装できます。