◾️はじめに
https://dk521123.hatenablog.com/entry/2023/12/10/125512
で、DBTのデータリネージ(Data Lineage)に関して触れたが Snowflakeでもデータリネージ(Data Lineage)機能があるらしいので メモしておく
目次
【1】データリネージ(Data Lineage) 【2】GET_LINEAGE 1)構文 2)サンプル 【3】補足:Web UI での確認
【1】データリネージ(Data Lineage)
https://dk521123.hatenablog.com/entry/2023/12/10/125512
より抜粋 ~~~~~~~~~ * データ源泉(source)から現在地点までのデータ変遷のことで データ(テーブル)がどう結びついているを把握することができる cf. Lineage(リネージ) = 血統, 系統 ~~~~~~~~~
【2】GET_LINEAGE
* 指定したテーブルがどのテーブルからきたのかを取得できる関数
https://docs.snowflake.com/ja/sql-reference/functions/get_lineage-snowflake-core
1)構文
SNOWFLAKE.CORE.GET_LINEAGE(
'<object_name>',
'<object_domain>',
'<direction>',
[ <distance>, ]
[ '<object_version>' ]
)
| 項目 | 説明 |
|---|---|
| object_name | テーブルであれば、[DB].[SCHEMA].[TABLE]で指定 |
| object_domain | COLUMN / TABLE / STAGEで指定 |
| direction | UPSTREAM / DOWNSTREAM で指定 |
| distance | どの位遡るか(MAX・Default:5) で指定 |
| object_version | バージョン指定 |
2)サンプル
SELECT * FROM TABLE (SNOWFLAKE.CORE.GET_LINEAGE( 'demo_db.demo_schema.demo_table', 'TABLE', 'DOWNSTREAM', 2 ));
【3】補足:Web UI での確認
[1] 対象のテーブル・ビューを開く [2] 右上の矢印アイコンで詳細を開く [3] Lineageタブを押す => すると、グラフで視覚的にリネージされたテーブルが表示される => こっちの方が分かりやすい
https://docs.snowflake.com/ja/user-guide/ui-snowsight-lineage
参考文献
https://blog.truestar.co.jp/snowflake/20241205/61221/
https://zenn.dev/nttdata_tech/articles/20bd9742815995
関連記事
Snowflake ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2021/11/02/130111
Snowflake ~ 入門編 / Hello world ~
https://dk521123.hatenablog.com/entry/2021/11/22/212520
dbt CLI ~ ドキュメント化 / dbt docs ~
https://dk521123.hatenablog.com/entry/2023/12/10/125512