Databricks files

Databricks is a platform for big data analytics and artificial intelligence. omniload supports access to files on Databricks volumes and workspaces as a source.

  • Unity Catalog Volumes

  • Workspace files

  • Legacy DBFS (Databricks File System)

URI format

The URI for connecting to Databricks files is structured as follows.

dbfs:/Volumes/catalog/schema/volume/path/to/data.parquet
dbfs:/Workspace/path/to/data.parquet

URI parameters

host:

See Databricks native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#databricks-native-authentication>_.

account_id:

See Databricks native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#databricks-native-authentication>_.

token:

See Databricks native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#databricks-native-authentication>_.

username:

See Databricks native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#databricks-native-authentication>_.

password:

See Databricks native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#databricks-native-authentication>_.

client_id:

(Service principal OAuth only) The client ID you were assigned when creating your service principal.

client_secret:

(Service principal OAuth only) The client secret you generated when creating your service principal.

azure_workspace_resource_id:

See Azure native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#azure-native-authentication>_.

azure_client_secret:

See Azure native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#azure-native-authentication>_.

azure_client_id:

See Azure native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#azure-native-authentication>_.

azure_tenant_id:

See Azure native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#azure-native-authentication>_.

azure_environment:

See Azure native authentication <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#azure-native-authentication>_.

auth_type:

See Additional configuration options <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#additional-configuration-options>_.

cluster_id:

The ID of the cluster to connect. See Compute configuration for Databricks Connect <https://docs.databricks.com/aws/en/dev-tools/databricks-connect/cluster-config>_.

profile:

See Overriding .databrickscfg <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#overriding-databrickscfg>_.

config_file:

See Overriding .databrickscfg <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#overriding-databrickscfg>_.

debug_headers:

See Additional configuration options <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#additional-configuration-options>_. Type: bool. Default: false.

debug_truncate_bytes:

See Additional configuration options <https://databricks-sdk-py.readthedocs.io/en/latest/authentication.html#additional-configuration-options>_. Type: int.

volume_fs_max_read_concurrency:

The maximum number of concurrent file read operations on a Unity Catalog Volume file. Type: int. Default: 24.

volume_fs_min_read_block_size:

The minimum data size to read for each read operation on a Unity Catalog Volume file. Type: int. Default: 1048576 (1 MB).

volume_fs_max_read_block_size:

The maximum data size to read for each read operation on a Unity Catalog Volume file. Type: int. Default: 4194304 (4 MB).

volume_fs_max_write_concurrency:

The maximum number of concurrent file write operations on a Unity Catalog Volume file. Type: int. Default: 24.

volume_fs_min_write_block_size:

The minimum data size to write for each write operation on a Unity Catalog Volume file. Type: int. Default: 5242880 (5 MB).

volume_fs_max_write_block_size:

The maximum data size to write for each write operation on a Unity Catalog Volume file. Type: int. Default: 16777216 (16 MB).

volume_min_multipart_upload_size:

The minimum file size to use multipart upload for uploading files to Unity Catalog Volume. Type: int. Default: 5242880 (5 MB).

volume_fs_connection_pool_size:

The maximum number of connections in the aiohttp connection pool for the Unity Catalog Volume file system. Type: int. Default: 100.

use_local_fs_in_workspace:

Access files from the local file system rather than the remote Databricks API when running within a Databricks workspace. Type: bool. Default: true.

verbose_debug_log:

Whether to enable verbose debug logging for file system operations. Type: bool. Default: false.

Authentication

The Databricks connector fsspec-databricks uses Databricks Unified Authentication provided by the Databricks Python SDK. You can find information about supported authentication parameters and environment variables in the Databricks Python SDK documentation.

Example: Load Parquet file from Databricks into DuckDB

omniload ingest \
    --source-uri   'dbfs:/Volumes/catalog/schema/volume/path/to/data.parquet' \
    --dest-uri     'duckdb:///demo.duckdb' \
    --dest-table   'testdrive.data'

Running the command creates a table named data within the testdrive schema in the DuckDB database file located at demo.duckdb.