From a83156e9e76bb45e7206b875a5a23cfea742839f Mon Sep 17 00:00:00 2001 From: tarikceric <46071768+tarikceric@users.noreply.github.com> Date: Fri, 8 Sep 2023 10:21:50 -0700 Subject: [PATCH] Sources and disable old models (#344) * sources and views for disabled models * disable models and clean workflow * reference views * set full_refresh to false --- .github/workflows/dbt_run_incremental.yml | 2 +- models/gold/nft/nft__fact_nft_sales.sql | 4 ++-- ...silver__stake_account_ownership_events.sql | 4 +++- .../accounts/silver__token_account_owners.sql | 2 ++ ...ver__token_account_owners_intermediate.sql | 2 ++ ...silver__token_account_ownership_events.sql | 3 ++- .../nfts/silver___nft_distinct_mints.sql | 12 ++++++++++-- models/silver/nfts/silver__nft_bids_yawww.sql | 2 ++ .../silver/nfts/silver__nft_sales_opensea.sql | 2 ++ .../nfts/silver__nft_sales_opensea_view.sql | 19 +++++++++++++++++++ .../silver/nfts/silver__nft_sales_solport.sql | 1 + .../silver/nfts/silver__nft_sales_yawww.sql | 7 ++++++- .../nfts/silver__nft_sales_yawww_view.sql | 19 +++++++++++++++++++ models/silver/silver__signers_nfts_held.sql | 4 +++- models/sources.yml | 3 +++ 15 files changed, 77 insertions(+), 9 deletions(-) create mode 100644 models/silver/nfts/silver__nft_sales_opensea_view.sql create mode 100644 models/silver/nfts/silver__nft_sales_yawww_view.sql diff --git a/.github/workflows/dbt_run_incremental.yml b/.github/workflows/dbt_run_incremental.yml index 0a0008ef..35d9131c 100644 --- a/.github/workflows/dbt_run_incremental.yml +++ b/.github/workflows/dbt_run_incremental.yml @@ -42,6 +42,6 @@ jobs: - name: Run DBT Jobs run: | dbt run-operation run_sp_refresh_external_tables_full - dbt run -s ./models --exclude models/gold tag:share models/streamline models/silver/silver__daily_signers.sql models/silver/silver__signers.sql models/silver/accounts/silver__token_account_owners_intermediate.sql models/silver/accounts/silver__token_account_owners.sql models/silver/silver__signers_nfts_held.sql models/silver/validator models/silver/nfts/silver__nft_sales_opensea.sql models/silver/nfts/silver__nft_sales_yawww.sql models/silver/nfts/silver__nft_bids_yawww.sql models/silver/_observability models/silver/nfts/silver__nft_compressed_mints_onchain.sql models/silver/nfts/silver__nft_compressed_mints.sql + dbt run -s ./models --exclude models/gold tag:share models/streamline models/silver/silver__daily_signers.sql models/silver/silver__signers.sql models/silver/validator models/silver/_observability models/silver/nfts/silver__nft_compressed_mints_onchain.sql models/silver/nfts/silver__nft_compressed_mints.sql dbt run --var '{"UPDATE_SNOWFLAKE_TAGS":True}' -s ./models/gold --exclude models/gold/core/core__ez_signers.sql diff --git a/models/gold/nft/nft__fact_nft_sales.sql b/models/gold/nft/nft__fact_nft_sales.sql index 47e0dce0..37af06eb 100644 --- a/models/gold/nft/nft__fact_nft_sales.sql +++ b/models/gold/nft/nft__fact_nft_sales.sql @@ -89,7 +89,7 @@ SELECT mint, sales_amount FROM - {{ ref('silver__nft_sales_opensea') }} + {{ ref('silver__nft_sales_opensea_view') }} UNION SELECT 'yawww', @@ -103,7 +103,7 @@ SELECT mint, sales_amount FROM - {{ ref('silver__nft_sales_yawww') }} + {{ ref('silver__nft_sales_yawww_view') }} UNION SELECT 'hadeswap', diff --git a/models/silver/accounts/silver__stake_account_ownership_events.sql b/models/silver/accounts/silver__stake_account_ownership_events.sql index 9c5d768a..da662502 100644 --- a/models/silver/accounts/silver__stake_account_ownership_events.sql +++ b/models/silver/accounts/silver__stake_account_ownership_events.sql @@ -2,7 +2,9 @@ materialized = 'incremental', unique_key = ["block_id","tx_id","index","inner_index","authority_type"], incremental_predicates = ['DBT_INTERNAL_DEST.block_timestamp::date >= LEAST(current_date-7,(select min(block_timestamp)::date from ' ~ generate_tmp_view_name(this) ~ '))'], - cluster_by = ['block_timestamp::DATE','_inserted_timestamp::DATE'] + cluster_by = ['block_timestamp::DATE','_inserted_timestamp::DATE'], + full_refresh = false, + enabled = false, ) }} with base_events as ( diff --git a/models/silver/accounts/silver__token_account_owners.sql b/models/silver/accounts/silver__token_account_owners.sql index c96321a7..490472c6 100644 --- a/models/silver/accounts/silver__token_account_owners.sql +++ b/models/silver/accounts/silver__token_account_owners.sql @@ -4,6 +4,8 @@ unique_key = ["account_address"], cluster_by = ['_inserted_timestamp::DATE'], post_hook = "ALTER TABLE {{ this }} ADD SEARCH OPTIMIZATION", + full_refresh = false, + enabled = false, ) }} /* need to rebucket and regroup the intermediate model due to possibility of change events coming in out of order */ diff --git a/models/silver/accounts/silver__token_account_owners_intermediate.sql b/models/silver/accounts/silver__token_account_owners_intermediate.sql index b44bd1e6..44cdc78b 100644 --- a/models/silver/accounts/silver__token_account_owners_intermediate.sql +++ b/models/silver/accounts/silver__token_account_owners_intermediate.sql @@ -2,6 +2,8 @@ materialized = 'incremental', unique_key = ["account_address","owner","start_block_id"], cluster_by = ['_inserted_timestamp::DATE'], + full_refresh = false, + enabled = false, ) }} /* diff --git a/models/silver/accounts/silver__token_account_ownership_events.sql b/models/silver/accounts/silver__token_account_ownership_events.sql index 8e046878..623d8301 100644 --- a/models/silver/accounts/silver__token_account_ownership_events.sql +++ b/models/silver/accounts/silver__token_account_ownership_events.sql @@ -3,7 +3,8 @@ unique_key = ["block_id","tx_id","index","inner_index"], incremental_predicates = ['DBT_INTERNAL_DEST.block_timestamp::date >= LEAST(current_date-7,(select min(block_timestamp)::date from ' ~ generate_tmp_view_name(this) ~ '))'], cluster_by = ['block_timestamp::DATE','_inserted_timestamp::DATE'], - full_refresh = false + full_refresh = false, + enabled = false, ) }} with base_events as ( diff --git a/models/silver/nfts/silver___nft_distinct_mints.sql b/models/silver/nfts/silver___nft_distinct_mints.sql index 7a96b07f..d569c241 100644 --- a/models/silver/nfts/silver___nft_distinct_mints.sql +++ b/models/silver/nfts/silver___nft_distinct_mints.sql @@ -2,6 +2,8 @@ materialized = 'incremental', unique_key = "mint", incremental_strategy = 'delete+insert', + full_refresh = false, + enabled = false, ) }} WITH base AS ( @@ -112,7 +114,10 @@ SELECT mint, _inserted_timestamp FROM - {{ ref('silver__nft_sales_opensea') }} + {{ source( + 'solana_silver', + 'nft_sales_opensea' + ) }} {% if is_incremental() %} WHERE @@ -128,7 +133,10 @@ SELECT mint, _inserted_timestamp FROM - {{ ref('silver__nft_sales_yawww') }} + {{ source( + 'solana_silver', + 'nft_sales_yawww' + ) }} {% if is_incremental() %} WHERE diff --git a/models/silver/nfts/silver__nft_bids_yawww.sql b/models/silver/nfts/silver__nft_bids_yawww.sql index 5ebd91c5..53d340ec 100644 --- a/models/silver/nfts/silver__nft_bids_yawww.sql +++ b/models/silver/nfts/silver__nft_bids_yawww.sql @@ -3,6 +3,8 @@ unique_key = "tx_id", incremental_strategy = 'delete+insert', cluster_by = ['block_timestamp::DATE'], + full_refresh = false, + enabled = false, ) }} WITH yawww_txs AS ( diff --git a/models/silver/nfts/silver__nft_sales_opensea.sql b/models/silver/nfts/silver__nft_sales_opensea.sql index 82cded37..226b5be0 100644 --- a/models/silver/nfts/silver__nft_sales_opensea.sql +++ b/models/silver/nfts/silver__nft_sales_opensea.sql @@ -3,6 +3,8 @@ unique_key = "CONCAT_WS('-', tx_id, mint)", incremental_strategy = 'delete+insert', cluster_by = ['block_timestamp::DATE'], + full_refresh = false, + enabled = false, ) }} WITH sales_inner_instructions AS ( diff --git a/models/silver/nfts/silver__nft_sales_opensea_view.sql b/models/silver/nfts/silver__nft_sales_opensea_view.sql new file mode 100644 index 00000000..6dc8bf55 --- /dev/null +++ b/models/silver/nfts/silver__nft_sales_opensea_view.sql @@ -0,0 +1,19 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + block_timestamp, + block_id, + tx_id, + succeeded, + program_id, + purchaser, + seller, + mint, + sales_amount +FROM + {{ source( + 'solana_silver', + 'nft_sales_opensea' + ) }} \ No newline at end of file diff --git a/models/silver/nfts/silver__nft_sales_solport.sql b/models/silver/nfts/silver__nft_sales_solport.sql index 908110d3..701fe38b 100644 --- a/models/silver/nfts/silver__nft_sales_solport.sql +++ b/models/silver/nfts/silver__nft_sales_solport.sql @@ -3,6 +3,7 @@ unique_key = "CONCAT_WS('-', tx_id, mint)", incremental_strategy = 'delete+insert', cluster_by = ['block_timestamp::DATE'], + full_refresh = false, enabled = false, ) }} diff --git a/models/silver/nfts/silver__nft_sales_yawww.sql b/models/silver/nfts/silver__nft_sales_yawww.sql index 9688c709..302da0ef 100644 --- a/models/silver/nfts/silver__nft_sales_yawww.sql +++ b/models/silver/nfts/silver__nft_sales_yawww.sql @@ -3,6 +3,8 @@ unique_key = "tx_id", incremental_strategy = 'delete+insert', cluster_by = ['block_timestamp::DATE'], + full_refresh = false, + enabled = false, ) }} WITH base_table AS ( @@ -109,7 +111,10 @@ price_bids AS ( acct_2, bid_amount FROM - {{ ref('silver__nft_bids_yawww') }} + {{ source( + 'solana_silver', + 'nft_bids_yawww' + ) }} qualify(ROW_NUMBER() over (PARTITION BY bidder, acct_2 ORDER BY block_timestamp DESC)) = 1 diff --git a/models/silver/nfts/silver__nft_sales_yawww_view.sql b/models/silver/nfts/silver__nft_sales_yawww_view.sql new file mode 100644 index 00000000..102649cb --- /dev/null +++ b/models/silver/nfts/silver__nft_sales_yawww_view.sql @@ -0,0 +1,19 @@ +{{ config( + materialized = 'view' +) }} + +SELECT + block_timestamp, + block_id, + tx_id, + succeeded, + program_id, + purchaser, + seller, + mint, + sales_amount +FROM + {{ source( + 'solana_silver', + 'nft_sales_yawww' + ) }} \ No newline at end of file diff --git a/models/silver/silver__signers_nfts_held.sql b/models/silver/silver__signers_nfts_held.sql index a3b3145d..69d69524 100644 --- a/models/silver/silver__signers_nfts_held.sql +++ b/models/silver/silver__signers_nfts_held.sql @@ -3,7 +3,9 @@ unique_key = "CONCAT_WS('-', signer, nft_held)", incremental_strategy = 'delete+insert', cluster_by = 'signer', - full_refresh = false + full_refresh = false, + enabled = false, + ) }} WITH dates_changed AS ( SELECT diff --git a/models/sources.yml b/models/sources.yml index e037dfe0..3a0bbbb3 100644 --- a/models/sources.yml +++ b/models/sources.yml @@ -68,6 +68,9 @@ sources: tables: - name: nft_sales_solport - name: nft_sales_magic_eden_v1 + - name: nft_sales_opensea + - name: nft_sales_yawww + - name: nft_bids_yawww - name: solana_streamline schema: streamline tables: