Skip to content

dbt-labs/dbt-project-evaluator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

34209f6 · Sep 3, 2024
Sep 18, 2023
Sep 18, 2023
Jan 7, 2022
Sep 3, 2024
Sep 3, 2024
Sep 3, 2024
Sep 3, 2024
Sep 3, 2024
Sep 3, 2024
Jan 7, 2022
Jan 11, 2022
Feb 6, 2024
Oct 3, 2022
Dec 15, 2022
Sep 3, 2024
Sep 3, 2024
Apr 25, 2024
Dec 6, 2022
Nov 22, 2023
Jun 21, 2024

Repository files navigation

dbt_project_evaluator

This package highlights areas of a dbt project that are misaligned with dbt Labs' best practices. Specifically, this package tests for:

  1. Modeling - your dbt DAG for modeling best practices
  2. Testing - your models for testing best practices
  3. Documentation - your models for documentation best practices
  4. Structure - your dbt project for file structure and naming best practices
  5. Performance - your model materializations for performance best practices
  6. Governance - your best practices for model governance features.

In addition to tests, this package creates the model int_all_dag_relationships which holds information about your DAG in a tabular format and can be queried using SQL in your Warehouse.

Currently, the following adapters are supported:

  • BigQuery
  • Databricks/Spark
  • PostgreSQL
  • Redshift
  • Snowflake
  • DuckDB
  • Trino (tested with Iceberg connector)
  • AWS Athena (tested manually)
  • Greenplum (tested manually)
  • ClickHouse (tested manually)

Using This Package

Cloning via dbt Package Hub

Check dbt Hub for the latest installation instructions, or read the docs for more information on installing packages.

Additional setup for Databricks/Spark/DuckDB/Redshift/ClickHouse

In your dbt_project.yml, add the following config:

# dbt_project.yml

dispatch:
  - macro_namespace: dbt
    search_order: ['dbt_project_evaluator', 'dbt']

This is required because the project currently overrides a small number of dbt core macros in order to ensure the project can run across the listed adapters. The overridden macros are in the cross_db_shim directory.

Documentation

The full documentation and list of rules are available on this website