dbt adapter for Materialize.
Note, this plugin is a work in progress, and not yet suitable for production.
This plugin can be installed via pip:
$ pip install dbt-materialize
Materialize is based on the Postgres database protocols, so use the
dbt postgres settings in your connection profile,
only substitute type: materialize
for type: postgres
.
Type | Supported? | Form in Materialize |
---|---|---|
table | ✅ | materialized view |
view | ✅ | view |
incremental | ❌ | ❌ |
ephemeral | ✅ | cte |
TL;DR: Use tables instead of incremental models when using Materialize as your data warehouse.
Longer explanation:
dbt's incremental models are valuable because they only spend your time and money transforming new data that has arrived in your data source. Luckily, this is exactly what Materialize's materialized views were built to do! Better yet, our materialized views will always return up-to-date results without manual or configured refreshed. For more information, check out our documentation.
dbt seed
will create a static materialized
view from a csv file. You will not be able to add to or update this view after it has been created.
Not tested.
Not tested.
Not tested.
dbt docs
commands are supported.
dbt test
is untested.
Not supported, will likely not be supported in the near term.