From e3f848304155d4d23c7d9b7620b183442c2da007 Mon Sep 17 00:00:00 2001 From: forgash_ Date: Tue, 12 Jul 2022 12:55:52 -0600 Subject: [PATCH] macros and bronze --- dbt_project.yml | 3 +++ macros/create_sps.sql | 6 ++++++ macros/custom_naming_macros.sql | 17 +++++++++++++++++ models/bronze/bronze__blocks.sql | 20 ++++++++++++++++++++ models/bronze/bronze__transactions.sql | 21 +++++++++++++++++++++ 5 files changed, 67 insertions(+) create mode 100644 macros/create_sps.sql create mode 100644 macros/custom_naming_macros.sql create mode 100644 models/bronze/bronze__blocks.sql create mode 100644 models/bronze/bronze__transactions.sql diff --git a/dbt_project.yml b/dbt_project.yml index 1edc9b6..eef5837 100644 --- a/dbt_project.yml +++ b/dbt_project.yml @@ -24,6 +24,9 @@ clean-targets: # directories to be removed by `dbt clean` - "dbt_modules" - "dbt_packages" +on-run-start: + - "{{create_sps()}}" + # Configuring models # Full documentation: https://docs.getdbt.com/docs/configuring-models diff --git a/macros/create_sps.sql b/macros/create_sps.sql new file mode 100644 index 0000000..645917e --- /dev/null +++ b/macros/create_sps.sql @@ -0,0 +1,6 @@ +{% macro create_sps() %} + {% if target.database == 'NEAR' %} + CREATE schema IF NOT EXISTS _internal; +{{ sp_create_prod_clone('_internal') }}; + {% endif %} +{% endmacro %} diff --git a/macros/custom_naming_macros.sql b/macros/custom_naming_macros.sql new file mode 100644 index 0000000..b8a3071 --- /dev/null +++ b/macros/custom_naming_macros.sql @@ -0,0 +1,17 @@ +{% macro generate_schema_name( + custom_schema_name = none, + node = none + ) -%} + {% set node_name = node.name %} + {% set split_name = node_name.split('__') %} + {{ split_name [0] | trim }} +{%- endmacro %} + +{% macro generate_alias_name( + custom_alias_name = none, + node = none + ) -%} + {% set node_name = node.name %} + {% set split_name = node_name.split('__') %} + {{ split_name [1] | trim }} +{%- endmacro %} diff --git a/models/bronze/bronze__blocks.sql b/models/bronze/bronze__blocks.sql new file mode 100644 index 0000000..066e664 --- /dev/null +++ b/models/bronze/bronze__blocks.sql @@ -0,0 +1,20 @@ +{{ config ( + materialized = 'view' +) }} + +SELECT + record_id, + offset_id, + block_id, + block_timestamp, + network, + chain_id, + tx_count, + header, + ingested_at AS _ingested_at, + _inserted_timestamp +FROM + {{ source( + "chainwalkers", + "near_blocks" + ) }} diff --git a/models/bronze/bronze__transactions.sql b/models/bronze/bronze__transactions.sql new file mode 100644 index 0000000..cbe3da1 --- /dev/null +++ b/models/bronze/bronze__transactions.sql @@ -0,0 +1,21 @@ +{{ config ( + materialized = 'view' +) }} + +SELECT + record_id, + tx_id, + tx_block_index, + offset_id, + block_id, + block_timestamp, + network, + chain_id, + tx, + ingested_at AS _ingested_at, + _inserted_timestamp +FROM + {{ source( + "chainwalkers", + "near_blocks" + ) }}