Databricks ファイル システム (DBFS) とは

Databricks ファイル システム (DBFS) は、Azure Databricks ワークスペースにマウントされ、Azure Databricks クラスター上で使用できる分散ファイル システムです。 DBFS は、UNIX に似たファイルシステムの呼び出しをネイティブ クラウド ストレージ API 呼び出しにマップするスケーラブルなオブジェクト ストレージ上の抽象化です。

注意

Azure Databricks ワークスペースは DBFS ルート ボリュームでデプロイされ、既定ですべてのユーザーがアクセスできます。 Databricks では、この場所に運用データを格納しないことをお勧めします。

DBFS でできること

DBFS は、クラウド オブジェクト ストレージ URI を相対パスにマッピングすることで利便性をもたらします。

  • クラウド固有の API コマンドではなく、ディレクトリとファイルのセマンティクスを使用してオブジェクト ストレージを操作できる。
  • Azure Databricks ワークスペース内のパスにストレージ資格情報をマップできるようにするために、クラウド オブジェクトストレージの場所をマウントできる。
  • オブジェクト ストレージにファイルを永続化するプロセスが簡略化されるため、クラスターの終了時に仮想マシンとアタッチされたボリューム ストレージを安全に削除できる。
  • クラスター初期化用の init スクリプト、JAR、ライブラリ、構成を格納するための便利な場所を提供する。
  • OSS ディープ ラーニング ライブラリを使用したモデル トレーニング中に作成されたチェックポイント ファイル用に便利な場所を提供する。

注意

DBFS は、FUSE 用の Azure Databricks 実装です。 「Azure Databricks 上のファイルを操作する」を参照してください。

クラウドベースのオブジェクト ストレージ内のファイルを操作する

DBFS には、クラウド オブジェクト ストレージ内のファイルを操作するための多くのオプションが用意されています。

オブジェクト ストレージをマウントする

オブジェクト ストレージを DBFS にマウントすると、ローカル ファイル システム上のオブジェクトと同じように、オブジェクト ストレージ内のオブジェクトにアクセスできるようになります。 マウントにはストレージへのアクセスに必要な Hadoop 構成が格納されるため、コードで、またはクラスター構成時にこれらの設定を指定する必要はありません。

詳細については、「Azure Databricks へのクラウド オブジェクト ストレージのマウント」を参照してください。

DBFS ルートとは

DBFS ルートは、Azure Databricks ワークスペースの既定のストレージ場所であり、Azure Databricks ワークスペースを含むクラウド アカウントでのワークスペース作成の一環としてプロビジョニングされます。 DBFS ルートの構成とデプロイの詳細については、Azure Databricks のクイック スタートを参照してください。

Azure Databricks の一部のユーザーは、DBFS ルートを "DBFS" と呼ぶことがあります。DBFS はクラウド オブジェクト ストレージ内のデータを操作するために使用されるファイル システムであり、DBFS ルートはクラウド オブジェクトストレージの場所であることを区別することが重要です。 DBFS を使用して DBFS ルートを操作しますが、これらは別々の概念であり、DBFS には DBFS ルート以外の多くの用途があります。

DBFS ルートには、ワークスペース内のユーザーによって実行されるさまざまなアクションの既定値として機能する特別な場所が多数含まれています。 詳細については、「DBFS ルートの既定のディレクトリとは」をご覧ください。

DBFS と Unity Catalog の連携方法

Unity Catalog では、組織がクラウド オブジェクト ストレージ内のデータに最小限の特権でアクセスできるように、外部の場所とマネージド ストレージ資格情報の概念が追加されています。 Unity Catalog には、マネージド テーブルの新しい既定のストレージ場所も用意されています。 一部のセキュリティ構成では、Unity Catalog の管理対象リソースと DBFS の両方に直接アクセスできます。 Databricks では、DBFS と Unity Catalog を使用するための推奨事項をまとめています。