この記事では、Unity Catalog データ ガバナンス モデルを使用して、Azure Databricks でテーブルを作成し、アクセス許可を付与する簡単なチュートリアルを提供します。 2023 年 11 月 9 日の時点で、新しいアカウントのワークスペースは Unity カタログに対して自動的に有効になり、すべてのユーザーがこのチュートリアルを完了するために必要なアクセス許可が含まれています。
ワークスペースが Unity カタログに対して有効になっているかどうかわからない場合は、「 Unity カタログの概要」を参照してください。 Unity Catalog データ オブジェクトについて理解したい場合は、「Unity Catalog とは」を参照してください。
この記事はユーザーを対象としていますが、ワークスペース管理を新しく担当する管理者にも有意義な場合があります。
始める前に
この記事で説明されているタスクを実行するには、次のものが必要です。
- Unity Catalog が自動的に有効になる Azure Databricks ワークスペース
- コンピューティング リソースにアタッチするアクセス許可 「 Connect to all-purpose and jobs computeを参照してください。
手順 1: 最初のテーブルを作成する
Unity Catalog には、データ オブジェクト用の 3 レベルの名前空間が含まれています: catalog.schema.table
。 この例では、ワークスペース カタログと department
スキーマ (データベース) に default
という名前のテーブルを作成するノートブックを実行します。
注
ワークスペース カタログは、すべてのユーザーがアクセスできるワークスペースで作成された既定のカタログです。 これはワークスペースと名前を共有します。
SQL または Databricks Explorer UI を使用して、宣言によってテーブルへのアクセスを定義できます。
サイドバーで、[+ 新規]>[ノートブック] の順にクリックします。
ノートブックの言語として
SQL
を選択します。[接続] をクリックし、ノートブックをコンピューティング リソースにアタッチします。
次のコマンドをノートブックに追加して実行します (
<workspace-catalog>
はワークスペース カタログの名前に置き換えます)。USE CATALOG <workspace-catalog>
CREATE TABLE IF NOT EXISTS default.department ( deptcode INT, deptname STRING, ___location STRING );
INSERT INTO default.department VALUES (10, 'FINANCE', 'EDINBURGH'), (20, 'SOFTWARE', 'PADDINGTON');
サイドバーで、[データ] アイコンをクリック
カタログ を作成し、ワークスペース カタログ (
<workspace-name>
) とdefault
スキーマを検索します。ここで、新しいdepartment
テーブルが見つかります。
手順 2: テーブルのアクセス許可を管理する
元のテーブル作成者はテーブル の所有者であり、他のユーザーにテーブルの読み取りまたは書き込みのアクセス許可を付与できます。 所有権を譲渡することもできますが、ここではこれを行いません。 Unity Catalog の特権とアクセス許可のモデルの詳細については、「Unity Catalog の特権の管理」を参照してください。
UI を使用してアクセス許可を付与する
UI を使用してテーブルに対するアクセス許可をユーザーに付与するには、次のことを行います。
- カタログ エクスプローラーでテーブル名をクリックしてテーブルの詳細ページを開き、[アクセス許可] タブに移動します。
- [許可] をクリックします。
-
[Grant on] (許可) ダイアログで、次の手順を実行します。
- アクセス許可を付与するユーザーとグループを選択します。
- 付与する特権を選択します。 この例の場合は、
SELECT
(読み取り) アクセス許可を割り当て、[許可] をクリックします。
SQL ステートメントを使用してアクセス許可を付与する
これらのアクセス許可は、Azure Databricks ノートブックまたは SQL クエリ エディターで次の SQL ステートメントを使用して付与することもできます。 この例では、data-consumers
と呼ばれるグループにテーブルに対するアクセス許可を付与します。
GRANT SELECT ON default.department TO `data-consumers`;
次のステップ
各項目の詳細情報