メインコンテンツまでスキップ

Databricksワークスペースで使用されているHive metastoreへのアクセスを無効にする

このページでは、Hive metastore Databricksワークスペースで使用される従来の (ワークスペースローカルHive metastore か外部(Hive metastore を含む) かどる)AWSGlue への直接アクセスを無効にする方法について説明します。Unity Catalog移行を完了した場合、またはHive metastoreを Unity Catalogによって管理されるフォーリンカタログとしてフェデレーションした場合は、単純なワークスペース管理設定を使用して、ユーザーがUnity CatalogをバイパスしてHive metastoreに登録されているテーブルにアクセスするのを防ぐことができます。

Hive metastore のデータは Unity Catalogによって管理されません。Hive metastore への直接アクセスを無効にすることは、Unity Catalog に移行し、Unity Catalog データガバナンスを最大限に活用するための重要なステップです。直接アクセスを無効にし、Hive metastore フェデレーションを利用して、Hive metastoreによって管理されているテーブルのクエリを続行できます。Hive metastoreテーブルは、ワークスペースの Hive metastoreへの直接アクセスを無効にする前または後にフェデレーションできます。「既存のワークスペースをUnity Catalog およびHive metastore フェデレーションにアップグレードする:Unity Catalog に登録されたテーブルを管理するための の有効化 」を参照してください。Hive metastore

重要

Unity Catalogに移行した後でも、明示的にHive metastoreアクセスを無効にしない限り、 Databricksコンピュート クラスターはHive metastoreに接続します。 Hive metastoreメンテナンスがUnity Catalogワークロードに影響を与えないようにするには、すべての クラスター とワークロードのHive metastoreへの直接アクセスを一度に無効にする( Hive metastoreへのすべての直接アクセスを無効にする)か、 Spark構成を使用して クラスター ごとにアクセスを無効にする( Hive metastoreへのすべての直接アクセスを無効にする)ことができます。

新しいワークスペースのアカウント レベルで Hive metastore へのアクセスを無効にするには、[ レガシ機能を無効にする] アカウント設定を使用します。

始める前に: レガシ メタストアはいつ無効にする必要がありますか?

レガシー Hive metastoreを無効にする前に、次の条件を満たす必要があります。

  • レガシ メタストアに登録されているすべてのテーブルを Unity Catalogに移行した、あるいは、常に Unity Catalog を使用しており、レガシ Hiveメタストアは使用していない。
  • レガシ メタストアに登録されているテーブルの使用をユーザーに停止させる必要があります。
  • すべてのジョブを Databricks Runtime 13.3 LTS 以降にアップグレードしました。

従来のメタストアを無効にするとどうなりますか?

従来のメタストアを無効にした後は、次の操作を行います。

  • Hive metastore に登録されているテーブルに対して実行中のジョブは失敗します。

  • フォールバック は無効です。

  • 13.3 より前の Databricks Runtime バージョンで実行されるジョブは失敗します。

    現在実行中のジョブは、終了するまで動作し続けますが、これらのクラスターでの再起動は失敗します。

  • レガシー 見出しとhive_metastoreカタログが「カタログエクスプローラ」ブラウザペインから消えます。

  • hive_metastoreカタログの内容を表示しようとする SQL コマンドは失敗します。

注記

従来のアクセスを無効にしても、ユーザーはクラスターで使用可能なインスタンスプロファイルやサービスプリンシパルなどのクラスターレベルの認証情報を使用できなくなります。 Databricks では、このような資格情報をクラスターから削除することをお勧めします。

分離なし共有 クラスターでは、従来の Hive metastore の無効化設定は考慮されません。 ユーザーがこのようなクラスターを作成および使用しないようにするには、ワークスペースの ユーザー分離の強制 設定を有効にします。 ワークスペースでのユーザー分離クラスターの種類の適用を参照してください。

Hive metastoreへの直接アクセスをすべて無効にする

ワークスペースのレガシー Hive metastore を無効にするには、 ワークスペース 管理者設定を使用します。

  1. ワークスペース管理者として、Databricksワークスペースにログインします。
  2. 右上のユーザープロファイルメニューをクリックし、メニューから[ 設定 ]を選択します。
  3. ワークスペース管理者 > セキュリティ に移動します。
  4. 従来のアクセスを無効にする無効: 従来のアクセス機能は使用できません に設定します。
  5. 新しい設定が有効になったことを確認するには、約 5 分待ちます。
  6. すべての稼働中のクラスターを再起動します。

個々のコンピュート クラスターへのアクセスを無効にする

Hive metastoreへの直接アクセスをクラスターごとに段階的に無効にすることもできます。 このアプローチはUnity Catalog移行中に、ワークスペース全体で無効にできるようになるまでHive metastoreへの依存を段階的に減らしたい場合に役立ちます。

直接アクセスを無効にするには、クラスターで次のSpark 構成を設定します。

spark.databricks.unityCatalogOnlyMode True
spark.databricks.sql.initial.catalog.namespace <catalog-name>

<catalog-name> 、メタストア内に存在する Unity Catalog カタログの名前に置き換えます。Unity カタログのみのモードを有効にすると、クラスターはhive_metastoreデフォルトのカタログとして使用できなくなるため、初期カタログも設定する必要があります。