dlt.destinations.impl.ducklake.factory
ducklake Objects
class ducklake(Destination[DuckLakeClientConfiguration, "DuckLakeClient"])
Instantiate a DuckLake destination.
A DuckLake has 3 components:
- ducklake client: this is a
duckdb
:memory: instance with theducklake
ATTACHed - catalog: this is an SQL database storing metadata. It can be a duckdb instance (typically the ducklake client) or a remote database (sqlite, postgres, mysql)
- storage: this is a filesystem where data is stored in files
The dlt DuckLake destination gives access to the "ducklake client". You never have to manage the catalog and storage directly; this is done through the ducklake client.
__init__
def __init__(credentials: Optional[DuckLakeCredentials] = None,
destination_name: Optional[str] = None,
environment: Optional[str] = None,
**kwargs: Any) -> None
Configure the ducklake destination to use in a pipeline.
All arguments provided here supersede other configuration sources such as environment variables and dlt config files.
Arguments:
credentials(Optional[DuckLakeCredentials])
- DuckLake credentials or instantiated connection to a DuckLake client (which is a duckdb instance). The DuckLake credentials include catalog name, catalog, and storagedestination_name(Optional[str])
- Name of a destination which. May be used as ducklake name, if explicit name is not set incredentials
.environment
Optional[str] - Environment of the destination**kwargs
Any, optional - Additional arguments forwarded to the destination config