This project adds new capabilities to dbt-core by dynamically extending dbt's source code. dbt is a popular solution for batch data processing in data analytics. While it operates on an open-core model, which can sometimes limit the inclusion of community features in the open-source version. no worries opendbt is here to solve it. opendbt offers a fully open-source package to address these concerns. OpenDBT builds upon dbt-core, adding valuable features without changing dbt-core code.
With opendbt
you can go beyond the core functionalities of dbt. For example seamlessly integrating your customized
adapter and providing jinja context with further adapter/python methods.
- ✅ Includes superior dbt catalog UI, user-friendly data catalog, including row level lineage, see it here
- ✅ Integrates Python and DLT Jobs to dbt. Enables Extract&Load (EL) with dbt.
- ✅ Supports DBT Mesh setups. Supports running multiple projects which are using cross project ref models.
- ✅ And many more features, customization options.
- Customize Existing Adapters: add your custom logic to current adapters
- By extending current adapter provide more functions to jinja
- Execute Local Python Code: run local Python code. For example, you could import data from web APIs directly within your dbt model.
- Integrate DLT. Run end to end ETL pipeline with dbt and DLT.
- Use multi project dbt-mesh setup cross-project references.
- This feature was only available in "dbt Cloud Enterprise" so far.
- Granular Model-Level Orchestration with Airflow: Integrate Airflow for fine-grained control over model execution.
- Serve dbt Docs in Airflow UI: Create a custom page on the Airflow server that displays dbt documentation as an Airflow UI page.
- Register dbt callbacks within a dbt project to trigger custom actions or alerting based on selected dbt events.
For detailed examples, see: examples.
install version from github:
pip install https://github.com/memiiso/opendbt/archive/refs/tags/0.4.0.zip --upgrade --user
The project completely open-source, using the Apache 2.0 license. opendbt still is a young project and there are things to improve. Please feel free to test it, give feedback, open feature requests or send pull requests.