Available Destinations
dlt supports the following destinations out of the box:SQL Databases
PostgreSQL
BigQuery
Snowflake
Redshift
DuckDB
MotherDuck
MS SQL Server
Azure Synapse
Databricks
Clickhouse
Dremio
SQLAlchemy (Generic)
Data Lakes & File Systems
Filesystem
- Local filesystem
- AWS S3
- Google Cloud Storage (GCS)
- Azure Blob Storage
- SFTP
Microsoft Fabric
Amazon Athena
DuckLake
Vector Databases
Qdrant
Weaviate
LanceDB
Special Purpose
Dummy (Testing)
Custom Destination
Using Destinations
Simple Usage
Pass destination name as a string:With Configuration
Pass a destination factory with configuration:From Configuration Files
Credentials are typically stored in.dlt/secrets.toml:
Environment Variables
Credentials can also be provided via environment variables:Destination Capabilities
Different destinations support different features:| Destination | Merge | Replace | Append | Schema Evolution | File Formats |
|---|---|---|---|---|---|
| PostgreSQL | ✓ | ✓ | ✓ | ✓ | - |
| BigQuery | ✓ | ✓ | ✓ | ✓ | - |
| Snowflake | ✓ | ✓ | ✓ | ✓ | - |
| DuckDB | ✓ | ✓ | ✓ | ✓ | - |
| Filesystem | - | ✓ | ✓ | - | parquet, jsonl, csv |
| Athena | - | ✓ | ✓ | ✓ | parquet, csv |
| Qdrant | - | - | ✓ | - | - |
| Weaviate | - | - | ✓ | - | - |
Common Configuration
All destinations support these common configuration options:Write Dispositions
Destinations support different write dispositions:- append: Add new data to existing tables
- replace: Replace entire table with new data
- merge: Update existing records and insert new ones (requires
primary_key)
See Also
- Destinations documentation - Detailed guides for each destination
- Credentials guide - How to configure destination credentials
- Write dispositions - Loading strategies