dbt_ethereum

Models

NFT

model description
nft_trades Each record represents a trade in OpenSea/CryptoPunks, enriched with data about the trade.
nft_mints Each record represents an ERC721/ERC1155 token that has been minted

Labels

model description
nft_whale
smart_nft_holder
smart_nft_trader
smart_nft_sweeper

Development Instructions

Install dbt (with Spark adapter):

pip install 'dbt-spark[PyHive]'

Install sqlfluff (for syntax check):

pip install sqlfluff
pip install sqlfluff-templater-dbt

Run integration tests for utils:

cd integration_tests
dbt seed
dbt run --models ./models/utils
dbt test

Operational Instructions

Execute a node + any upstream nodes. It is useful when testing your models:

dbt run --select +{MODEL} --target beta

Backfill the history/single date of an incremental model:

dbt run --select {MODEL} --full-refresh --target prod
dbt run --select {MODEL}  --vars '{"start_ts": "2022-01-01", "end_ts": "2022-01-02"}'  --target prod

Refresh external tables:

dbt run-operation stage_external_sources --vars "ext_full_refresh: true"