From bc7c2f50ec734c085810a9df83c58ebe287ff9c0 Mon Sep 17 00:00:00 2001 From: Joel Labes Date: Tue, 28 Nov 2023 13:17:13 +1300 Subject: [PATCH 1/9] Update model-contracts.md --- website/docs/docs/collaborate/govern/model-contracts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/collaborate/govern/model-contracts.md b/website/docs/docs/collaborate/govern/model-contracts.md index 342d86c1a77..6a9980b73c5 100644 --- a/website/docs/docs/collaborate/govern/model-contracts.md +++ b/website/docs/docs/collaborate/govern/model-contracts.md @@ -91,7 +91,7 @@ When building a model with a defined contract, dbt will do two things differentl Select the adapter-specific tab for more information on [constraint](/reference/resource-properties/constraints) support across platforms. Constraints fall into three categories based on support and platform enforcement: - **Supported and enforced** — The model won't build if it violates the constraint. -- **Supported and not enforced** — The platform supports specifying the type of constraint, but a model can still build even if building the model violates the constraint. This constraint exists for metadata purposes only. This is common for modern cloud data warehouses and less common for legacy databases. +- **Supported and not enforced** — The platform supports specifying the type of constraint, but a model can still build even if building the model violates the constraint. This constraint exists for metadata purposes only. Enforcement is more common for transactional databases, unlike cloud data warehouses. - **Not supported and not enforced** — You can't specify the type of constraint for the platform. From 8a317004b72ae9231844bb1c953dba518af2c267 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Tue, 28 Nov 2023 07:19:45 -0500 Subject: [PATCH 2/9] Update website/docs/docs/collaborate/govern/model-contracts.md --- website/docs/docs/collaborate/govern/model-contracts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/collaborate/govern/model-contracts.md b/website/docs/docs/collaborate/govern/model-contracts.md index 6a9980b73c5..bb011119958 100644 --- a/website/docs/docs/collaborate/govern/model-contracts.md +++ b/website/docs/docs/collaborate/govern/model-contracts.md @@ -91,7 +91,7 @@ When building a model with a defined contract, dbt will do two things differentl Select the adapter-specific tab for more information on [constraint](/reference/resource-properties/constraints) support across platforms. Constraints fall into three categories based on support and platform enforcement: - **Supported and enforced** — The model won't build if it violates the constraint. -- **Supported and not enforced** — The platform supports specifying the type of constraint, but a model can still build even if building the model violates the constraint. This constraint exists for metadata purposes only. Enforcement is more common for transactional databases, unlike cloud data warehouses. +- **Supported and not enforced** — The platform supports specifying the type of constraint, but a model can still build even if building the model violates the constraint. This constraint exists for metadata purposes only. This approach is more typical in cloud data warehouses than in transactional databases, where strict rule enforcement is more common. - **Not supported and not enforced** — You can't specify the type of constraint for the platform. From fa6eb4ac4ecdc2f89f947ee2f801070bb56648ca Mon Sep 17 00:00:00 2001 From: Mitchell Date: Mon, 11 Dec 2023 13:03:40 -0600 Subject: [PATCH 3/9] update prod settings image --- .../using-dbt-cloud/prod-settings.jpg | Bin 63954 -> 51716 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/website/static/img/docs/dbt-cloud/using-dbt-cloud/prod-settings.jpg b/website/static/img/docs/dbt-cloud/using-dbt-cloud/prod-settings.jpg index 1239ea784de5f7baded90147e74fc81b9c4a6e6c..04ec9280f14561a762dcf8b666ac395365967099 100644 GIT binary patch literal 51716 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

d`(yTc~4gl7NFc`7>77(r&ska+hRnm zN_w5~f}UfAjX-=a&etbKdewy?6xAzQPZ|&AN z4KNyLS0sZ|B<7bfD&1FhHB{wAou5p;AzB*|5JRg!0c?|mU+#RD;w$-7nq4ZR=8(A@ zB4I}@(SZxL?7y&^TFB4vls-caDcM)`EX@k+lf^Ch>Z*m5dV@#(J(&*SeQ5&JVKULH zG1G-Q0{r@~jfy6X8*Yy4R8GiT)9a0CK}7B!`9XooFk}C|02XJWXD^%cO^7~o7gT6! zYC4o)yns-e&3A=`D+#T=5YPn#3+OYB`XW_@U|14Kg3*pm(o`QzFVVtLvW?n++~pP; z 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 From ce25eae750f37869fb07f8bf28f8048cd753e898 Mon Sep 17 00:00:00 2001 From: Joel Labes Date: Tue, 12 Dec 2023 17:52:51 +1300 Subject: [PATCH 4/9] Remove unnecessary step from dbx orch guide --- ...w-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/website/docs/guides/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md b/website/docs/guides/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md index 30221332355..cb3a6804247 100644 --- a/website/docs/guides/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md +++ b/website/docs/guides/how-to-use-databricks-workflows-to-run-dbt-cloud-jobs.md @@ -29,14 +29,6 @@ Using Databricks workflows to call the dbt Cloud job API can be useful for sever - [Databricks CLI](https://docs.databricks.com/dev-tools/cli/index.html) - **Note**: You only need to set up your authentication. Once you have set up your Host and Token and are able to run `databricks workspace ls /Users/`, you can proceed with the rest of this guide. -## Configure Databricks workflows for dbt Cloud jobs - -To use Databricks workflows for running dbt Cloud jobs, you need to perform the following steps: - -- [Set up a Databricks secret scope](#set-up-a-databricks-secret-scope) -- [Create a Databricks Python notebook](#create-a-databricks-python-notebook) -- [Configure the workflows to run the dbt Cloud jobs](#configure-the-workflows-to-run-the-dbt-cloud-jobs) - ## Set up a Databricks secret scope 1. Retrieve **[User API Token](https://docs.getdbt.com/docs/dbt-cloud-apis/user-tokens#user-api-tokens) **or **[Service Account Token](https://docs.getdbt.com/docs/dbt-cloud-apis/service-tokens#generating-service-account-tokens) **from dbt Cloud From b5274a89e6e5a53fea4559208283fa0c9390bbe8 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Thu, 14 Dec 2023 08:00:17 -0700 Subject: [PATCH 5/9] Dynamic default `incremental_strategy` for dbt-postgres --- .../docs/reference/resource-configs/postgres-configs.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/reference/resource-configs/postgres-configs.md b/website/docs/reference/resource-configs/postgres-configs.md index 8465a5cbb31..fcc0d91a47c 100644 --- a/website/docs/reference/resource-configs/postgres-configs.md +++ b/website/docs/reference/resource-configs/postgres-configs.md @@ -10,16 +10,16 @@ In dbt-postgres, the following incremental materialization strategies are suppor -- `append` (default) -- `delete+insert` +- `append` (default when `unique_key` is not defined) +- `delete+insert` (default when `unique_key` is defined) -- `append` (default) +- `append` (default when `unique_key` is not defined) - `merge` -- `delete+insert` +- `delete+insert` (default when `unique_key` is defined) From c5261be89222a50c2b50c636a8fe2d87ca4e9770 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Thu, 14 Dec 2023 08:02:37 -0700 Subject: [PATCH 6/9] Dynamic default `incremental_strategy` for dbt-redshift --- .../reference/resource-configs/redshift-configs.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/website/docs/reference/resource-configs/redshift-configs.md b/website/docs/reference/resource-configs/redshift-configs.md index b559c0451b0..85b2af0c552 100644 --- a/website/docs/reference/resource-configs/redshift-configs.md +++ b/website/docs/reference/resource-configs/redshift-configs.md @@ -16,16 +16,16 @@ In dbt-redshift, the following incremental materialization strategies are suppor -- `append` (default) -- `delete+insert` - +- `append` (default when `unique_key` is not defined) +- `delete+insert` (default when `unique_key` is defined) + -- `append` (default) +- `append` (default when `unique_key` is not defined) - `merge` -- `delete+insert` +- `delete+insert` (default when `unique_key` is defined) From 3b5db5cca2f31756b61b49d3cdf579b8592f13f9 Mon Sep 17 00:00:00 2001 From: Doug Beatty <44704949+dbeatty10@users.noreply.github.com> Date: Thu, 14 Dec 2023 12:32:05 -0700 Subject: [PATCH 7/9] `merge` is the default `incremental_strategy` since dbt-databricks 1.0.0 (#4653) ### Previews - [Incremental strategies](https://docs-getdbt-com-git-dbeatty-dbt-databricks-merg-0a4e67-dbt-labs.vercel.app/reference/resource-configs/databricks-configs#incremental-models) - [`merge` strategy](https://docs-getdbt-com-git-dbeatty-dbt-databricks-merg-0a4e67-dbt-labs.vercel.app//reference/resource-configs/databricks-configs#the-merge-strategy) - [`append` strategy](https://docs-getdbt-com-git-dbeatty-dbt-databricks-merg-0a4e67-dbt-labs.vercel.app/reference/resource-configs/databricks-configs#the-append-strategy) ## What are you changing in this pull request and why? `merge` has been the default incremental strategy for dbt-databricks since [1.0.0](https://github.com/databricks/dbt-databricks/blob/7ad5507a8a38bde682bb28eb37466bbfc341ac94/CHANGELOG.md?plain=1#L404) ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) so my content adheres to these guidelines. --------- Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- .../docs/reference/resource-configs/databricks-configs.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/website/docs/reference/resource-configs/databricks-configs.md b/website/docs/reference/resource-configs/databricks-configs.md index fb3c9e7f5c3..677cad57ce6 100644 --- a/website/docs/reference/resource-configs/databricks-configs.md +++ b/website/docs/reference/resource-configs/databricks-configs.md @@ -38,9 +38,9 @@ When materializing a model as `table`, you may include several optional configs ## Incremental models dbt-databricks plugin leans heavily on the [`incremental_strategy` config](/docs/build/incremental-models#about-incremental_strategy). This config tells the incremental materialization how to build models in runs beyond their first. It can be set to one of four values: - - **`append`** (default): Insert new records without updating or overwriting any existing data. + - **`append`**: Insert new records without updating or overwriting any existing data. - **`insert_overwrite`**: If `partition_by` is specified, overwrite partitions in the with new data. If no `partition_by` is specified, overwrite the entire table with new data. - - **`merge`** (Delta and Hudi file format only): Match records based on a `unique_key`, updating old records, and inserting new ones. (If no `unique_key` is specified, all new data is inserted, similar to `append`.) + - **`merge`** (default; Delta and Hudi file format only): Match records based on a `unique_key`, updating old records, and inserting new ones. (If no `unique_key` is specified, all new data is inserted, similar to `append`.) - **`replace_where`** (Delta file format only): Match records based on `incremental_predicates`, replacing all records that match the predicates from the existing table with records matching the predicates from the new data. (If no `incremental_predicates` are specified, all new data is inserted, similar to `append`.) Each of these strategies has its pros and cons, which we'll discuss below. As with any model config, `incremental_strategy` may be specified in `dbt_project.yml` or within a model file's `config()` block. @@ -49,8 +49,6 @@ Each of these strategies has its pros and cons, which we'll discuss below. As wi Following the `append` strategy, dbt will perform an `insert into` statement with all new data. The appeal of this strategy is that it is straightforward and functional across all platforms, file types, connection methods, and Apache Spark versions. However, this strategy _cannot_ update, overwrite, or delete existing data, so it is likely to insert duplicate records for many data sources. -Specifying `append` as the incremental strategy is optional, since it's the default strategy used when none is specified. - Date: Thu, 14 Dec 2023 13:17:06 -0700 Subject: [PATCH 8/9] Display supported incremental strategies in a tabular format (#4649) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [Preview](https://docs-getdbt-com-git-dbeatty-tabular-incremental-326e95-dbt-labs.vercel.app/docs/build/incremental-models#supported-incremental-strategies-by-adapter) resolves #4634 ## What are you changing in this pull request and why? The main aim is to be able to easily answer each of these questions: - which adapters support the `delete+insert` strategy? - what are the names of the standard incremental strategies that are supported in at least one adapter? - what are the names of the standard incremental strategies that are supported most frequently? - what are the names of the standard incremental strategies that are supported least frequently? A tabular representation with one column per strategy is the easiest way to answer all of the above. ## Design decisions to be made 1. Style of the icons 1. Number of tables ### Style of the icons Any of these could work: ✅ - Green check mark ✔️ - Heavy check mark 🟢 - Green circle We probably wouldn't choose any of these: ☑️ - Ballot box with check 🆗 - OK button 👍 - Thumbs up etc. ### Number of tables We have several options: 1. Keep the status quo 1. Split into two tables: one for the available strategies, and another for the defaults 1. Keep a single table, keeping the "default strategy" column, but replacing the "additional supported strategies" with one column per strategy 1. Defer the default strategy information to each adapter-specific config page instead (see [dbt-bigquery](https://docs.getdbt.com/reference/resource-configs/bigquery-configs#merge-behavior-incremental-models) or [dbt-redshift](https://docs.getdbt.com/reference/resource-configs/redshift-configs#incremental-materialization-strategies) for examples) ### Trade-offs I strongly prefer not staying with the status quo, or I wouldn't have opened this issue 🤣 Splitting into two separate tables would solve the key problem, but at the cost of taking up more vertical space on the page. Keeping a single table but refactoring it would work for me. Completely moving the default strategy information into the adapter-specific pages might be the best of all worlds. It would solve the problem at hand while preserving documentation about the default strategy that is relevant for a particular adapter. dbt-postgres and dbt-redshift in particular have caveats related to the default -- it will change [depending if a `unique_key` is defined ](https://github.com/dbt-labs/docs.getdbt.com/issues/4651)or not. ## 🎩 [Preview](https://docs-getdbt-com-git-dbeatty-tabular-incremental-326e95-dbt-labs.vercel.app/docs/build/incremental-models#supported-incremental-strategies-by-adapter) ### v3 (final) image image ### v2 image ### v1 **Note:** I've since removed the 2nd table that has the defaults, but here's what it looked like with them: image image ## Checklist - [x] Review the [Content style guide](https://github.com/dbt-labs/docs.getdbt.com/blob/current/contributing/content-style-guide.md) so my content adheres to these guidelines. --------- Co-authored-by: Matt Shaver <60105315+matthewshaver@users.noreply.github.com> --- website/docs/docs/build/incremental-models.md | 38 +++++++++---------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/website/docs/docs/build/incremental-models.md b/website/docs/docs/build/incremental-models.md index 01a392c12fe..46788758ee6 100644 --- a/website/docs/docs/build/incremental-models.md +++ b/website/docs/docs/build/incremental-models.md @@ -249,31 +249,29 @@ The `merge` strategy is available in dbt-postgres and dbt-redshift beginning in - -| data platform adapter | default strategy | additional supported strategies | -| :-------------------| ---------------- | -------------------- | -| [dbt-postgres](/reference/resource-configs/postgres-configs#incremental-materialization-strategies) | `append` | `delete+insert` | -| [dbt-redshift](/reference/resource-configs/redshift-configs#incremental-materialization-strategies) | `append` | `delete+insert` | -| [dbt-bigquery](/reference/resource-configs/bigquery-configs#merge-behavior-incremental-models) | `merge` | `insert_overwrite` | -| [dbt-spark](/reference/resource-configs/spark-configs#incremental-models) | `append` | `merge`, `insert_overwrite` | -| [dbt-databricks](/reference/resource-configs/databricks-configs#incremental-models) | `merge` | `append`, `insert_overwrite` | -| [dbt-snowflake](/reference/resource-configs/snowflake-configs#merge-behavior-incremental-models) | `merge` | `append`, `delete+insert` | -| [dbt-trino](/reference/resource-configs/trino-configs#incremental) | `append` | `merge`, `delete+insert` | +| data platform adapter | `append` | `merge` | `delete+insert` | `insert_overwrite` | +|-----------------------------------------------------------------------------------------------------|:--------:|:-------:|:---------------:|:------------------:| +| [dbt-postgres](/reference/resource-configs/postgres-configs#incremental-materialization-strategies) | ✅ | | ✅ | | +| [dbt-redshift](/reference/resource-configs/redshift-configs#incremental-materialization-strategies) | ✅ | | ✅ | | +| [dbt-bigquery](/reference/resource-configs/bigquery-configs#merge-behavior-incremental-models) | | ✅ | | ✅ | +| [dbt-spark](/reference/resource-configs/spark-configs#incremental-models) | ✅ | ✅ | | ✅ | +| [dbt-databricks](/reference/resource-configs/databricks-configs#incremental-models) | ✅ | ✅ | | ✅ | +| [dbt-snowflake](/reference/resource-configs/snowflake-configs#merge-behavior-incremental-models) | ✅ | ✅ | ✅ | | +| [dbt-trino](/reference/resource-configs/trino-configs#incremental) | ✅ | ✅ | ✅ | | - -| data platform adapter | default strategy | additional supported strategies | -| :----------------- | :----------------| : ---------------------------------- | -| [dbt-postgres](/reference/resource-configs/postgres-configs#incremental-materialization-strategies) | `append` | `merge` , `delete+insert` | -| [dbt-redshift](/reference/resource-configs/redshift-configs#incremental-materialization-strategies) | `append` | `merge`, `delete+insert` | -| [dbt-bigquery](/reference/resource-configs/bigquery-configs#merge-behavior-incremental-models) | `merge` | `insert_overwrite` | -| [dbt-spark](/reference/resource-configs/spark-configs#incremental-models) | `append` | `merge`, `insert_overwrite` | -| [dbt-databricks](/reference/resource-configs/databricks-configs#incremental-models) | `merge` | `append`, `insert_overwrite` | -| [dbt-snowflake](/reference/resource-configs/snowflake-configs#merge-behavior-incremental-models) | `merge` | `append`, `delete+insert` | -| [dbt-trino](/reference/resource-configs/trino-configs#incremental) | `append` | `merge`, `delete+insert` | +| data platform adapter | `append` | `merge` | `delete+insert` | `insert_overwrite` | +|-----------------------------------------------------------------------------------------------------|:--------:|:-------:|:---------------:|:------------------:| +| [dbt-postgres](/reference/resource-configs/postgres-configs#incremental-materialization-strategies) | ✅ | ✅ | ✅ | | +| [dbt-redshift](/reference/resource-configs/redshift-configs#incremental-materialization-strategies) | ✅ | ✅ | ✅ | | +| [dbt-bigquery](/reference/resource-configs/bigquery-configs#merge-behavior-incremental-models) | | ✅ | | ✅ | +| [dbt-spark](/reference/resource-configs/spark-configs#incremental-models) | ✅ | ✅ | | ✅ | +| [dbt-databricks](/reference/resource-configs/databricks-configs#incremental-models) | ✅ | ✅ | | ✅ | +| [dbt-snowflake](/reference/resource-configs/snowflake-configs#merge-behavior-incremental-models) | ✅ | ✅ | ✅ | | +| [dbt-trino](/reference/resource-configs/trino-configs#incremental) | ✅ | ✅ | ✅ | | From ead19cd468b7a448487b6eb3c6a19e34f8ea7b5c Mon Sep 17 00:00:00 2001 From: David Birks Date: Fri, 15 Dec 2023 00:05:06 -0500 Subject: [PATCH 9/9] Fix customers spelling --- website/docs/guides/snowflake-qs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/guides/snowflake-qs.md b/website/docs/guides/snowflake-qs.md index abb18276b97..5b4f9e3e2be 100644 --- a/website/docs/guides/snowflake-qs.md +++ b/website/docs/guides/snowflake-qs.md @@ -462,7 +462,7 @@ Sources make it possible to name and describe the data loaded into your warehous 5. Execute `dbt run`. - The results of your `dbt run` will be exactly the same as the previous step. Your `stg_cusutomers` and `stg_orders` + The results of your `dbt run` will be exactly the same as the previous step. Your `stg_customers` and `stg_orders` models will still query from the same raw data source in Snowflake. By using `source`, you can test and document your raw data and also understand the lineage of your sources.