Unity Catalog メタストアを管理する

この記事では、Databricks アカウントで Unity Catalog メタストアの動作を更新、削除、管理する方法について説明します。

Unity Catalog メタストアとその作成方法については、「 Unity Catalog メタストアを作成する」を参照してください。

メタストアを新しいワークスペースに自動的に割り当てるようにする

既存の Unity Catalog メタストアをそのメタストアのリージョン内の新しいワークスペースに自動的に割り当てるには、アカウント管理者がメタストアのワークスペースの自動割り当てを有効にできます。 この設定が選択されていない場合、メタストアと同じリージョンにワークスペースを作成する管理者は、Unity Catalog のワークスペースを手動で有効にし、ドロップダウンからメタストアを選択する必要があります。

アカウント管理者は、このオプションを有効にする前に、新しいワークスペースに対する次の影響を理解しておく必要があります。

自動割り当てを有効にするには:

  1. アカウント管理者として、Databricks アカウント コンソールに移動します。

  2. [カタログアイコンカタログ]をクリックします。

  3. メタストアを選択します。

  4. [構成] タブの [ワークスペースの割り当て] で、[<region>の新しいワークスペースをこのメタストアに自動的に割り当てる] を選択します。

  5. 確認ダイアログで、[ 自動割り当てを有効にする] をクリックします。

マネージド ストレージを既存のメタストアに追加する

メタストア レベルの管理ストレージはオプションであり、自動的に作成されたメタストアには含まれません。 複数のワークスペースのデータを一元的に格納するデータ分離モデルを好む場合は、メタストア レベルのストレージをメタストアに追加できます。 Delta Sharing を使用してノートブックを共有する場合、または個人のステージング場所を使用する Databricks パートナーである場合は、メタストア レベルのストレージが必要です。

「Unity Catalog で管理されたストレージの場所を指定する」も参照してください。

要件

  • Unity Catalog メタストアには、少なくとも 1 つのワークスペースがアタッチされている必要があります。

  • Databricks のアクセス許可が必要です。

    • 外部ロケーションを作成するには、メタストア管理者であるか、 CREATE EXTERNAL LOCATION 権限と CREATE STORAGE CREDENTIAL 権限を持つユーザーである必要があります。

    • ストレージの場所をメタストア定義に追加するには、アカウント管理者である必要があります。

  • 必要なAWSアクセス許可: S3バケット、IAMロール、IAM ポリシー、およびアカウント間の信頼関係を作成する機能。

ステップ 1: 保存場所を作成する

「ステップ 1 (オプション): AWS でメタストアレベルのマネージドストレージ用の S3 バケットを作成する」の手順に従って、メタストアと同じリージョンの AWS アカウントに専用の S3 バケットを作成します。

ステップ 2: Unity Catalog で外部ロケーションを作成する

このステップでは、作成したばかりのバケットを表す外部ロケーションを Unity Catalog に作成します。

  1. メタストアにアタッチされているワークスペースを開きます。

  2. カタログアイコン「カタログ 」(Catalog) をクリックしてカタログエクスプローラーを開きます。

  3. [+ 追加] ボタンをクリックし、[外部ロケーションの追加] を選択します。

  4. [新しい外部ロケーションを作成]ダイアログで、[AWSクイックスタート(推奨)]をクリックし、[次のページ]をクリックします。

    AWS クイックスタートでは、外部ロケーションが構成され、ストレージ資格情報が作成されます。[手動] オプションを使用する場合は、IAM S3バケットへのアクセス権を付与する ロールを手動で作成し、ストレージ認証情報を自分で作成Databricks 必要があります。

  5. [クイックスタートで外部ロケーションを作成]ダイアログで、[バケット名]フィールドにS3バケットへのパスを入力します。

  6. Generate new token 」をクリックして、 Databricks と AWS アカウント間の認証に使用する個人用アクセストークンを生成します。

  7. トークンをコピーし、 [クイックスタートで起動]をクリックします。

  8. 起動する AWS CloudFormation テンプレート ( [クイック作成スタック] というラベル) で、トークンを [Databricksアカウント資格情報]フィールドに貼り付けます。

  9. ページ下部の利用規約に同意します (AWS CloudFormation がカスタム名で IAM リソースを作成する可能性があることを認めます)。

  10. [スタックを作成] をクリックします。

    CloudFormation テンプレートが Databricksで外部ロケーションオブジェクトの作成を完了するまでに数分かかる場合があります。

  11. Databricksワークスペースに戻り、Catalog Explorer外部ロケーション ペインに移動します。

    カタログエクスプローラーの左側の表示枠で、下にスクロールして[外部データ(External Data)] > [外部ロケーション(External location)]の順にクリックします。

  12. 新しい外部ロケーションが作成されたことを確認します。

    自動的に生成される外部ロケーションは、 db_s3_external_databricks-S3-ingest-<id>という命名構文を使用します。

  13. 外部ロケーションに対する CREATE MANAGED STORAGE 権限を自分自身に付与します。

    1. 外部ロケーション名をクリックして、詳細ペインを開きます。

    2. [アクセス許可] タブで、[許可] をクリックします。

    3. <external location>の付与」ダイアログで、「プリンシパル」フィールドで自分自身を選択し、「CREATE MANAGED STORAGE」を選択します。

    4. [付与] をクリックします。

ステップ 3: メタストアに格納場所を追加する

メタストア ストレージ バケットを表す外部ロケーションを作成したら、それをメタストアに追加できます。

  1. アカウント管理者として、アカウントコンソールにログインします。

  2. [カタログアイコンカタログ]をクリックします。

  3. メタストア名をクリックします。

  4. 自分がメタストア管理者であることを確認します。

    そうでない場合は、[ 編集 ] をクリックし、自分自身をメタストア管理者として割り当てます。 この手順が完了したら、自分自身の割り当てを解除できます。

  5. [ 設定 ] タブで、[ S3 バケット パス] の横にある [ 設定] をクリックします。

  6. [ メタストア ルートの設定 ] ダイアログで、外部ロケーションの作成に使用した S3 バケット パスを入力し、[ 更新] をクリックします。

    このパスは、一度設定すると変更できません。

メタストア管理者を追加する

メタストア管理者はオプションですが、メタストアに 1 つ必要になる場合があります。 「 メタストア管理者を割り当てる」を参照してください。

メタストアを削除する

Databricks アカウントを閉鎖する場合、または Unity Catalog メタストアによって管理されているデータへのアクセスを削除する別の理由がある場合は、メタストアを削除できます。

警告

メタストアによって管理されているすべてのオブジェクトは、Databricks ワークスペースを使用してアクセスできなくなります。 この操作は元に戻せません。

マネージドテーブルの データとメタデータは、30日後に自動的に削除されます。 クラウド ストレージ内の外部テーブル データは、メタストアの削除の影響を受けません。

メタストアを削除するには:

  1. メタストア管理者として、 アカウント コンソールにログインします。

  2. [カタログアイコンカタログ]をクリックします。

  3. メタストア名をクリックします。

  4. [構成] タブで、右上にある 3 つのボタン メニューをクリックし、[削除] を選択します。

  5. 確認ダイアログで、メタストアの名前を入力し、[ 削除] をクリックします。