stellar-models/README.md
eric-laurello d561255434
AN-5747 stellar gold (#3)
* first commit, added all docs but no transformations yet

* added all gold models, plus enhanced (EZ) operations and docs

* Silver incremental logic (#2)

* check in

* check in, gte in progress

* bronze & silver

* updated docs and gold models

* updated working gold models

* adding ez__operations as well

* SO, cluster, fix silver accounts

* updated ez config

* updated ez config formatting (minor)

* changed filenames and dir structure

* fixed and ran ez_operations, updated a line in the readme

---------

Co-authored-by: Mike Stepanovic <mike.stepanovic@flipsidecrypto.com>
2025-02-11 12:50:57 -05:00

73 lines
2.1 KiB
Markdown

## Profile Set Up
#### Use the following within profiles.yml
----
```yml
stellar:
target: dev
outputs:
dev:
type: snowflake
account: <ACCOUNT>
role: <ROLE>
user: <USERNAME>
password: <PASSWORD>
region: <REGION>
database: STELLAR_DEV
warehouse: <WAREHOUSE>
schema: silver
threads: 4
client_session_keep_alive: False
query_tag: <TAG>
```
### Resources:
- Learn more about Stellar's [Hubble dataset](https://developers.stellar.org/docs/data/hubble)
- Learn more about dbt [in the docs](https://docs.getdbt.com/docs/introduction)
- Check out [Discourse](https://discourse.getdbt.com/) for commonly asked questions and answers
- Join the [chat](https://community.getdbt.com/) on Slack for live discussions and support
- Find [dbt events](https://events.getdbt.com) near you
- Check out [the blog](https://blog.getdbt.com/) for the latest news on dbt's development and best practices
## Applying Model Tags
### Database / Schema level tags
Database and schema tags are applied via the `add_database_or_schema_tags` macro. These tags are inherited by their downstream objects. To add/modify tags call the appropriate tag set function within the macro.
```
{{ set_database_tag_value('SOME_DATABASE_TAG_KEY','SOME_DATABASE_TAG_VALUE') }}
{{ set_schema_tag_value('SOME_SCHEMA_TAG_KEY','SOME_SCHEMA_TAG_VALUE') }}
```
### Model tags
To add/update a model's snowflake tags, add/modify the `meta` model property under `config`. Only table level tags are supported at this time via DBT.
```
{{ config(
...,
meta={
'database_tags':{
'table': {
'PURPOSE': 'SOME_PURPOSE'
}
}
},
...
) }}
```
By default, model tags are not pushed to snowflake on each load. You can push a tag update for a model by specifying the `UPDATE_SNOWFLAKE_TAGS` project variable during a run.
```
dbt run --var '{"UPDATE_SNOWFLAKE_TAGS":True}' -s models/core/core__fact_trades.sql
```
### Querying for existing tags on a model in snowflake
```
select *
from table(stellar.information_schema.tag_references('stellar.core.fact_ledgers', 'table'));
```