duneanalytics / spellbook

SQL views for Dune
Other
1.16k stars 1.1k forks source link

Move bulk SQL INSERTs to /seeds #3333

Closed allenday closed 1 year ago

allenday commented 1 year ago

For example files like this should not be part of a model, but instead be a seed:

https://github.com/duneanalytics/spellbook/blob/main/models/tokens/gnosis/tokens_gnosis_nft_curated.sql

Refactor and put here:

https://github.com/duneanalytics/spellbook/tree/main/seeds.

Here's a very approximate list of culprits:

$ grep -r -B 4 VALUES ./models | grep -v target | perl -ne 's/[:\-]/ /;print' | cut -d' ' -f 1 | sort | uniq

./models/addresses/ethereum/addresses_ethereum_bridges.sql
./models/addresses/ethereum/addresses_ethereum_cex.sql
./models/addresses/ethereum/addresses_ethereum_defi.sql
./models/addresses/ethereum/addresses_ethereum_dex.sql
./models/addresses/ethereum/addresses_ethereum_l2_batch_submitters.sql
./models/addresses/ethereum/addresses_ethereum_mev.sql
./models/addresses/ethereum/addresses_ethereum_ofac_sanctioned.sql
./models/addresses/ethereum/addresses_ethereum_safe_airdrop.sql
./models/addresses/optimism/addresses_optimism_cex.sql
./models/addresses/optimism/addresses_optimism_grants_funding.sql
./models/airdrop/optimism/airdrop_optimism_addresses_1.sql
./models/aragon/ethereum/aragon_ethereum_client_dao_addresses.sql
./models/aragon/gnosis/aragon_gnosis_client_dao_addresses.sql
./models/aragon/polygon/aragon_polygon_client_dao_addresses.sql
./models/aztec/ethereum/aztec_v2_ethereum_bridges.sql
./models/aztec/ethereum/aztec_v2_ethereum_rollupbridge_transfers.sql
./models/balances/ethereum/genesis/genesis_balances.sql
./models/cow_protocol/ethereum/cow_protocol_ethereum_solvers.sql
./models/cow_protocol/gnosis/cow_protocol_gnosis_solvers.sql
./models/cow_protocol/tx_hash_labels/bluechip_investment/ethereum/cow_protocol_tx_hash_labels_bluechip_investment_ethereum.sql
./models/cow_protocol/tx_hash_labels/harvest_yield/ethereum/cow_protocol_tx_hash_labels_harvest_yield_ethereum.sql
./models/cow_protocol/tx_hash_labels/staking_token_investment/ethereum/cow_protocol_tx_hash_labels_staking_token_investment_ethereum.sql
./models/cryptopunks/ethereum/cryptopunks_ethereum_metadata.sql
./models/curvefi/ethereum/curvefi_ethereum_pool_details.sql
./models/curvefi/fantom/curvefi_fantom_pool_tokens.sql
./models/dodo/arbitrum/dodo_pools_arbitrum_trades.sql
./models/dodo/bnb/dodo_pools_bnb_trades.sql
./models/dodo/ethereum/dodo_pools_ethereum_trades.sql
./models/dodo/polygon/dodo_pools_polygon_trades.sql
./models/ellipsis_finance/bnb/ellipsis_finance_bnb_pool_tokens.sql
./models/ironbank/ethereum/ironbank_ethereum_itokens.sql
./models/ironbank/optimism/ironbank_optimism_itokens.sql
./models/labels/addresses/__single_category_labels__/aztec_v2/labels_aztec_v2_contracts_ethereum.sql
./models/labels/addresses/__single_category_labels__/hackers/labels_hackers_ethereum.sql
./models/labels/addresses/__single_category_labels__/ofac_sanctionned/labels_ofac_sanctionned_ethereum.sql
./models/labels/addresses/bridge/identifiers/labels_bridges_ethereum.sql
./models/labels/addresses/bridge/identifiers/labels_bridges_fantom.sql
./models/labels/addresses/dao/identifier/multisigs/labels_dao_multisig_ethereum.sql
./models/labels/addresses/dex/persona/arbitrage_traders/ethereum/labels_arbitrage_traders_ethereum.sql
./models/labels/addresses/dex/usage/trader_kyt/labels_trader_kyt.sql
./models/labels/addresses/infrastructure/identifier/burn_addresses/labels_burn_addresses.sql
./models/labels/addresses/infrastructure/identifier/cex_tokens/labels_cex_tokens.sql
./models/labels/addresses/infrastructure/identifier/stablecoins/labels_stablecoins.sql
./models/labels/addresses/infrastructure/identifier/system_addresses/labels_system_addresses.sql
./models/labels/addresses/infrastructure/identifier/validators/labels_validators_bnb.sql
./models/labels/addresses/infrastructure/persona/mev/labels_mev_ethereum.sql
./models/labels/addresses/institution/identifier/cex/labels_cex_bitcoin.sql
./models/labels/addresses/institution/identifier/cex/labels_cex_bnb.sql
./models/labels/addresses/institution/identifier/cex/labels_cex_ethereum.sql
./models/labels/addresses/institution/identifier/cex/labels_cex_fantom.sql
./models/labels/addresses/institution/identifier/funds/labels_funds_ethereum.sql
./models/maker/ethereum/maker_ethereum_accounting.sql
./models/nexusmutual/ethereum/nexusmutual_ethereum_product_information.sql
./models/nft/arbitrum/nft_arbitrum_aggregators.sql
./models/nft/avalanche_c/nft_avalanche_c_aggregators.sql
./models/nft/bnb/nft_bnb_aggregators.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_art_blocks_collections.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_braindrops.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_bright_moments.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_chromie_squiggle.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_cryptodickbutts.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_fellowship_gallery.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_mirage_gallery_curated.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_proof_grails_i.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_proof_grails_ii.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_ringers.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_terraforms.sql
./models/nft/ethereum/metadata/nft_ethereum_metadata_verse.sql
./models/nft/ethereum/nft_ethereum_aggregators_manual.sql
./models/nft/ethereum/nft_ethereum_aggregators_markers.sql
./models/nft/optimism/nft_optimism_aggregators.sql
./models/nft/polygon/nft_polygon_aggregators.sql
./models/prices/arbitrum/prices_arbitrum_tokens.sql
./models/prices/avalanche_c/prices_avalanche_c_tokens.sql
./models/prices/bnb/prices_bnb_tokens.sql
./models/prices/ethereum/prices_ethereum_tokens.sql
./models/prices/fantom/prices_fantom_tokens.sql
./models/prices/gnosis/prices_gnosis_tokens.sql
./models/prices/optimism/prices_optimism_tokens_curated.sql
./models/prices/polygon/prices_polygon_tokens.sql
./models/prices/prices_native_tokens.sql
./models/prices/solana/prices_solana_tokens.sql
./models/reaper/optimism/reaper_optimism_all_vaults.sql
./models/rocifi/polygon/rocifi_polygon_test_addresses.sql
./models/staking/ethereum/staking_ethereum_entities.sql
./models/superrare/superrare_ethereum_usernames.sql
./models/tokens/arbitrum/tokens_arbitrum_erc20.sql
./models/tokens/arbitrum/tokens_arbitrum_nft_curated.sql
./models/tokens/avalanche_c/tokens_avalanche_c_erc20.sql
./models/tokens/avalanche_c/tokens_avalanche_c_nft_curated.sql
./models/tokens/bnb/tokens_bnb_bep20.sql
./models/tokens/bnb/tokens_bnb_nft_curated.sql
./models/tokens/ethereum/tokens_ethereum_erc20.sql
./models/tokens/ethereum/tokens_ethereum_erc20_stablecoins.sql
./models/tokens/ethereum/tokens_ethereum_nft_curated.sql
./models/tokens/ethereum/tokens_ethereum_rebase.sql
./models/tokens/fantom/tokens_fantom_erc20.sql
./models/tokens/fantom/tokens_fantom_erc20_stablecoins.sql
./models/tokens/fantom/tokens_fantom_nft_curated.sql
./models/tokens/fantom/tokens_fantom_rebase.sql
./models/tokens/gnosis/tokens_gnosis_erc20.sql
./models/tokens/gnosis/tokens_gnosis_nft_curated.sql
./models/tokens/optimism/tokens_optimism_erc20_curated.sql
./models/tokens/optimism/tokens_optimism_erc20_stablecoins.sql
./models/tokens/optimism/tokens_optimism_nft_curated.sql
./models/tokens/polygon/tokens_polygon_erc20.sql
./models/tokens/polygon/tokens_polygon_nft_curated.sql
./models/tokens/solana/tokens_solana_fungible.sql
./models/tokens/tokens_native.sql
0xRobin commented 1 year ago

closing this as we don't actively materialize the seeds so any data that's surfaced on dune should remain in models.