From 4eb5660f39d48c138cd5a8c1331f47fefda80248 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Fri, 1 Nov 2024 13:18:12 -0700 Subject: [PATCH 1/9] Standardizing File connector documentation --- .../docs/components/data-connectors/file.md | 77 ++++++++++++++++--- 1 file changed, 66 insertions(+), 11 deletions(-) diff --git a/spiceaidocs/docs/components/data-connectors/file.md b/spiceaidocs/docs/components/data-connectors/file.md index 169a1048..8c2f4fff 100644 --- a/spiceaidocs/docs/components/data-connectors/file.md +++ b/spiceaidocs/docs/components/data-connectors/file.md @@ -4,8 +4,6 @@ sidebar_label: 'File Data Connector' description: 'File Data Connector Documentation' --- -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; The File Data Connector enables federated SQL queries on files stored by locally accessible filesystems. It supports querying individual files or entire directories, where all child files within the directory will be loaded and queried. @@ -19,20 +17,45 @@ datasets: name: customer params: file_format: parquet +``` + +## Configuration + +### `from` + +The `from` field for the File connector takes the form `file://path` where `path` is the path to the file to read from. See the [examples](#examples) below for examples of relative and absolute paths + +### `name` - - from: file://path/to/orders.csv - name: orders +The dataset name. This will be used as the table name within Spice. + +Example: +```yaml +datasets: + - from: file://path/to/customer.parquet + name: cool_dataset params: - file_format: csv - csv_has_header: false + ... ``` -## Parameters +```sql +SELECT COUNT(*) FROM cool_dataset; +``` + +```shell ++----------+ +| count(*) | ++----------+ +| 6001215 | ++----------+ +``` + +### `params` -| Parameter name | Description | -|------------------------|-------------------------------------------------------------------------------------------------------| -| `file_format` | Specifies the data file format. Required if the format cannot be inferred from the `from` path. | -| `hive_partitioning_enabled`| Enable partitioning using hive-style partitioning from the folder structure. Defaults to `false` | +| Parameter name | Description | +| --------------------------- | ------------------------------------------------------------------------------------------------ | +| `file_format` | Specifies the data file format. Required if the format cannot be inferred from the `from` path. | +| `hive_partitioning_enabled` | Enable partitioning using hive-style partitioning from the folder structure. Defaults to `false` | For CSV-specific parameters, see [CSV Parameters](/reference/file_format.md#csv). @@ -52,3 +75,35 @@ datasets: ``` When the file is modified, the acceleration will be refreshed and will include the latest data. + +## Examples + +### Absolute path + +In this example, `path` is an absolute path to the file on the filesystem. + +```yaml +datasets: + - from: file://path/to/customer.parquet + name: customer + params: + file_format: parquet +``` + +### Relative path + +In this example, the path is relative to the directory where the `spicepod.yaml` is located. + +```bash +├── foo +│   └── yellow_tripdata_2024-01.parquet +└── spicepod.yaml +``` + +```yaml +datasets: + - from: file:foo/yellow_tripdata_2024-01.parquet + name: trip_data + params: + file_format: parquet +``` \ No newline at end of file From 04d68e3874dcaf55e2207118eca8055e98956a61 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Fri, 1 Nov 2024 13:23:19 -0700 Subject: [PATCH 2/9] Enhancing HTTPS connector documentation --- .../docs/components/data-connectors/https.md | 70 ++++++++++++++++--- 1 file changed, 62 insertions(+), 8 deletions(-) diff --git a/spiceaidocs/docs/components/data-connectors/https.md b/spiceaidocs/docs/components/data-connectors/https.md index dc79c4cd..6883f847 100644 --- a/spiceaidocs/docs/components/data-connectors/https.md +++ b/spiceaidocs/docs/components/data-connectors/https.md @@ -5,26 +5,80 @@ description: 'HTTP(s) Data Connector Documentation' pagination_prev: null --- -The HTTP(s) Data Connector enables federated SQL query against a variety of tabular formatted (e.g. Parquet/CSV) files stored at a HTTP endpoint. +The HTTP(s) Data Connector enables federated SQL query across [supported file formats](/components/data-connectors/index.md#object-store-file-formats) stored at an HTTP(s) endpoint. -The connector supports Basic HTTP authentication via `param` values. +```yaml +datasets: + - from: http://static_username@localhost:3001/report.csv + name: local_report + params: + http_password: ${env:MY_HTTP_PASS} +``` -### Parameters +## Configuration -- `http_port`: Optional. Port to create HTTP(s) connection over. Default: 80 and 443 for HTTP and HTTPS respectively. -- `http_username`: Optional. Username to provide connection for HTTP basic authentication. Default: None. -- `http_password`: Optional. Password to provide connection for HTTP basic authentication. Default: None. Use the [secret replacement syntax](../secret-stores/index.md) to load the password from a secret store, e.g. `${secrets:my_http_pass}`. -- `client_timeout`: Optional. Specifies timeout for HTTP operations. Default value is `30s` E.g. `client_timeout: 60s` +### `from` -### Examples +The `from` field must contain a valid URI to the location of a [supported file](/components/data-connectors/index.md#object-store-file-formats). For example, `http://static_username@localhost:3001/report.csv`. +### `name` + +The dataset name. This will be used as the table name within Spice. + +Example: +```yaml +datasets: + - from: http://static_username@localhost:3001/report.csv + name: cool_dataset + params: + ... +``` + +```sql +SELECT COUNT(*) FROM cool_dataset; +``` + +```shell ++----------+ +| count(*) | ++----------+ +| 6001215 | ++----------+ +``` + +### `params` + +The connector supports Basic HTTP authentication via `param` values. + +| Parameter Name | Description | +| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `http_port` | Optional. Port to create HTTP(s) connection over. Default: 80 and 443 for HTTP and HTTPS respectively. | +| `http_username` | Optional. Username to provide connection for HTTP basic authentication. Default: None. | +| `http_password` | Optional. Password to provide connection for HTTP basic authentication. Default: None. Use the [secret replacement syntax](../secret-stores/index.md) to load the password from a secret store, e.g. `${secrets:my_http_pass}`. | +| `client_timeout` | Optional. Specifies timeout for HTTP operations. Default value is `30s` E.g. `client_timeout: 60s` | + +## Examples + +### Basic example ```yaml datasets: - from: https://github.com/LAION-AI/audio-dataset/raw/7fd6ae3cfd7cde619f6bed817da7aa2202a5bc28/metadata/freesound/parquet/freesound_parquet.parquet name: laion_freesound +``` +### Using Basic Authentication +```yaml +datasets: - from: http://static_username@localhost:3001/report.csv name: local_report params: http_password: ${env:MY_HTTP_PASS} ``` + +## Using secrets + +There are currently three supported [secret stores](/components/secret-stores/index.md): + +* [Environment variables](/components/secret-stores/env) +* [Kubernetes Secret Store](/components/secret-stores/kubernetes) +* [Keyring Secret Store](/components/secret-stores/keyring) From fc51cb139c3265fa1f84aea8913ff869d0525c53 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Fri, 1 Nov 2024 13:23:36 -0700 Subject: [PATCH 3/9] Standardizing FTP connector documentation --- .../docs/components/data-connectors/ftp.md | 161 +++++++++++------- 1 file changed, 100 insertions(+), 61 deletions(-) diff --git a/spiceaidocs/docs/components/data-connectors/ftp.md b/spiceaidocs/docs/components/data-connectors/ftp.md index 100162bd..1e48100d 100644 --- a/spiceaidocs/docs/components/data-connectors/ftp.md +++ b/spiceaidocs/docs/components/data-connectors/ftp.md @@ -4,69 +4,108 @@ sidebar_label: 'FTP/SFTP Data Connector' description: 'FTP/SFTP Data Connector Documentation' --- -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; +FTP (File Transfer Protocol) and SFTP (SSH File Transfer Protocol) are network protocols used for transferring files between a client and server, with FTP being less secure and SFTP providing encrypted file transfer over SSH. -The FTP/SFTP Data Connector enables federated SQL query across Parquet/CSV files stored in FTP/SFTP servers. +The FTP/SFTP Data Connector enables federated SQL query across [supported file formats](/components/data-connectors/index.md#object-store-file-formats) stored in FTP/SFTP servers. -If a folder is provided, all child Parquet/CSV files will be loaded. +```yaml +datasets: + - from: sftp://remote-sftp-server.com/path/to/folder/ + name: my_dataset + params: + file_format: csv + sftp_port: 20 + sftp_user: my-sftp-user + sftp_pass: ${secrets:my_sftp_password} +``` ## Configuration - - - ### Parameters - - The connection to FTP can be configured by providing the following params: - - - `file_format`: Specifies the data file format. Required if the format cannot be inferred by from the `from` path. See [Object Store File Formats](/components/data-connectors/index.md#object-store-file-formats). - - `ftp_port`: Optional, specifies the port of the FTP server. Default is 21. E.g. `ftp_port: 21` - - `ftp_user`: The username for the FTP server. E.g. `ftp_user: my-ftp-user` - - `ftp_pass`: The password for the FTP server. Use the [secret replacement syntax](../secret-stores/index.md) to load the password from a secret store, e.g. `${secrets:my_ftp_pass}`. - - `client_timeout`: Optional. Specifies timeout for FTP connection. E.g. `client_timeout: 30s`. When not set, no timeout will be configured for FTP client. - - `hive_partitioning_enabled`: Optional. Enable partitioning using hive-style partitioning from the folder structure. Defaults to `false` - - More CSV related parameters can be configured, see [CSV Parameters](/reference/file_format.md#csv) - - ### Examples - ```yaml - - from: ftp://remote-ftp-server.com/path/to/folder/ - name: my_dataset - params: - file_format: csv - ftp_user: my-ftp-user - ftp_pass: ${secrets:my_ftp_password} - hive_partitioning_enabled: false - ``` - - - - ### Parameters - - The connection to SFTP can be configured by providing the following params: - - - `file_format`: Optional, specifies the requested file format. - - `parquet`: (default) Parquet file format. - - `csv`: CSV file format. - - `sftp_port`: Optional, specifies the port of the SFTP server. Default is 22. E.g. `sftp_port: 22` - - `sftp_user`: The username for the SFTP server. E.g. `sftp_user: my-sftp-user` - - `sftp_pass`: The password for the SFTP server. Use the [secret replacement syntax](../secret-stores/index.md) to load the password from a secret store, e.g. `${secrets:my_sftp_pass}`. - - `client_timeout`: Optional. Specifies timeout for SFTP connection. E.g. `client_timeout: 30s`. When not set, no timeout will be configured for SFTP client. - - `hive_partitioning_enabled`: Optional. Enable partitioning using hive-style partitioning from the folder structure. Defaults to `false` - - More CSV related parameters can be configured, see [CSV Parameters](/reference/file_format.md#csv) - - ### Examples - ```yaml - - from: sftp://remote-sftp-server.com/path/to/folder/ - name: my_dataset - params: - file_format: csv - sftp_port: 20 - sftp_user: my-sftp-user - sftp_pass: ${secrets:my_sftp_password} - hive_partitioning_enabled: true - ``` - - - +### `from` + +The `from` field takes one of two forms: `ftp://path` or `sftp://path` where `path` is the path to the file or directory to read from. + +If a folder is provided, all child files will be loaded. + +### `name` + +The dataset name. This will be used as the table name within Spice. + +Example: +```yaml +datasets: + - from: sftp://remote-sftp-server.com/path/to/folder/ + name: cool_dataset + params: + ... +``` + +```sql +SELECT COUNT(*) FROM cool_dataset; +``` + +```shell ++----------+ +| count(*) | ++----------+ +| 6001215 | ++----------+ +``` + +### `params` + +#### FTP + +| Parameter Name | Description | +| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `file_format` | Specifies the data file format. Required if the format cannot be inferred by from the `from` path. See [Object Store File Formats](/components/data-connectors/index.md#object-store-file-formats). | +| `ftp_port` | Optional, specifies the port of the FTP server. Default is 21. E.g. `ftp_port: 21` | +| `ftp_user` | The username for the FTP server. E.g. `ftp_user: my-ftp-user` | +| `ftp_pass` | The password for the FTP server. Use the [secret replacement syntax](../secret-stores/index.md) to load the password from a secret store, e.g. `${secrets:my_ftp_pass}`. | +| `client_timeout` | Optional. Specifies timeout for FTP connection. E.g. `client_timeout: 30s`. When not set, no timeout will be configured for FTP client. | +| `hive_partitioning_enabled` | Optional. Enable partitioning using hive-style partitioning from the folder structure. Defaults to `false` | + +#### SFTP +| Parameter Name | Description | +| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `file_format` | Specifies the data file format. Required if the format cannot be inferred by from the `from` path. See [Object Store File Formats](/components/data-connectors/index.md#object-store-file-formats). | +| `sftp_port` | Optional, specifies the port of the SFTP server. Default is 22. E.g. `sftp_port: 22` | +| `sftp_user` | The username for the SFTP server. E.g. `sftp_user: my-sftp-user` | +| `sftp_pass` | The password for the SFTP server. Use the [secret replacement syntax](../secret-stores/index.md) to load the password from a secret store, e.g. `${secrets:my_sftp_pass}`. | +| `client_timeout` | Optional. Specifies timeout for SFTP connection. E.g. `client_timeout: 30s`. When not set, no timeout will be configured for SFTP client. | +| `hive_partitioning_enabled` | Optional. Enable partitioning using hive-style partitioning from the folder structure. Defaults to `false` | + +## Examples + +### Connecting to FTP + +```yaml + - from: ftp://remote-ftp-server.com/path/to/folder/ + name: my_dataset + params: + file_format: csv + ftp_user: my-ftp-user + ftp_pass: ${secrets:my_ftp_password} + hive_partitioning_enabled: false +``` + +### Connecting to SFTP + +```yaml + - from: sftp://remote-sftp-server.com/path/to/folder/ + name: my_dataset + params: + file_format: csv + sftp_port: 20 + sftp_user: my-sftp-user + sftp_pass: ${secrets:my_sftp_password} + hive_partitioning_enabled: false +``` + +## Using secrets + +There are currently three supported [secret stores](/components/secret-stores/index.md): + +* [Environment variables](/components/secret-stores/env) +* [Kubernetes Secret Store](/components/secret-stores/kubernetes) +* [Keyring Secret Store](/components/secret-stores/keyring) From 4c2a28cc6f557515a165d3ad8121154443d16858 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Sun, 10 Nov 2024 17:50:01 -0800 Subject: [PATCH 4/9] Updating secrets section --- spiceaidocs/docs/components/data-connectors/file.md | 6 +++++- spiceaidocs/docs/components/data-connectors/ftp.md | 8 ++------ spiceaidocs/docs/components/data-connectors/https.md | 8 ++------ 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/spiceaidocs/docs/components/data-connectors/file.md b/spiceaidocs/docs/components/data-connectors/file.md index 8c2f4fff..b804e8e5 100644 --- a/spiceaidocs/docs/components/data-connectors/file.md +++ b/spiceaidocs/docs/components/data-connectors/file.md @@ -106,4 +106,8 @@ datasets: name: trip_data params: file_format: parquet -``` \ No newline at end of file +``` + +## Secrets + +Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the [secret stores documentation](/components/secret-stores). Additionally, learn how to use referenced secrets in component parameters by visiting the [using referenced secrets guide](/components/secret-stores#using-secrets). \ No newline at end of file diff --git a/spiceaidocs/docs/components/data-connectors/ftp.md b/spiceaidocs/docs/components/data-connectors/ftp.md index 1e48100d..136597a9 100644 --- a/spiceaidocs/docs/components/data-connectors/ftp.md +++ b/spiceaidocs/docs/components/data-connectors/ftp.md @@ -102,10 +102,6 @@ SELECT COUNT(*) FROM cool_dataset; hive_partitioning_enabled: false ``` -## Using secrets +## Secrets -There are currently three supported [secret stores](/components/secret-stores/index.md): - -* [Environment variables](/components/secret-stores/env) -* [Kubernetes Secret Store](/components/secret-stores/kubernetes) -* [Keyring Secret Store](/components/secret-stores/keyring) +Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the [secret stores documentation](/components/secret-stores). Additionally, learn how to use referenced secrets in component parameters by visiting the [using referenced secrets guide](/components/secret-stores#using-secrets). \ No newline at end of file diff --git a/spiceaidocs/docs/components/data-connectors/https.md b/spiceaidocs/docs/components/data-connectors/https.md index 6883f847..316889fa 100644 --- a/spiceaidocs/docs/components/data-connectors/https.md +++ b/spiceaidocs/docs/components/data-connectors/https.md @@ -75,10 +75,6 @@ datasets: http_password: ${env:MY_HTTP_PASS} ``` -## Using secrets +## Secrets -There are currently three supported [secret stores](/components/secret-stores/index.md): - -* [Environment variables](/components/secret-stores/env) -* [Kubernetes Secret Store](/components/secret-stores/kubernetes) -* [Keyring Secret Store](/components/secret-stores/keyring) +Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the [secret stores documentation](/components/secret-stores). Additionally, learn how to use referenced secrets in component parameters by visiting the [using referenced secrets guide](/components/secret-stores#using-secrets). \ No newline at end of file From 27610ec43057abe44955ef69098bbe14be3036b2 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Wed, 13 Nov 2024 16:22:07 -0800 Subject: [PATCH 5/9] Update spiceaidocs/docs/components/data-connectors/file.md Co-authored-by: Phillip LeBlanc --- spiceaidocs/docs/components/data-connectors/file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spiceaidocs/docs/components/data-connectors/file.md b/spiceaidocs/docs/components/data-connectors/file.md index b804e8e5..f0f42850 100644 --- a/spiceaidocs/docs/components/data-connectors/file.md +++ b/spiceaidocs/docs/components/data-connectors/file.md @@ -5,7 +5,7 @@ description: 'File Data Connector Documentation' --- -The File Data Connector enables federated SQL queries on files stored by locally accessible filesystems. It supports querying individual files or entire directories, where all child files within the directory will be loaded and queried. +The File Data Connector enables federated/accelerated SQL queries on files stored by locally accessible filesystems. It supports querying individual files or entire directories, where all child files within the directory will be loaded and queried. File formats are specified using the `file_format` parameter, as described in [Object Store File Formats](/components/data-connectors/index.md#object-store-file-formats). From b1652af1bd72bc52c31d5c4422f06ac151a9d710 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Wed, 13 Nov 2024 16:22:16 -0800 Subject: [PATCH 6/9] Update spiceaidocs/docs/components/data-connectors/ftp.md Co-authored-by: Phillip LeBlanc --- spiceaidocs/docs/components/data-connectors/ftp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spiceaidocs/docs/components/data-connectors/ftp.md b/spiceaidocs/docs/components/data-connectors/ftp.md index 136597a9..502141f7 100644 --- a/spiceaidocs/docs/components/data-connectors/ftp.md +++ b/spiceaidocs/docs/components/data-connectors/ftp.md @@ -6,7 +6,7 @@ description: 'FTP/SFTP Data Connector Documentation' FTP (File Transfer Protocol) and SFTP (SSH File Transfer Protocol) are network protocols used for transferring files between a client and server, with FTP being less secure and SFTP providing encrypted file transfer over SSH. -The FTP/SFTP Data Connector enables federated SQL query across [supported file formats](/components/data-connectors/index.md#object-store-file-formats) stored in FTP/SFTP servers. +The FTP/SFTP Data Connector enables federated/accelerated SQL query across [supported file formats](/components/data-connectors/index.md#object-store-file-formats) stored in FTP/SFTP servers. ```yaml datasets: From 7d695a58c96acc4c5c2bca1167663ee37ae9fe89 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Wed, 13 Nov 2024 16:28:33 -0800 Subject: [PATCH 7/9] Update spiceaidocs/docs/components/data-connectors/https.md Co-authored-by: Phillip LeBlanc --- spiceaidocs/docs/components/data-connectors/https.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spiceaidocs/docs/components/data-connectors/https.md b/spiceaidocs/docs/components/data-connectors/https.md index 316889fa..58754be6 100644 --- a/spiceaidocs/docs/components/data-connectors/https.md +++ b/spiceaidocs/docs/components/data-connectors/https.md @@ -5,7 +5,7 @@ description: 'HTTP(s) Data Connector Documentation' pagination_prev: null --- -The HTTP(s) Data Connector enables federated SQL query across [supported file formats](/components/data-connectors/index.md#object-store-file-formats) stored at an HTTP(s) endpoint. +The HTTP(s) Data Connector enables federated/accelerated SQL query across [supported file formats](/components/data-connectors/index.md#object-store-file-formats) stored at an HTTP(s) endpoint. ```yaml datasets: From 19c6613724ed5b9306974612e001922917843b82 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Wed, 13 Nov 2024 16:21:26 -0800 Subject: [PATCH 8/9] Removing secrets section from File docs --- spiceaidocs/docs/components/data-connectors/file.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spiceaidocs/docs/components/data-connectors/file.md b/spiceaidocs/docs/components/data-connectors/file.md index f0f42850..2d208d53 100644 --- a/spiceaidocs/docs/components/data-connectors/file.md +++ b/spiceaidocs/docs/components/data-connectors/file.md @@ -108,6 +108,6 @@ datasets: file_format: parquet ``` -## Secrets +## Quickstarts and Samples -Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the [secret stores documentation](/components/secret-stores). Additionally, learn how to use referenced secrets in component parameters by visiting the [using referenced secrets guide](/components/secret-stores#using-secrets). \ No newline at end of file +Refer to the [File quickstart](https://github.com/spiceai/quickstarts/tree/trunk/file) to see an example of the File connector in use. \ No newline at end of file From 5e38ad6c24c5752924710f7b98c667010a7aefb5 Mon Sep 17 00:00:00 2001 From: Scott Lyons Date: Wed, 13 Nov 2024 16:30:16 -0800 Subject: [PATCH 9/9] Improving FTP documents based on feedback --- spiceaidocs/docs/components/data-connectors/ftp.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/spiceaidocs/docs/components/data-connectors/ftp.md b/spiceaidocs/docs/components/data-connectors/ftp.md index 502141f7..7d9a55d5 100644 --- a/spiceaidocs/docs/components/data-connectors/ftp.md +++ b/spiceaidocs/docs/components/data-connectors/ftp.md @@ -14,7 +14,7 @@ datasets: name: my_dataset params: file_format: csv - sftp_port: 20 + sftp_port: 22 sftp_user: my-sftp-user sftp_pass: ${secrets:my_sftp_password} ``` @@ -23,7 +23,7 @@ datasets: ### `from` -The `from` field takes one of two forms: `ftp://path` or `sftp://path` where `path` is the path to the file or directory to read from. +The `from` field takes one of two forms: `ftp:///` or `sftp:///` where `` is the host to connect to and `` is the path to the file or directory to read from. If a folder is provided, all child files will be loaded. @@ -96,12 +96,16 @@ SELECT COUNT(*) FROM cool_dataset; name: my_dataset params: file_format: csv - sftp_port: 20 + sftp_port: 22 sftp_user: my-sftp-user sftp_pass: ${secrets:my_sftp_password} hive_partitioning_enabled: false ``` +## Quickstarts and Samples + +Refer to the [FTP quickstart](https://github.com/spiceai/quickstarts/tree/trunk/ftp) to see an example of the FTP connector in use. + ## Secrets Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the [secret stores documentation](/components/secret-stores). Additionally, learn how to use referenced secrets in component parameters by visiting the [using referenced secrets guide](/components/secret-stores#using-secrets). \ No newline at end of file