> ## Documentation Index
> Fetch the complete documentation index at: https://docs.prophecy.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Databricks Volumes

> Use Databricks Volumes as a file source or target in a gem

export const execution_engine_0 = "Prophecy Automate"

<Info>This gem runs in {execution_engine_0}.</Info>

## Overview

Use a Source or Target gem to read from or write to Databricks Volumes in Prophecy pipelines. This page covers supported file formats, how to create the gem, and how to configure connection details and paths for both Source and Target gems.

## Supported file formats

| Format                                                                       | Read | Write |
| ---------------------------------------------------------------------------- | ---- | ----- |
| [CSV](/data-analysis/gems/source-target/file/file-types/csv)                 | ✔    | ✔     |
| [Fixed width](/data-analysis/gems/source-target/file/file-types/fixed-width) | ✔    |       |
| [JSON](/data-analysis/gems/source-target/file/file-types/json)               | ✔    | ✔     |
| [Parquet](/data-analysis/gems/source-target/file/file-types/parquet)         | ✔    | ✔     |
| [XLSX](/data-analysis/gems/source-target/file/file-types/excel)              | ✔    | ✔     |
| [XML](/data-analysis/gems/source-target/file/file-types/xml)                 | ✔    | ✔     |

## Create a Databricks Volumes gem

To create a Databricks Volumes Source or Target gem in your pipeline:

<Steps>
  <Step title="Add a Source or Target gem to the pipeline">
    1. Open your pipeline in the [Studio](/data-analysis/development/studio/studio).
    2. Click on **Source/Target** in the canvas.
    3. Select **Source** or **Target** from the dropdown.
    4. Click on the gem to open the configuration.
  </Step>

  <Step title="Select Databricks format">
    In the **Type** tab, select **Databricks** under **File**. Do not select Databricks under
    **Table**. Then, click **Next**.
  </Step>

  <Step title="Set location details">
    In the **Location** tab, set your file format and connection details. To learn more, jump to [Location](#location).
  </Step>

  <Step title="Set file properties">
    In the **Properties** tab, set the file properties. These vary based on the file type that you are working with.

    <Info>See the list of properties per file type, such as [CSV](/data-analysis/gems/source-target/file/file-types/csv).</Info>
  </Step>

  <Step title="Preview data (Source only)">
    In the **Preview** tab, load a sample of the data and verify that it looks correct.
  </Step>
</Steps>

## Source location

| Parameter                   | Description                                                                                                                           |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| Select or create connection | Select an existing Databricks Volumes connection or [create a new one](/data-analysis/environment/connections/databricks).            |
| File Path                   | Path to the file in Databricks Volumes. <br />Example: `/Volumes/catalog/schema/volume/file.csv`                                      |
| Examine                     | Automatically determine the file format, compression type (if any), properties, and schema of the file to read.                       |
| Format type                 | Type of file to read, such as `csv` or `json`.                                                                                        |
| Compression                 | The compression type of the file to read. <br /><br />Supported types: `uncompressed`,`gzip`, `zstd`, `lz4`, `zlib`, `snappy`, `lzop` |

## Target location

| Parameter                   | Description                                                                                                                                   |
| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| Select or create connection | Select an existing Databricks Volumes connection or [create a new one](/data-analysis/environment/connections/databricks).                    |
| File Path                   | Path to the file in Databricks Volumes. <br />Example: `/Volumes/catalog/schema/volume/file.csv`                                              |
| Examine                     | If an existing file exists at the target path, click **Examine** to automatically determine the file format and compression type (if any).    |
| Encryption Algorithm        | The encryption algorithm to use when writing the file.<br /><br />Supported algorithms: `AES-192`, `AES-296`, `BlowFish`                      |
| Format type                 | Type of file to write, such as `csv` or `json`.                                                                                               |
| Compression                 | The compression type to use when writing the file.<br /><br />Supported types: `uncompressed`,`gzip`, `zstd`, `lz4`, `zlib`, `snappy`, `lzop` |

<Note>
  Configure encryption in a Target gem to encrypt an entire file. Use the
  [DataEncoderDecoder](/data-analysis/gems/transform/encoder-decoder) gem to encrypt individual
  columns.
</Note>
