Skip to main content

Ascend-managed DuckLake

Set up DuckDB with fully managed DuckLake infrastructure. Ascend handles storage, metadata, and coordination automatically.

Public Preview

This feature is in Public Preview. Expect changes and note that standard SLAs don't apply. Refer to our release stages to learn more.

This guide assumes you have an Ascend Instance with a Project and Workspace.

Create a DuckDB Connection

Create a file in your connections/ directory:

connections/data_plane_ducklake.yaml
connection:
duckdb:
ducklake:
$<: $ascend_managed.duckdb_ducklake

This configuration stores everything in managed cloud storage:

  • Metadata: DuckDB catalog file in managed object storage
  • Data: Parquet files in managed object storage
  • No database required: Fully cloud-native, no infrastructure to manage

Alternative: PostgreSQL metadata

For use cases requiring shared metadata across multiple Flows or high-concurrency access, use the PostgreSQL-backed option:

connections/data_plane_ducklake.yaml
connection:
duckdb:
ducklake:
$<: $ascend_managed.ducklake

This uses Ascend's managed PostgreSQL for metadata storage instead of a DuckDB file.

Choosing between options

OptionMetadata storageBest for
$ascend_managed.duckdb_ducklakeDuckDB file in S3Most use cases — simpler, faster transforms
$ascend_managed.ducklakeManaged PostgreSQLShared metadata across Flows, high concurrency

Recommendation: Start with duckdb_ducklake. Switch to ducklake only if you need shared metadata access across multiple Flows.

Next steps