ボリューム内のファイルとワークスペース ファイルに関する推奨事項
Databricks にデータまたはファイルをアップロードまたは保存するときに、Unity Catalog ボリュームまたはワークスペース ファイルを使用してこれらのファイルを保存することを選択できます。 この記事には、これらの場所を使用するための推奨事項と要件が含まれています。 ボリュームとワークスペース ファイルの詳細については、「 Unity Catalog ボリュームとは」 および「 ワークスペース ファイルとは」を参照してください。
Databricks では、 Unity Catalog ボリュームを使用してデータ、ライブラリ、およびアーティファクトを構築することをお勧めします。 ノートブック、SQL クエリ、およびコード ファイルをワークスペース ファイルとして保存します。 ワークスペース ファイル ディレクトリを Git フォルダーとして構成して、リモート Git リポジトリと同期できます。 「Databricks Git フォルダーの Git 統合」を参照してください。テスト シナリオで使用される小さなデータ ファイルは、ワークスペース ファイルとして格納することもできます。
次の表は、ファイルの種類や機能のニーズに応じて、ファイルに関する具体的な推奨事項を示しています。
Databricks File System (DBFS) はファイル ストレージにも使用できますが、すべてのワークスペース ユーザーが DBFS 内のファイルにアクセスできるため、お勧めしません。 DBFSを参照してください。
ファイルの種類
次の表に、ファイルの種類に関するストレージの推奨事項を示します。 Databricks では、この表で例として提供されているもの以外にも、多くのファイル形式がサポートされています。
ファイルタイプ | 推奨事項 |
---|---|
Databricks オブジェクト (ノートブックやクエリなど) | ワークスペース ファイルとして保存 |
Parquet ファイルや ORC ファイルなどの構造化データファイル | Unity Catalogボリュームで保存 |
テキストファイル( | Unity Catalogボリュームで保存 |
画像ファイル( | Unity Catalogボリュームで保存 |
アドホックまたは早期のデータ探索に使用される生データファイル | Unity Catalogボリュームで保存 |
運用データ (ログ ファイルなど) | Unity Catalogボリュームで保存 |
ZIPファイルなどの大きなアーカイブファイル( | Unity Catalogボリュームで保存 |
Python ファイル ( | ワークスペース ファイルとして格納します (該当する場合は、ノートブックやクエリなどの他の関連オブジェクトと共に格納します)。 Databricks では、これらのファイルのバージョン管理と変更追跡のために 、これらのファイルを Git フォルダー で管理することをお勧めします。 |
Python wheels ( | Unity Catalogボリュームで保存 |
設定ファイル | ワークスペース間で必要な構成ファイルは Unity Catalog ボリュームに格納しますが、 Git フォルダー内のプロジェクト ファイルの場合はワークスペース ファイルとして保存します。 |
機能の比較
次の表は、 ワークスペース ファイルと Unity Catalog ボリュームの機能を比較したものです。
機能 | ワークスペース ファイル | Unity Catalog ボリューム |
---|---|---|
ファイルアクセス | ワークスペース ファイルは、同じワークスペース内でのみ相互にアクセスできます。 | ファイルは、ワークスペース間でグローバルにアクセスできます。 |
プログラムによるアクセス | ファイルには、次の方法でアクセスできます。
| ファイルには、次の方法でアクセスできます。 |
Databricksアセットバンドル | デフォルトでは、バンドル内のすべてのファイル (ライブラリやノートブックやクエリなどの Databricks オブジェクトを含む) は、ワークスペース ファイルとして安全にデプロイされます。 権限はバンドル設定で定義されます。 | バンドルは、ライブラリーがワークスペース・ファイルのサイズ制限を超えたときに、ボリューム内に既に存在するライブラリーを含めるようにカスタマイズできます。 「Databricks Asset Bundles ライブラリの依存関係」を参照してください。 |
ファイルのアクセス許可レベル | パーミッションは、ファイルが Git フォルダ内にある場合は Git フォルダ レベルにあり、そうでない場合はファイルレベルでパーミッションが設定されます。 | 権限はボリュームレベルです。 |
権限管理 | アクセス許可はワークスペース ACL によって管理され、 含まれているワークスペースに限定されます。 | メタデータとアクセス許可は 、Unity Catalog によって管理されます。 これらの権限は、カタログにアクセスできるすべてのワークスペースに適用されます。 |
外部ストレージマウント | 外部ストレージのマウントはサポートされていません | 外部ボリュームを作成することで、外部ストレージ上の既存のデータセットを指すオプションを提供します。 Unity Catalogボリュームとはを参照してください。 |
UDF のサポート | サポートされていない | UDF からの書き込みは、ボリューム FUSE を使用してサポートされます |
ファイルサイズ | ノートブックと一緒に必要なソースコードファイル( | 非常に大きなデータファイルは、クラウドサービスプロバイダーが決定した制限で保存します。 |
アップロード&ダウンロード | 最大10MBのアップロードとダウンロードをサポートします。 | 最大5GBのアップロードとダウンロードをサポートします。 |
テーブル作成のサポート | ワークスペースファイルをロケーションとしてテーブルを作成することはできません。 | テーブルは、ボリューム内のファイルから |
ディレクトリ構造とファイルパス | ファイルはネストされたディレクトリに整理され、それぞれに独自の権限モデルがあります。
| ファイルは、ボリューム内のネストされたディレクトリに整理されます 「Unity Catalog のデータにアクセスする方法」を参照してください。 |
ファイル履歴 | ワークスペース内の Git フォルダー を使用して、ファイルの変更を追跡します。 | 監査ログが利用可能です。 |