Skip to main content
Version: 0.9

DuckDB

Experimental
Creates:
AssetsLineage

Configure in the UI

This plugin can be configured directly in the Marmot UI with a step-by-step wizard.

View Guide

The DuckDB plugin discovers schemas, tables, views and foreign key relationships from DuckDB database files.

File Sources

The path field accepts local paths, S3 URIs (s3://bucket/key) or Git URIs (git::https://...). For S3 and Git sources, the file is downloaded to a temporary directory before discovery and cleaned up afterwards.

See File Sources for the full list of supported backends, authentication options and configuration examples.

Example Configuration


path: "/data/analytics.duckdb"
include_columns: true
enable_metrics: true
discover_foreign_keys: true
exclude_system_schemas: true
filter:
include:
- "^main\\..*"
exclude:
- ".*_temp$"
tags:
- "duckdb"
- "analytics"

Configuration

The following configuration options are available:

PropertyTypeRequiredDescription
discover_foreign_keysboolfalseWhether to discover foreign key relationships
enable_metricsboolfalseWhether to include table metrics (row counts and sizes)
exclude_system_schemasboolfalseWhether to exclude system schemas (information_schema, pg_catalog)
external_links[]ExternalLinkfalseExternal links to show on all assets
filterFilterfalseFilter discovered assets by name (regex)
git_sourceGitSourceConfigfalseGit repository file source configuration
include_columnsboolfalseWhether to include column information in table metadata
pathstringfalsePath to the DuckDB database file (local path, s3://bucket/key or git::url)
s3_sourceS3SourceConfigfalseS3 file source configuration
source_typestringfalseFile source backend (auto-detected from path when empty)
tagsTagsConfigfalseTags to apply to discovered assets

Available Metadata

The following metadata fields are available:

FieldTypeDescription
column_defaultstringDefault value expression
column_namestringColumn name
commentstringObject comment/description
constraint_namestringForeign key constraint name
data_typestringColumn data type
is_nullableboolWhether null values are allowed
object_typestringObject type (BASE TABLE, VIEW)
pathstringPath to the DuckDB database file
row_countint64Estimated row count
schemastringSchema name
sizeint64Estimated size in bytes
source_columnstringColumn in the referencing table
source_schemastringSchema of the referencing table
source_tablestringName of the referencing table
table_namestringTable or view name
target_columnstringColumn in the referenced table
target_schemastringSchema of the referenced table
target_tablestringName of the referenced table