DBFSルートへの接続 外部ロケーション (レガシ)
このページでは、 Databricks File System (DBFSルート storage 外部ロケーションに接続する方法について説明します。 接続後、Unity Catalogを使用してDBFSルートストレージ内のオブジェクトへのアクセスを管理できます。
Databricks はデータをDBFSルート ストレージに格納しないことを推奨していますが、 ワークスペース 従来の慣行のためにそうする場合があります。たとえば、ワークスペースローカルのレガシー Databricks Hive metastore が DBFSルートにデータを保存している可能性があります。 このガイドに従って、最初にDBFSルートへのアクセスを許可するストレージ資格情報オブジェクトを作成し、次にDBFSルートへのパスを定義する外部ロケーションオブジェクトを作成して、DBFSルートに接続します。これらのオブジェクトを使用すると、レガシー Hive metastoreに接続して、チームが Unity Catalogを使用してHive metastoreテーブルを操作できるようにします。フェデレーションHive metastore: Hive metastoreに登録されているテーブルを管理するためのUnity Catalogの有効化 および レガシー ワークスペース Hive metastoreのHive metastoreフェデレーションの有効化を参照してください。
始める前に
ルートの外部ロケーションを作成するには、DBFS Unity CatalogDBFSルートのクラウド ストレージの場所へのアクセスを許可する ストレージ認証情報 を で定義する必要があります。まだお持ちでない場合は、外部ロケーションの作成プロセス中にシステムによって作成できます。
権限の要件 :
- メタストアに対する
CREATE STORAGE CREDENTIAL
権限とCREATE EXTERNAL LOCATION
権限が必要です。 メタストア管理者は、デフォルトによってこれらの特権を持っています。
DBFSルートのストレージ場所のストレージ資格情報が既に存在する場合、外部ロケーションを作成するユーザーは の CREATE STORAGE CREDENTIAL
は必要ありませんが、ストレージ資格情報とメタストアの両方でCREATE EXTERNAL LOCATION
する必要があります。
-
外部ロケーションの作成時にシステムにストレージ資格情報を作成させるには、ワークスペース管理者である必要があります。
DBFSルートのストレージの場所へのアクセスを許可するストレージ資格情報が既に存在し、ストレージ資格情報とメタストアの両方に
CREATE EXTERNAL LOCATION
がある場合は、ワークスペース管理者である必要はありません。
外部ロケーションの作成
カタログエクスプローラを使用して、 DBFSルートの外部ロケーションを作成できます。
-
サイドバーで、「
カタログ 」をクリックします。
-
外部データ > と 外部ロケーションの作成 をクリックします。
-
外部ロケーション名 を入力します。
-
ストレージタイプ で、 DBFSルート を選択します。
URL フィールドと subpath フィールドには、DBFSルートへのクラウド ストレージ パスが入力されます。
DBFSルートの外部ロケーションを作成する場合は、バケット全体へのパスではなく、DBFSルートロケーションへのサブパスを使用する必要があります。URL とサブパスには、 Hive metastore テーブルのデフォルト ストレージの場所である user/hive/warehouse
が事前に入力されています。 DBFSルート内のデータに対するより詳細なアクセス制御が必要な場合は、DBFSルート内のサブパスに対して個別の外部ロケーションを作成できます。
-
DBFSルートのクラウドストレージロケーションへのアクセスを許可するストレージ認証情報を選択するか、何も定義されていない場合は、[ +新しいストレージ認証情報を作成 ]をクリックします。
ストレージ認証情報は、外部ロケーションを保存するときに自動的に作成されます。
-
(オプション)コメントを追加します。
-
(オプション) 詳細オプション をクリックし、 フォールバック モード を有効にします。
フォールバックモードは、レガシーワークロードの移行シナリオを対象としています。 「 外部ロケーションでフォールバックモードを有効にする」を参照してください。
-
作成 をクリックします。
-
[ 権限 ]タブに移動して、外部ロケーションの使用権限を付与します。
- 付与 をクリックします。
- プリンシパル フィールドで ユーザー、グループ、またはサービスプリンシパル を選択し、付与する権限を選択します。
- 付与 をクリックします。
-
(オプション)この外部ロケーションにアクセスできるワークスペースを設定します。
デフォルトを使用すると、この Unity Catalog メタストアを使用するワークスペースのユーザーに、この場所のデータへのアクセス権を付与できます。 そのアクセスを特定のワークスペースに制限できます。 Databricks では、 DBFSルート があるワークスペースへのアクセスを制限することをお勧めします。
「 外部ロケーションを 1 つ以上のワークスペースにバインドする」を参照してください。