Skip to main content

Package for running Soda Core data quality scans in Dagster.

Project description

dagster-soda

PyPI version

dagster-soda integrates Soda Core data quality checks with Dagster. It provides the SodaScanComponent, a Dagster component that runs Soda Core scans and maps SodaCL check results to Dagster asset checks.

Installation

pip install dagster-soda

Note: dagster-soda requires soda-core 3.x (the soda.scan API). It pins soda-core>=3.0,<4 by default.

Usage

Component: SodaScanComponent

Configure a SodaScanComponent in your Dagster project to:

  • Point at SodaCL YAML check files and a Soda configuration.yml
  • Map Soda dataset names to Dagster asset keys
  • Run scans and report pass/fail as Dagster asset check results

Scaffolding with the CLI

Use the Dagster CLI to scaffold a new Soda scan component in your project (requires dagster-dg-cli):

dg scaffold defs dagster_soda.SodaScanComponent <path>

Example (scaffold into a folder named soda_checks under your defs directory):

dg scaffold defs dagster_soda.SodaScanComponent soda_checks

This generates:

  • A defs.yaml with default attributes (checks_paths, configuration_path, data_source_name, asset_key_map)
  • A checks.yml template with example SodaCL (e.g. checks for my_table: - row_count > 0)

Edit the generated files to match your data source and checks, then load your definitions as usual.

Minimal defs.yaml example

type: dagster_soda.SodaScanComponent
attributes:
  checks_paths:
    - checks.yml
  configuration_path: configuration.yml
  data_source_name: my_datasource
  asset_key_map:
    my_table: my_table

Documentation

The docs for dagster-soda can be found here.

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

dagster_soda-0.29.4.tar.gz (15.5 kB view details)

Uploaded Source

Built Distribution

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

dagster_soda-0.29.4-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file dagster_soda-0.29.4.tar.gz.

File metadata

  • Download URL: dagster_soda-0.29.4.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for dagster_soda-0.29.4.tar.gz
Algorithm Hash digest
SHA256 f512801c8982ebd091e56c2a07b0bba576d789cc1999b73d8556e1472dcf23d4
MD5 478a7d9da579a39aaf7842e04783ddef
BLAKE2b-256 1de83d7df1b6a7d69d86018c7943adfbca9a71a2d71b211efd6612edc7eb73ef

See more details on using hashes here.

File details

Details for the file dagster_soda-0.29.4-py3-none-any.whl.

File metadata

  • Download URL: dagster_soda-0.29.4-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for dagster_soda-0.29.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4d3d51a620032e818b9fa032464769d3b475be29aa84c68e850987aa3bb1ebbc
MD5 864e3e1931b024fd44234f3a478f4c86
BLAKE2b-256 053288da3682fadb80a7ebdf07f783deeaa48b8b5b7f1391d1f9b7ae3e7f6e1d

See more details on using hashes here.

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