Skip to main content

SDP-META — Metadata-driven Lakeflow Spark Declarative Pipelines


Documentation PyPI Build Coverage Style PyPI Downloads


Project Overview

SDP-META is a metadata-driven framework for Lakeflow Spark Declarative Pipelines. Define your Bronze and Silver pipelines in a JSON or YAML onboarding file — a single generic Declarative Pipeline reads the resulting DataflowSpec at runtime and builds the full processing graph automatically. No pipeline code to write.

📺 New to SDP-META? Watch the SDP-Meta Deep-Dive: Building Data Pipelines at Scale on Databricks — a video walkthrough of the framework with a Demo.

Who it's for: platform and data engineering teams standardizing repeatable Bronze/Silver pipelines across many datasets — onboarding new feeds through metadata instead of new pipeline code, with consistent data quality, quarantine, CDC, clustering, and sink patterns available through Bundles, CLI, UI, MCP, and agent workflows.

When it's not the best fit: one or two simple pipelines, Gold-layer business modeling, tables that each need unique application logic, a managed connector and downstream logic that already satisfy the complete Bronze/Silver requirement, or a need for a formal support SLA (SDP-META is a Databricks Labs project). See the Introduction for the full positioning.

Components

Metadata Interface

Generic Lakeflow Spark Declarative Pipeline

  • Reads DataflowSpec at runtime and dynamically wires sources, transformations, expectations, CDC flows, and sinks
  • Supports Autoloader, Delta, Kafka, Eventhub, and Snapshot sources
  • Applies create_auto_cdc_flow, append_flow, and create_sink based on metadata

High-Level Process Flow

SDP-META Architecture

Feature Matrix

Pipeline Capabilities

Feature Layers
Input sources — Autoloader, Delta, Kafka, Eventhub, Snapshot Bronze, Silver
Medallion architecture Bronze → Silver
Bronze ↔ Silver pipeline chaining (layer=bronze_silver) Both
Custom transformation functions Bronze, Silver
Data Quality Expectations Bronze, Silver
Quarantine table Bronze, Silver
Liquid clustering Bronze, Bronze Quarantine, Silver
create_auto_cdc_flow — CDC via bronze_cdc_apply_changes Bronze, Silver
Multi-source CDC (bronze_cdc_apply_changes_flows / silver_cdc_apply_changes_flows) Bronze, Silver
create_auto_cdc_from_snapshot_flow — Snapshot CDC Bronze
append_flow — via bronze_append_flows Bronze
create_sink — Delta and Kafka sinks Bronze, Silver
Row filters Bronze, Silver

Deployment & Tooling

Tool Description
Declarative Automation Bundles Git-tracked pipelines, dev/prod targets, CI/CD-ready. Commands: bundle-init, bundle-prepare-wheel, bundle-add-flow, bundle-validate. See DAB_README.md.
SDP-META CLI databricks labs sdp-meta onboard · deploy · bundle-*
SDP-META App Browser-based UI for onboarding, deployment, and pipeline monitoring
MCP Server AI-assisted pipeline scaffolding via MCP-capable AI tools (Claude Code, Cursor, Claude Desktop, and others)

Getting Started

SDP-META has three ways to use it — pick the one that matches your role and how far you intend to take it:

  1. Declarative Automation Bundle (recommended) — dev/prod targets, git-tracked state, CI/CD-ready. bundle-init --quickstart skips every prompt and gets you a working bundle in one command.
  2. Interactive onboard + deploy CLI — kick the tires against a single workspace.
  3. SDP-META Databricks App — browser-based UI for non-developers, demos, and click-driven workflows.

See GETTING_STARTED.md for prereqs, install commands, full per-path walkthroughs, local development setup, and troubleshooting. Long form: docs site.

Upgrading from DLT-META

The v0.1.0 release renames DLT-META to SDP-META. Existing onboarding JSON/YAML files and pipeline behavior are unchanged, but new code should move to the new package, CLI, and import path:

Area Old New
PyPI package dlt-meta databricks-labs-sdp-meta
Labs CLI databricks labs dlt-meta databricks labs sdp-meta
Python imports from dlt_meta import ... from databricks.labs.sdp_meta import ...

The dlt-meta compatibility package remains available during v0.1.x, but it emits deprecation warnings and receives no new features. Legacy src.* imports are planned for removal in v0.2.0.

See the DLT-META → SDP-META migration guide for the step-by-step plan, compatibility details, and deprecation timeline.

Resources

Project Support

Please note that all projects released under Databricks Labs are provided for your exploration only, and are not formally supported by Databricks with Service Level Agreements (SLAs). They are provided AS-IS and we do not make any guarantees of any kind. Please do not submit a support ticket relating to any issues arising from the use of these projects.

Any issues discovered through the use of this project should be filed as issues on the Github Repo.
They will be reviewed as time permits, but there are no formal SLAs for support.

Metadata

Release files for databricks-labs-sdp-meta 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for databricks-labs-sdp-meta 0.1.0
File Size Uploaded
databricks_labs_sdp_meta-0.1.0.tar.gz 347.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for databricks-labs-sdp-meta 0.1.0
File Interpreter ABI Platform
databricks_labs_sdp_meta-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 500.0 kB

Release files / databricks_labs_sdp_meta-0.1.0.tar.gz

Download URL databricks_labs_sdp_meta-0.1.0.tar.gz
Size 347.5 kB
Tags Source
SHA-256 checksum
How to use checksums
d817c82e043ddd4ed961d1582aea0f26b9f8e104504fe3d3745257902e05c34d
BLAKE2b-256 checksum
How to use checksums
1194e31e3a88ad1f2f4505005acace21ce00d2cc0e966e777b2170b802a31ffc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.17

Release files / databricks_labs_sdp_meta-0.1.0-py3-none-any.whl

Download URL databricks_labs_sdp_meta-0.1.0-py3-none-any.whl
Size 152.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0a931e08033a795bcd7137333cea9582ffc7d4a26989b35f64b3fc662867780c
BLAKE2b-256 checksum
How to use checksums
2b4512ca85b7242f95906a7a345f46238ea23db0d547e7a501909e2a3e4064dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.17

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page