From d1fcd0afed703ddbb3f8ec49e981e4b4f6867dc4 Mon Sep 17 00:00:00 2001 From: fivetran-catfritz <111930712+fivetran-catfritz@users.noreply.github.com> Date: Wed, 8 Jan 2025 15:09:04 -0600 Subject: [PATCH 1/8] MagicBot/add-model-counts updates --- CHANGELOG.md | 6 ++++++ README.md | 14 ++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a39d2b9..1111120 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +# dbt_app_reporting version.version + +## Documentation +- Added Quickstart model counts to README. ([#26](https://github.com/fivetran/dbt_app_reporting/pull/26)) +- Corrected references to connectors and connections in the README. ([#26](https://github.com/fivetran/dbt_app_reporting/pull/26)) + # dbt_app_reporting vNEXTRELEASE ## Under the Hood diff --git a/README.md b/README.md index b91cc5e..f17f90d 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,8 @@ # App Reporting dbt Package ([Docs](https://fivetran.github.io/dbt_app_reporting/)) ## What does this dbt package do? -- Standardizes schemas from various app platform connectors and creates reporting models for all activity aggregated to the device, country, OS version, app version, traffic source and subscription levels. -- Currently supports the following Fivetran app platform connectors: +- Standardizes schemas from various app platform connections and creates reporting models for all activity aggregated to the device, country, OS version, app version, traffic source and subscription levels. +- Currently supports the following Fivetran app platform connections: - [Apple App Store](https://github.com/fivetran/dbt_apple_store) - [Google Play](https://github.com/fivetran/dbt_google_play) - Generates a comprehensive data dictionary of your source and modeled App Reporting data via the [dbt docs site](https://fivetran.github.io/dbt_app_reporting/) @@ -32,11 +32,13 @@ Refer to the table below for a detailed view of final tables materialized by def > The individual Google Play and Apple App Store tables have additional platform-specific metrics better suited for deep-dive analyses. +### Materialized Models +Each Quickstart transformation job run materializes 18 models if all components of this data model are enabled. This count includes all staging, intermediate, and final models materialized as `view`, `table`, or `incremental`. ## How do I use the dbt package? ### Step 1: Pre-Requisites -- **Connector**: Have all relevant Fivetran app platform connectors syncing data into your warehouse. This package currently supports: +- **Connector**: Have all relevant Fivetran app platform connections syncing data into your destination. This package currently supports: - [Apple App Store](https://fivetran.com/docs/applications/apple-app-store) - [Google Play](https://fivetran.com/docs/applications/google-play) - **Database support**: This package has been tested on **BigQuery**, **Snowflake**, **Redshift**, **Postgres** and **Databricks**. Ensure you are using one of these supported databases. @@ -68,7 +70,7 @@ vars: ``` ### Step 4: Disable and Enable Source Tables -Your app platform connectors might not sync every table that this package expects. If your syncs exclude certain tables, it is because you either don't use that functionality in your respective app platforms or have actively excluded some tables from your syncs. +Your app platform connections might not sync every table that this package expects. If your syncs exclude certain tables, it is because you either don't use that functionality in your respective app platforms or have actively excluded some tables from your syncs. If you use subscriptions and have the follow tables enabled for: - Apple App Store @@ -119,8 +121,8 @@ models: ### (Optional) Step 7: Additional configurations
Expand/collapse configurations -#### Union multiple connectors -If you have multiple app reporting connectors in Fivetran and would like to use this package on all of them simultaneously, we have provided functionality to do so. The package will union all of the data together and pass the unioned table into the transformations. You will be able to see which source it came from in the `source_relation` column of each model. To use this functionality, you will need to set either the `_union_schemas` OR `_union_databases` variables (cannot do both) in your root `dbt_project.yml` file. Below are the variables and examples for each connector: +#### Union multiple connections +If you have multiple app reporting connections in Fivetran and would like to use this package on all of them simultaneously, we have provided functionality to do so. The package will union all of the data together and pass the unioned table into the transformations. You will be able to see which source it came from in the `source_relation` column of each model. To use this functionality, you will need to set either the `_union_schemas` OR `_union_databases` variables (cannot do both) in your root `dbt_project.yml` file. Below are the variables and examples for each connector: ```yml vars: From 17126232131d682b74e1b1880ab7b28534262028 Mon Sep 17 00:00:00 2001 From: fivetran-catfritz <111930712+fivetran-catfritz@users.noreply.github.com> Date: Wed, 8 Jan 2025 15:37:13 -0600 Subject: [PATCH 2/8] Update README.md --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f17f90d..f316727 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,15 @@ - [Google Play](https://github.com/fivetran/dbt_google_play) - Generates a comprehensive data dictionary of your source and modeled App Reporting data via the [dbt docs site](https://fivetran.github.io/dbt_app_reporting/) +### Materialized Models + +Each Quickstart transformation job run materializes the following model counts for each selected connector. The total model count represents all staging, intermediate, and final models, materialized as `view`, `table`, or `incremental`: + +| **Connector** | **Model Count** | +| ------------- | --------------- | +| [Apple App Store](https://github.com/fivetran/dbt_apple_store) | 38 | +| [Google Play](https://github.com/fivetran/dbt_google_play) | 40 | + Refer to the table below for a detailed view of final tables materialized by default within this package. Additionally, check out our [Docs site](https://fivetran.github.io/dbt_app_reporting/#!/overview) for more details about these tables. @@ -58,7 +67,7 @@ Do NOT include the individual app platform packages in this file. The app report ### Step 3: Configure Database and Schema Variables By default, this package looks for your app platform data in your target database. If this is not where your app platform data is stored, add the relevant `_database` variables to your `dbt_project.yml` file (see below). -By default, this package also looks for your connector data in specific schemas (`itunes_connect` and `google_play` for Apple App Store and Google Play, respectively). If your data is stored in a different schema, add the relevant `_schema` variables to your `dbt_project.yml` file (see below). +By default, this package also looks for your connection data in specific schemas (`itunes_connect` and `google_play` for Apple App Store and Google Play, respectively). If your data is stored in a different schema, add the relevant `_schema` variables to your `dbt_project.yml` file (see below). ```yml vars: From b958e8eedc887917a88ccd681338af3f806a1d3c Mon Sep 17 00:00:00 2001 From: fivetran-catfritz <111930712+fivetran-catfritz@users.noreply.github.com> Date: Wed, 8 Jan 2025 15:39:43 -0600 Subject: [PATCH 3/8] Update README.md --- README.md | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index f316727..ecb5de0 100644 --- a/README.md +++ b/README.md @@ -18,15 +18,6 @@ - [Google Play](https://github.com/fivetran/dbt_google_play) - Generates a comprehensive data dictionary of your source and modeled App Reporting data via the [dbt docs site](https://fivetran.github.io/dbt_app_reporting/) -### Materialized Models - -Each Quickstart transformation job run materializes the following model counts for each selected connector. The total model count represents all staging, intermediate, and final models, materialized as `view`, `table`, or `incremental`: - -| **Connector** | **Model Count** | -| ------------- | --------------- | -| [Apple App Store](https://github.com/fivetran/dbt_apple_store) | 38 | -| [Google Play](https://github.com/fivetran/dbt_google_play) | 40 | - Refer to the table below for a detailed view of final tables materialized by default within this package. Additionally, check out our [Docs site](https://fivetran.github.io/dbt_app_reporting/#!/overview) for more details about these tables. @@ -42,7 +33,12 @@ Refer to the table below for a detailed view of final tables materialized by def > The individual Google Play and Apple App Store tables have additional platform-specific metrics better suited for deep-dive analyses. ### Materialized Models -Each Quickstart transformation job run materializes 18 models if all components of this data model are enabled. This count includes all staging, intermediate, and final models materialized as `view`, `table`, or `incremental`. +Each Quickstart transformation job run materializes the following model counts for each selected connector. The total model count represents all staging, intermediate, and final models, materialized as `view`, `table`, or `incremental`: + +| **Connector** | **Model Count** | +| ------------- | --------------- | +| [Apple App Store](https://github.com/fivetran/dbt_apple_store) | 38 | +| [Google Play](https://github.com/fivetran/dbt_google_play) | 40 | ## How do I use the dbt package? From d21181ff3f34b45d5031ad7427aff84ac481de32 Mon Sep 17 00:00:00 2001 From: fivetran-catfritz <111930712+fivetran-catfritz@users.noreply.github.com> Date: Wed, 8 Jan 2025 16:12:40 -0600 Subject: [PATCH 4/8] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ecb5de0..16dcb7e 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ Each Quickstart transformation job run materializes the following model counts f | **Connector** | **Model Count** | | ------------- | --------------- | +| App Reporting | 18 | | [Apple App Store](https://github.com/fivetran/dbt_apple_store) | 38 | | [Google Play](https://github.com/fivetran/dbt_google_play) | 40 | From 0f5211d3996f2afc1264aac57ea40869626985d7 Mon Sep 17 00:00:00 2001 From: Avinash Kunnath Date: Thu, 16 Jan 2025 15:35:13 -0800 Subject: [PATCH 5/8] Update connector to connection --- .DS_Store | Bin 0 -> 6148 bytes CHANGELOG.md | 4 +--- README.md | 14 +++++++------- 3 files changed, 8 insertions(+), 10 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..098f93917cf6f2fed599be5f34a07dda04ad1c83 GIT binary patch literal 6148 zcmeHLyG{Z@6upBR1uewFV7Y~zi3uG_vl6UqOsI_r7{Dwn;gMLFu!+Cp7uaf|rQe~A zpWwMO!!pAo!G;(!H<>xhee6ARmfc|?B2gMO@C4)+F^4p+c}&9PJzFs0N=YAI_7(p`k0gZH(#koot~nbDK5_HMCEcVjB1Fc$4?LU zAH~a4T^A$1{RY-?$L~y9KMgnQyp}z*?m#m z>RXU~_n>{3hIq0!@g2FrQ5!tEbS-@Y%r+zX>Vwe=RVLTxyM*gXmD8*FyGm<)sVa!l zCUvl$2G$qOuH^J&Hg0mx=92H3bq-VGWjPiPamhT^ZP>Hf(mM*>>=bYcI0X^~`1#;t zFa{c9h4RsXNxlLAJ-DUeSnkOG$L(Jy`V4yKp2oKEt5Rfvs$tkc_1%3d?r`kvW literal 0 HcmV?d00001 diff --git a/CHANGELOG.md b/CHANGELOG.md index 1111120..2c5fe0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,7 @@ ## Documentation - Added Quickstart model counts to README. ([#26](https://github.com/fivetran/dbt_app_reporting/pull/26)) -- Corrected references to connectors and connections in the README. ([#26](https://github.com/fivetran/dbt_app_reporting/pull/26)) - -# dbt_app_reporting vNEXTRELEASE +- Corrected references to connectors and connections in the README. ([#26](https://github.com/fivetran/dbt_app_reporting/pull/26)) ## Under the Hood - Addition of a section tag within the README so the model descriptions may be accessible within the Fivetran UI for Quickstart. diff --git a/README.md b/README.md index 16dcb7e..e7f4ec1 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,8 @@ # App Reporting dbt Package ([Docs](https://fivetran.github.io/dbt_app_reporting/)) ## What does this dbt package do? -- Standardizes schemas from various app platform connections and creates reporting models for all activity aggregated to the device, country, OS version, app version, traffic source and subscription levels. -- Currently supports the following Fivetran app platform connections: +- Standardizes schemas from various app platform connectors and creates reporting models for all activity aggregated to the device, country, OS version, app version, traffic source and subscription levels. +- Currently supports the following Fivetran app platform connectors: - [Apple App Store](https://github.com/fivetran/dbt_apple_store) - [Google Play](https://github.com/fivetran/dbt_google_play) - Generates a comprehensive data dictionary of your source and modeled App Reporting data via the [dbt docs site](https://fivetran.github.io/dbt_app_reporting/) @@ -44,11 +44,11 @@ Each Quickstart transformation job run materializes the following model counts f ## How do I use the dbt package? ### Step 1: Pre-Requisites -- **Connector**: Have all relevant Fivetran app platform connections syncing data into your destination. This package currently supports: +- Have all relevant Fivetran app platform connections syncing data into your destination. This package currently supports: - [Apple App Store](https://fivetran.com/docs/applications/apple-app-store) - [Google Play](https://fivetran.com/docs/applications/google-play) -- **Database support**: This package has been tested on **BigQuery**, **Snowflake**, **Redshift**, **Postgres** and **Databricks**. Ensure you are using one of these supported databases. -- **dbt Version**: This dbt package requires you have a functional dbt project that utilizes a dbt version within the respective range `>=1.0.0, <2.0.0`. +- This package has been tested on **BigQuery**, **Snowflake**, **Redshift**, **Postgres** and **Databricks**. Ensure you are using one of these supported databases. +- This dbt package requires you have a functional dbt project that utilizes a dbt version within the respective range `>=1.0.0, <2.0.0`. ### Step 2: Installing the Package Include the following github package version in your `packages.yml` @@ -62,7 +62,7 @@ packages: Do NOT include the individual app platform packages in this file. The app reporting package itself has dependencies on these packages and will install them as well. ### Step 3: Configure Database and Schema Variables -By default, this package looks for your app platform data in your target database. If this is not where your app platform data is stored, add the relevant `_database` variables to your `dbt_project.yml` file (see below). +By default, this package looks for your app platform data in your target database. If this is not where your app platform data is stored, add the relevant `_database` variables to your `dbt_project.yml` file (see below). By default, this package also looks for your connection data in specific schemas (`itunes_connect` and `google_play` for Apple App Store and Google Play, respectively). If your data is stored in a different schema, add the relevant `_schema` variables to your `dbt_project.yml` file (see below). @@ -128,7 +128,7 @@ models:
Expand/collapse configurations #### Union multiple connections -If you have multiple app reporting connections in Fivetran and would like to use this package on all of them simultaneously, we have provided functionality to do so. The package will union all of the data together and pass the unioned table into the transformations. You will be able to see which source it came from in the `source_relation` column of each model. To use this functionality, you will need to set either the `_union_schemas` OR `_union_databases` variables (cannot do both) in your root `dbt_project.yml` file. Below are the variables and examples for each connector: +If you have multiple app reporting connections in Fivetran and would like to use this package on all of them simultaneously, we have provided functionality to do so. The package will union all of the data together and pass the unioned table into the transformations. You will be able to see which source it came from in the `source_relation` column of each model. To use this functionality, you will need to set either the `_union_schemas` OR `_union_databases` variables (cannot do both) in your root `dbt_project.yml` file. Below are the variables and examples for each connection: ```yml vars: From ffdfee2ed2bf4af523a2a43120ff64e092f2c5c0 Mon Sep 17 00:00:00 2001 From: Avinash Kunnath Date: Thu, 16 Jan 2025 16:25:35 -0800 Subject: [PATCH 6/8] Remove DS_STORE --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 2 ++ 2 files changed, 2 insertions(+) delete mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 098f93917cf6f2fed599be5f34a07dda04ad1c83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHLyG{Z@6upBR1uewFV7Y~zi3uG_vl6UqOsI_r7{Dwn;gMLFu!+Cp7uaf|rQe~A zpWwMO!!pAo!G;(!H<>xhee6ARmfc|?B2gMO@C4)+F^4p+c}&9PJzFs0N=YAI_7(p`k0gZH(#koot~nbDK5_HMCEcVjB1Fc$4?LU zAH~a4T^A$1{RY-?$L~y9KMgnQyp}z*?m#m z>RXU~_n>{3hIq0!@g2FrQ5!tEbS-@Y%r+zX>Vwe=RVLTxyM*gXmD8*FyGm<)sVa!l zCUvl$2G$qOuH^J&Hg0mx=92H3bq-VGWjPiPamhT^ZP>Hf(mM*>>=bYcI0X^~`1#;t zFa{c9h4RsXNxlLAJ-DUeSnkOG$L(Jy`V4yKp2oKEt5Rfvs$tkc_1%3d?r`kvW diff --git a/.gitignore b/.gitignore index 49f147c..a36c45b 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ target/ dbt_packages/ logs/ +.DS_Store +package-lock.yml \ No newline at end of file From a7058e7651a8591954a486f122c42f1a4754775a Mon Sep 17 00:00:00 2001 From: Avinash Kunnath Date: Thu, 16 Jan 2025 16:32:01 -0800 Subject: [PATCH 7/8] commit --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e7f4ec1..4b716fb 100644 --- a/README.md +++ b/README.md @@ -143,7 +143,8 @@ vars: To connect your multiple schema/database sources to the package models, follow the steps outlined in the [Union Data Defined Sources Configuration](https://github.com/fivetran/dbt_fivetran_utils/tree/releases/v0.4.latest#union_data-source) section of the Fivetran Utils documentation for the union_data macro. This will ensure a proper configuration and correct visualization of connections in the DAG. #### Change the source table references -If an individual source table has a different name than the package expects, add the table name as it appears in your destination to the respective variable: +If an individual source table has a different name than the package expects, add the table name as it appears in your destination to the respective variable. This is not available when running the package on multiple unioned connections. + > IMPORTANT: See the Apple Store [`dbt_project.yml`](https://github.com/fivetran/dbt_apple_store_source/blob/main/dbt_project.yml) and Google Play [`dbt_project.yml`](https://github.com/fivetran/dbt_google_play_source/blob/main/dbt_project.yml) variable declarations to see the expected names. ```yml From fdc522e5abc55acf3c89b7d17a1367d0da516ed4 Mon Sep 17 00:00:00 2001 From: Avinash Kunnath Date: Thu, 16 Jan 2025 16:33:51 -0800 Subject: [PATCH 8/8] schema' --- integration_tests/ci/sample.profiles.yml | 10 +++++----- integration_tests/dbt_project.yml | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/integration_tests/ci/sample.profiles.yml b/integration_tests/ci/sample.profiles.yml index 4f26f2c..3ecc6da 100644 --- a/integration_tests/ci/sample.profiles.yml +++ b/integration_tests/ci/sample.profiles.yml @@ -16,13 +16,13 @@ integration_tests: pass: "{{ env_var('CI_REDSHIFT_DBT_PASS') }}" dbname: "{{ env_var('CI_REDSHIFT_DBT_DBNAME') }}" port: 5439 - schema: app_reporting_integrations_test_5 + schema: app_reporting_integrations_test_6 threads: 8 bigquery: type: bigquery method: service-account-json project: 'dbt-package-testing' - schema: app_reporting_integrations_test_5 + schema: app_reporting_integrations_test_6 threads: 8 keyfile_json: "{{ env_var('GCLOUD_SERVICE_KEY') | as_native }}" snowflake: @@ -33,7 +33,7 @@ integration_tests: role: "{{ env_var('CI_SNOWFLAKE_DBT_ROLE') }}" database: "{{ env_var('CI_SNOWFLAKE_DBT_DATABASE') }}" warehouse: "{{ env_var('CI_SNOWFLAKE_DBT_WAREHOUSE') }}" - schema: app_reporting_integrations_test_5 + schema: app_reporting_integrations_test_6 threads: 8 postgres: type: postgres @@ -42,13 +42,13 @@ integration_tests: pass: "{{ env_var('CI_POSTGRES_DBT_PASS') }}" dbname: "{{ env_var('CI_POSTGRES_DBT_DBNAME') }}" port: 5432 - schema: app_reporting_integrations_test_5 + schema: app_reporting_integrations_test_6 threads: 8 databricks: catalog: "{{ env_var('CI_DATABRICKS_DBT_CATALOG') }}" host: "{{ env_var('CI_DATABRICKS_DBT_HOST') }}" http_path: "{{ env_var('CI_DATABRICKS_DBT_HTTP_PATH') }}" - schema: app_reporting_integrations_test_5 + schema: app_reporting_integrations_test_6 threads: 8 token: "{{ env_var('CI_DATABRICKS_DBT_TOKEN') }}" type: databricks \ No newline at end of file diff --git a/integration_tests/dbt_project.yml b/integration_tests/dbt_project.yml index f14539b..10b9419 100644 --- a/integration_tests/dbt_project.yml +++ b/integration_tests/dbt_project.yml @@ -6,8 +6,8 @@ vars: # apple_store__using_subscriptions: true # uncomment this line when generating docs! # google_play__using_subscriptions: true # uncomment this line when regenerating docs! # google_play__using_earnings: true # uncomment this line when regenerating docs! - google_play_schema: app_reporting_integrations_test_5 - apple_store_schema: app_reporting_integrations_test_5 + google_play_schema: app_reporting_integrations_test_6 + apple_store_schema: app_reporting_integrations_test_6 google_play_source: google_play_stats_installs_app_version_identifier: "stats_installs_app_version" google_play_stats_crashes_app_version_identifier: "stats_crashes_app_version"