Unity カタログメタストアの管理

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

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

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

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

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

  • ワークスペース カタログが作成され、すべてのワークスペース ユーザーに、その中にオブジェクトを作成するために必要な特権が付与されます。 「Unity Catalog の自動有効化」を参照してください。
  • ワークスペース管理者には、カタログや外部の場所など、メタストア レベルのセキュリティ保護可能なオブジェクトを作成するために必要なアクセス許可があります。 「ワークスペースで Unity Catalog が自動的に有効になる場合のワークスペース管理特権」を参照してください。
  • メタストア レベルのストレージがメタストアに対して既に有効になっている場合、ワークスペースはそのストレージを使用できるようになります。 「Unity Catalog の管理されたストレージの場所の指定」を参照してください。
  • メタストア管理者がメタストアに対して定義されている場合、メタストアにアタッチされているすべてのワークスペース内のすべてのセキュリティ保護可能なオブジェクトへのアクセスを管理できます。 「メタストア管理者」を参照してください。
  • メタストアの差分共有設定 (有効または無効) は、メタストアにアタッチされているすべてのワークスペースに適用されます。 「 アカウントの差分共有を設定する (プロバイダー向け)を参照してください。

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

  1. アカウント管理者として、Azure Databricks アカウント コンソールに移動します。
  2. カタログ アイコン [カタログ] をクリックします。
  3. メタストアを選択します。
  4. [構成] タブの [ワークスペースの割り当てで、<region>の新しいワークスペースこのメタストアに自動的に割り当てる] を選択
  5. 確認ダイアログで、 [自動割り当てを有効にする] をクリックします。

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

メタストアレベルのマネージド ストレージは省略可能であり、自動的に作成されるメタストアについては含まれていません。 複数のワークスペースのデータを一元的に格納するデータ分離モデルを使用する場合は、メタストアレベルのストレージをメタストアに追加することをお勧めします。 Delta Sharing を使用してノートブックを共有する場合、または個人用ステージングの場所を使用する Azure Databricks パートナーである場合は、メタストアレベルのストレージが必要です。

また、「Unity Catalog のマネージド ストレージの場所を指定する」も参照してください。

要件

  • Unity Catalog メタストアに少なくとも 1 つのワークスペースがアタッチされている必要があります。
  • 以下の Azure Databricks アクセス許可が必要です。
    • 外部の場所を作成するには、メタストア管理者か、CREATE EXTERNAL LOCATIONCREATE STORAGE CREDENTIAL の特権を持つユーザーである必要があります。
    • メタストア定義にストレージの場所を追加するには、アカウント管理者である必要があります。アカウントでアカウント管理者ロールを有効にする手順については、「最初のアカウント管理者を確立する」を参照してください。
  • 以下の Azure テナント アクセス許可が必要です。
    • Azure Data Lake Storage Gen2 で使用するストレージ アカウントを作成するアクセス許可。 このストレージ アカウントには階層型名前空間が必要です。 「Azure Data Lake Storage Gen2 で使用するストレージ アカウントを作成する」をご覧ください。
    • システム割り当てマネージド ID を保持するための新しいリソースを作成するアクセス許可。 これには、テナント内の任意のサブスクリプションのリソース グループの共同作成者または所有者である必要があります。

手順 1: ストレージの場所を作成する

手順 1 (省略可能): メタストア レベルのマネージド ストレージ用のストレージ コンテナーを作成する」と「手順 2 (省略可能): マネージド ストレージの場所にアクセスするマネージド ID を作成する」の手順に従って、Azure Data Lake Storage Gen2 にストレージ コンテナーを作成し、ストレージ コンテナーにアクセスできるマネージド ID を保持する Azure Databricks アクセス コネクタを作成します。

手順 2: Unity Catalog に外部の場所を作成する

この手順では、先ほど作成した ADLS Gen 2 パスを参照する外部の場所を Unity Catalog に作成します。

  1. ストレージ資格情報を作成します。

    ストレージ資格情報は、「手順 1: ストレージの場所を作成する」で作成した Azure マネージド ID を表します。

    Azure Data Lake Storage Gen2 に接続するためのストレージ資格情報を作成する」の手順に従います。

  2. 前の手順で作成したストレージ資格情報と、「手順 1: ストレージの場所を作成する」で作成した ADLS Gen 2 ストレージ コンテナーを参照する外部の場所を作成します。

    クラウド ストレージを Azure Databricks に接続するための外部の場所を作成する」の手順に従います

  3. 自分自身に外部の場所に対する CREATE MANAGED STORAGE アクセス許可を付与します。

    1. 外部の場所の名前をクリックして、詳細ウィンドウを開きます。
    2. [アクセス許可] タブで [付与] をクリックします。
    3. [<external location> の許可] ダイアログの [プリンシパル] フィールドで自分を選択し、[CREATE MANAGED STORAGE] を選択します。
    4. [許可] をクリックします。

手順 3: メタストアにストレージの場所を追加する

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

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

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

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

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

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

  5. [構成] タブの [ADLS Gen 2 パス] の横にある [設定] をクリックします。

  6. [Set metastore root] (メタストア ルートの設定) ダイアログで、外部の場所の作成に使用した ADLS Gen 2 パスを入力し、[更新] をクリックします。

    このパスは、一度設定した後は変更できません。

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

メタストア管理者は省略可能ですが、メタストアに必要な場合があります。 「メタストア管理者を割り当てる」を参照してください。

メタストアを削除する

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

警告

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

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

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

  1. メタストア管理者として、[アカウント コンソール] にログインします。
  2. カタログ アイコン [カタログ] をクリックします。
  3. メタストアの名前をクリックします。
  4. [構成] タブで、右上にある 3 つのボタン メニューをクリックし、[削除] を選択します。
  5. 確認ダイアログで、メタストアの名前を入力し、[削除] をクリックします。