Skip to content

Add Elsayed91/dbt-subzero - #435

Open
elsayed91 wants to merge 1 commit into
dbt-labs:mainfrom
elsayed91:add-elsayed91-dbt-subzero
Open

Add Elsayed91/dbt-subzero#435
elsayed91 wants to merge 1 commit into
dbt-labs:mainfrom
elsayed91:add-elsayed91-dbt-subzero

Conversation

@elsayed91

@elsayed91 elsayed91 commented Jul 21, 2026

Copy link
Copy Markdown

Adds dbt-subzero: data quality tests for Apache Iceberg tables answered from table metadata (manifest statistics, snapshots) instead of scanning data. Supports dbt-trino and dbt-spark. First release v0.1.0 is published.


Checklist

This checklist is a cut down version of the best practices that we have identified as the package hub has grown. Although meeting these checklist items is not a prerequisite to being added to the Hub, we have found that packages which don't conform provide a worse user experience.

Real world usage

Using coding agents to help you build your package is totally fine, but please don't submit it to the package hub until you've used it in your own production environment for an extended period of time.

  • (Required): I have been using this package in production and am satisfied with its behavior.

First run experience

  • (Required): The package includes a licence file detectable by GitHub, such as the Apache 2.0 or MIT licence.
  • The package includes a README which explains how to get started with the package and customise its behaviour
  • The README indicates which data warehouses/platforms are expected to work with this package

Customisability

  • The package uses ref or source, instead of hard-coding table references.

Packages for data transformation (delete if not relevant):

  • provide a mechanism (such as variables) to customise the location of source tables.
  • do not assume database/schema names in sources.

Dependencies

Dependencies on dbt Core

Zero dependencies

Interoperability

  • The package does not override dbt Core behaviour in such a way as to impact other dbt resources (models, tests, etc) not provided by the package.
  • The package uses the cross-database macros built into dbt Core where available, such as {{ dbt.except() }} and {{ dbt.type_string() }}.
  • The package disambiguates its resource names to avoid clashes with nodes that are likely to already exist in a project. For example, packages should not provide a model simply called users.

Versioning

  • (Required): The package's git tags validates against the regex defined in hubcap/version.py (examples).
  • The package's version follows the guidance of Semantic Versioning 2.0.0. (Note in particular the recommendation for production-ready packages to be version 1.0.0 or above)

@dbeatty10

Copy link
Copy Markdown
Contributor

@elsayed91 I've added the checklist to the PR description.

Could you fill it out to help us to review your package submission?

@elsayed91

Copy link
Copy Markdown
Author

hi @dbeatty10

It has not been running in production long enough but I am satisfied with the behavior, tbh the premise is rather simple it is just calculating some data quality tests by querying iceberg table metadata rather that doing full scans. there is no state, and no dependency beyond metadata tables that are exposed by the engines.

We can let it simmer for some time however if you feel like that is the right call

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants