Code Monkey home page Code Monkey logo

dbt-project-evaluator's Introduction

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)

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

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

dbt-project-evaluator's People

Contributors

angelica-lastra avatar b-per avatar bartlomiejolma avatar callum-mcdata avatar damian3031 avatar dave-connors-3 avatar davidbloss avatar dbeatty10 avatar deanna-minnick avatar dvdylanroe avatar emmyoop avatar gastlich avatar graciegoheen avatar jake-curtis avatar jdw818 avatar joellabes avatar jtalmi avatar kokorin avatar larssnek avatar patkearns10 avatar rfdearborn avatar rory-donaldson avatar svdimchenko avatar ttusing avatar vasiliisurov avatar wasilaq avatar wmorin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.