Local Files
Local file connections let you browse files, inspect metadata, query file contents with SQL, and use file-backed datasets as sources or targets in Load streams.
Supported formats
| Format | Source | Target | Explorer / SQL |
|---|---|---|---|
| CSV | ✓ | ✓ | ✓ |
| JSON | ✓ | ✗ | ✓ |
| JSONL | ✓ | ✓ | ✓ |
| Parquet | ✓ | ✓ | ✓ |
JSON files can be read as sources and queried in Explorer, but stream targets use JSONL (line-delimited JSON) instead.
Compressed files (.gz, .bz2) are detected and decompressed transparently. See Compressed File Support.
Connection settings
| Setting | Required | Description |
|---|---|---|
| Name | Yes | Connection label |
| Base path | Yes | Root directory for file browsing (e.g. /data/exports) |
The base path determines the root of the file tree shown in Data Explorer. All file access is scoped under this directory.
Typical workflow
- Create a file connection with a base path.
- Open the connection in Data Explorer.
- Browse folders and files from the connection tree.
- Preview data or inspect file metadata.
- Query files with DuckDB-powered SQL in the SQL Console.
- Use the connection as a source or target in a Load stream.
Stream usage
Local files work as Load-mode sources and targets. They do not support CDC.
- Source — point a stream at a file or directory with
source.connections[].files. Supported formats: CSV, JSON, JSONL, Parquet.pathsmust be relative tobasePath. - Target — stream output writes to the base path in the chosen format. Supported formats: CSV, JSONL, Parquet. Set
fileFormatin the target configuration.
Source example:
{
"source": {
"connections": [
{
"connectionId": "conn_local_files",
"files": {
"basePath": "/data/imports",
"paths": ["orders/2026-03/orders.csv"]
}
}
]
}
}
Target example:
{
"target": {
"id": "conn_local_files",
"spec": {
"files": {
"fileFormat": "jsonl"
}
}
}
}