📕
Azure DatabricksのUnity Catalogを有効化する方法
Azure Databricksの検証環境でUnity Catalogを有効にしてほしいと依頼があったので、その手順のメモです。
ADLS Gen2 ストレージを準備
Unity Catalog のルートストレージになります。
下記はAzure CLIのコマンドになりますが、手動でやるならAzure Portalでの作業になります。
ストレージアカウント作成(Azure CLI)
# リソースグループ作成
az group create -n rg-databricks -l japaneast
# ストレージアカウント作成 (Hierarchical namespace 有効)
az storage account create \
-n dbrucstorage123 \
-g rg-databricks \
-l japaneast \
--sku Standard_LRS \
--kind StorageV2 \
--hierarchical-namespace true
# コンテナー作成
az storage container create \
--account-name dbrucstorage123 \
--name unitycatalog
# ディレクトリ作成
az storage fs directory create \
--account-name dbrucstorage123 \
--file-system unitycatalog \
--name uc-metastore
Managed ID作成
# リソース作成
az identity create -g <resource-group> -n <managed-id-name>
# managed-identity-id確認
az identity show -g <resource-group> -n <managed-id-name> --query principalId -o tsv
ここで出力されたものが、<managed-identity-id>
RBAC付与
az role assignment create \
--assignee <managed-identity-id> \
--role "Storage Blob Data Contributor" \
--scope "/subscriptions/<sub-id>/resourceGroups/rg-databricks/providers/Microsoft.Storage/storageAccounts/dbrucstorage123"
Azure PortalでAzure Databricks用のアクセスコネクタを作成
Azure Databricks Account ConsoleでUnity Catalogを有効化
にアクセス。Workspace Consoleとは別のアカウント管理のページです。
- 左メニューでCatalog -> メタストアを作成するボタンを押す
※既にメタストアがあったため、初期状態は違うかもしれないです。
- このページに入力していきます。
リージョン
メタストアのリージョンを選択します。このメタストアに割り当て可能なのは、選択したリージョンのワークスペースのみになります。
という注釈以外にも、1リージョンにつきメタストアは1つのようです。
⚠️マークがついている既にメタストアがあるリージョンは選べません。
ADLS Gen2パス
abfss://unitycatalog@dbrucstorage123.dfs.core.windows.net/unitycatalog
アクセスコネクターID
Azure Portalで作成したAzure Databricks用のアクセスコネクタのリソースIDを入れます。
ユーザーが割り当てたマネージドアイデンティティID
画面にはないですが、Azure PortalのManaged IDのIDが求められます。下記みたいなものです。
/subscriptions/<sub-id>/resourcegroups/rg-databricks/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-id-name>
メタストアが作成できると、ワークスペースを割り当てられます。
この辺のUIは直感的なので、説明は割愛しますが、ワークスペースを割り当てた際に、
「Unity Catalogを有効にしますか?」のダイアログが表示され、許可しました。
Azure Databricks Workspace Consoleで確認すると対象のワークスペースに、カタログ情報が追加されていそうです。
Discussion
ありがとうございましたm(__)m
FreeEditionでは特に何もせず使えていたのですが、おそらくFreeEditionがすごいんですね。