updated silver core pkg, added gold

This commit is contained in:
Mike Stepanovic 2025-05-01 16:06:31 -06:00
parent 1f28a2662d
commit eabf956b38
13 changed files with 182 additions and 12 deletions

View File

@ -0,0 +1,38 @@
{# Get variables #}
{% set vars = return_vars() %}
{# Set fact_blocks specific variables #}
{% set rpc_vars = set_dynamic_fields('fact_blocks') %}
{{ config(
materialized = 'incremental',
incremental_strategy = 'delete+insert',
unique_key = 'blocks_id',
cluster_by = ['block_timestamp::DATE'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number)",
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['gold', 'core', 'phase_2']
) }}
SELECT
block_number,
block_timestamp,
chain_id,
tx_count,
proposer_address,
validator_hash,
{{ dbt_utils.generate_surrogate_key(['block_number']) }} AS fact_blocks_id,
SYSDATE() AS inserted_timestamp,
SYSDATE() AS modified_timestamp,
'{{ invocation_id }}' AS _invocation_id
FROM
{{ ref('silver__blocks') }}
{% if is_incremental() %}
WHERE
modified_timestamp :: DATE >= (
SELECT
MAX(modified_timestamp)
FROM
{{ this }}
)
{% endif %}

View File

@ -0,0 +1,48 @@
{# Get variables #}
{% set vars = return_vars() %}
{# Set fact_transactions specific variables #}
{% set rpc_vars = set_dynamic_fields('fact_transactions') %}
{{ config(
materialized = 'incremental',
incremental_strategy = 'delete+insert',
unique_key = 'msg_attributes_id',
cluster_by = ['block_timestamp::DATE'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number, tx_id)",
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['gold', 'core', 'phase_2']
) }}
SELECT
block_number,
block_timestamp,
tx_id,
tx_succeeded,
CONCAT(
msg_group,
':',
msg_sub_group
) AS msg_group,
msg_index,
msg_type,
attribute_index,
attribute_key,
attribute_value,
{{ dbt_utils.generate_surrogate_key(
['tx_id','msg_index','attribute_index']
) }} AS fact_msg_attributes_id,
SYSDATE() AS inserted_timestamp,
SYSDATE() AS modified_timestamp,
'{{ invocation_id }}' AS _invocation_id
FROM
{{ ref('silver__msg_attributes') }}
{% if is_incremental() %}
WHERE
modified_timestamp :: DATE >= (
SELECT
MAX(modified_timestamp)
FROM
{{ this }}
)
{% endif %}

View File

@ -0,0 +1,44 @@
{# Get variables #}
{% set vars = return_vars() %}
{# Set fact_transactions specific variables #}
{% set rpc_vars = set_dynamic_fields('fact_transactions') %}
{{ config(
materialized = 'incremental',
incremental_strategy = 'delete+insert',
unique_key = 'transactions_id',
cluster_by = ['block_timestamp::DATE'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number, tx_id)",
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['gold', 'core', 'phase_2']
) }}
SELECT
block_number,
block_timestamp,
tx_id,
tx_succeeded,
CONCAT(
msg_group,
':',
msg_sub_group
) AS msg_group,
msg_index,
msg_type,
msg,
{{ dbt_utils.generate_surrogate_key(['tx_id', 'msg_index']) }} AS fact_msgs_id,
SYSDATE() AS inserted_timestamp,
SYSDATE() AS modified_timestamp,
'{{ invocation_id }}' AS _invocation_id
FROM
{{ ref('silver__msgs') }}
{% if is_incremental() %}
WHERE
modified_timestamp :: DATE >= (
SELECT
MAX(modified_timestamp)
FROM
{{ this }}
)
{% endif %}

View File

@ -0,0 +1,44 @@
{# Get variables #}
{% set vars = return_vars() %}
{# Set fact_transactions specific variables #}
{% set rpc_vars = set_dynamic_fields('fact_transactions') %}
{{ config(
materialized = 'incremental',
incremental_strategy = 'delete+insert',
unique_key = 'transactions_id',
cluster_by = ['block_timestamp::DATE'],
incremental_predicates = [fsc_ibc.standard_predicate()],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number, tx_id)",
tags = ['gold', 'core', 'phase_2']
) }}
SELECT
block_number,
block_timestamp,
tx_id,
tx_from,
tx_succeeded,
codespace,
fee,
fee_denom,
gas_used,
gas_wanted,
tx_code,
tx_log,
{{ dbt_utils.generate_surrogate_key(['tx_id']) }} AS fact_transactions_id,
SYSDATE() AS inserted_timestamp,
SYSDATE() AS modified_timestamp,
'{{ invocation_id }}' AS _invocation_id
FROM
{{ ref('silver__transactions') }}
{% if is_incremental() %}
WHERE
modified_timestamp :: DATE >= (
SELECT
MAX(modified_timestamp)
FROM
{{ this }}
)
{% endif %}

View File

@ -7,8 +7,7 @@
materialized = 'incremental',
incremental_strategy = 'delete+insert',
unique_key = 'blocks_id',
cluster_by = ['modified_timestamp::DATE','partition_key'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number)",
cluster_by = ['modified_timestamp::DATE'],
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['silver','core','phase_2']
) }}

View File

@ -6,16 +6,15 @@
{{ config (
materialized = 'incremental',
incremental_strategy = 'delete+insert',
unique_key = 'msgs_id',
cluster_by = ['modified_timestamp::DATE', 'partition_key'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number, transaction_id)",
unique_key = 'msg_attributes_id',
cluster_by = ['modified_timestamp::DATE'],
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['silver', 'core', 'phase_2']
) }}
WITH silver_msgs AS (
SELECT
block_id,
block_number,
block_timestamp,
tx_id,
tx_succeeded,
@ -52,7 +51,7 @@ WITH silver_msgs AS (
{% endif %}
)
SELECT
block_id,
block_number,
block_timestamp,
tx_id,
tx_succeeded,

View File

@ -8,7 +8,6 @@
incremental_strategy = 'delete+insert',
unique_key = 'msgs_id',
cluster_by = ['modified_timestamp::DATE', 'partition_key'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number, transaction_id)",
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['silver', 'core', 'phase_2']
) }}
@ -16,7 +15,7 @@
WITH bronze_msgs AS (
SELECT
transactions.block_id,
transactions.block_number,
transactions.block_timestamp,
transactions.tx_id,
transactions.gas_used,
@ -106,7 +105,7 @@ GROUPING AS (
),
msgs AS (
SELECT
block_id,
block_number,
block_timestamp,
bronze_msgs.tx_id,
tx_succeeded,
@ -138,7 +137,7 @@ msgs AS (
AND bronze_msgs.msg_index = b.msg_index
)
SELECT
block_id,
block_number,
block_timestamp,
tx_id,
tx_succeeded,

View File

@ -9,7 +9,6 @@
incremental_strategy = 'delete+insert',
unique_key = 'transactions_id',
cluster_by = ['modified_timestamp::DATE','partition_key'],
post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION on equality(block_number, transaction_id)",
incremental_predicates = [fsc_ibc.standard_predicate()],
tags = ['silver', 'core', 'phase_2']
) }}