dlt.destinations.impl.ducklake.configuration
DuckLakeCredentials Objects
@configspec(init=False)
class DuckLakeCredentials(DuckDbBaseCredentials)
__init__
def __init__(ducklake_name: str = DEFAULT_DUCKLAKE_NAME,
catalog: Union[str, ConnectionStringCredentials] = None,
storage: Union[str, FilesystemConfiguration] = None) -> None
Initialize DuckLake credentials by passing ducklake name, catalog and storage configuration.
Arguments:
ducklake_name
- str This value is mainly used as ATTACH name for the ducklake database and as names for catalog and storage files if not configured explicitly. If omitted, ducklake name is derived from destination name or pipeline name.catalog
- Either a connection string (for example, "sqlite:///catalog.sqlite", "duckdb:///catalog.duckdb", or "postgres://loader:loader@localhost:5432/dlt_data") or a ConnectionStringCredentials instance. If omitted, will default the catalog to a local sqlite database whose filename is derived from the name_or_conn_str argument.storage
- Either a storage URL string (for example, "file://...", "s3://bucket/prefix") or a FilesystemConfiguration instance. If omitted, it will create a folder for data with name derived from the name_or_conn_str argument.
storage_url
@property
def storage_url() -> str
Convert file:// url into native os path so duckdb can read it
DuckLakeClientConfiguration Objects
@configspec
class DuckLakeClientConfiguration(WithLocalFiles,
DestinationClientDwhWithStagingConfiguration
)
create_indexes
does nothing but required
__str__
def __str__() -> str
Return ducklake displayable location that contains catalog and storage locations