Skip to main content

Federated data mesh framework for proof-gated, exactly-once Iceberg data product publication on AWS Lambda.

Project description

Serverless Data Mesh

Federated data mesh lakehouse publication on AWS Lambda - with cryptographic proof, not just green job logs.

An open Python framework for domain-oriented, federated data mesh teams on AWS. Implements data as a product, self-serve write infrastructure, and federated computational governance at the Iceberg lakehouse layer.

  • Producer domains publish governed data products
  • Steward notaries enforce mesh contracts with VRP proofs
  • Publisher zones expose consumer-ready Iceberg data products

Introduces the Vaquar Pattern (PVDM): Physical → Verify → Durable → Metadata. Invariant: commit_metadata ⟹ VRP = PASS.

Install

pip install serverless-data-mesh
serverless-data-mesh demo    # <60s local PVDM demo, no AWS
pip install "serverless-data-mesh[rules]"   # + SparkRules on Lambda
pip install "serverless-data-mesh[spark]"   # + PySpark + SparkRules
pip install "serverless-data-mesh[all]"     # rules + spark
pip install "serverless-data-mesh[dev]"     # pytest, ruff, pre-commit

Works on Windows, Mac, and Linux. Uses veridata-recon cryptographic VRP when wheels are available; pure-Python fallback otherwise (same PASS/FAIL gate).

What it solves

Problem Answer
Silent data loss on backfill VRP FAIL blocks Iceberg snapshot
"Job succeeded" is not proof Cryptographic multiset proof per chunk
Lambda 15-minute limit Durable Execution + Step Functions (90+ min)
Retry duplicates data IceGuard rollback + workload_id checkpoints
Central ETL bottleneck Per-domain Lambda writer + transaction boundary
Federated blast radius Producer · Steward · Publisher accounts

Building blocks

Package Role
iceguard Physical SafeWriter, timeout rollback, S3 resume
veridata-recon VRP proof generation and validation
aws-durable-execution-sdk-python Cross-invocation step replay
pyiceberg Glue Iceberg REST metadata via GlueCatalogConnector
sparkrules Optional DRL business rules ([rules] extra)

Quick example

from serverless_data_mesh import (
    IceGuardDurableCoordinator,
    DomainTransactionBoundary,
    VRPProofGenerator,
)

boundary = DomainTransactionBoundary(
    domain_id="orders-domain",
    source_namespace="raw_orders",
    target_table="orders_curated",
    partition_spec={"dt": "2026-06-14"},
)

coordinator = IceGuardDurableCoordinator(
    durable_context=durable_ctx,
    lambda_context=lambda_ctx,
    proof_generator=VRPProofGenerator(),
    catalog_adapter=glue_adapter,
)
outcome = coordinator.run_workload(workload)

Optional extras

Extra Adds
rules SparkRules DRL on Lambda
spark PySpark + SparkRules
all rules + spark
dev pytest, ruff, mypy, pre-commit
publish build, twine

Documentation

License

Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

serverless_data_mesh-0.2.0.tar.gz (12.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

serverless_data_mesh-0.2.0-py3-none-any.whl (46.2 kB view details)

Uploaded Python 3

File details

Details for the file serverless_data_mesh-0.2.0.tar.gz.

File metadata

  • Download URL: serverless_data_mesh-0.2.0.tar.gz
  • Upload date:
  • Size: 12.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for serverless_data_mesh-0.2.0.tar.gz
Algorithm Hash digest
SHA256 1bbcb1f398fd12222119b4d81817bcb2206da058fb84a3245a18e27011b78124
MD5 af3484da8cec18995cb669115160f557
BLAKE2b-256 90687f56658cb77837f2d88d9f7957028b910a6f06e48ab790171b78dff69b97

See more details on using hashes here.

Provenance

The following attestation bundles were made for serverless_data_mesh-0.2.0.tar.gz:

Publisher: publish.yml on vaquarkhan/aws-serverless-datamesh-framework

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file serverless_data_mesh-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for serverless_data_mesh-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6a3863e03418a8d4c6ae60c30108a47c07019dad3336b780a69f956f534db509
MD5 7d42ac034f9eba60aa0276b95446bb7a
BLAKE2b-256 19dd6091904cff49433f00f4f20f0e8b381c78c763efc5881bc5e25acd2eb2a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for serverless_data_mesh-0.2.0-py3-none-any.whl:

Publisher: publish.yml on vaquarkhan/aws-serverless-datamesh-framework

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page