概要
この記事は後ほど修正することを前提に作成しています
Snowflakeで利用状況(特にコスト)を見る方法はいくつか存在します。
-
SnowsightのGUI上で見る方法
Snowsightにログイン後、[管理者] → [コスト管理] で確認することができます
ただし、以下のような課題があります。 -
Cost Optimizer for Snowflake(NTTデータ社提供)で見る方法
利用方法を細かく記載はしませんが、[データ製品] → [アプリ] で該当アプリを検索してインストールすれば、コストの確認が行えます。
ただし、以下のような課題があります。 -
Query attribution costs のログを用いる方法
Snowflake社から2024/8/30に新しい機能の発表があり、Query attribution costsのログを用いると、ユーザ個別の利用状況を可視化することができます。こちらも本記事では細かくは説明しません。
ただし、以下のような課題があります。- 2024/8/20付近以降のデータしか確認できない
https://docs.snowflake.com/en/release-notes/2024/other/2024-08-30-per-query-cost-attribution
- 2024/8/20付近以降のデータしか確認できない
別のユーザ個別の利用状況を可視化する方法
上記方法での課題を解決して、ユーザ個別の利用状況を可視化する方法について解説します。
一旦、超雑に全体像だけ記載した記事をリリースして後で手直ししていこうと思います
用いる情報は、クエリログ(SNOWFALE.ACCOUNT_USAGE.QUERY_HISTORY)とウェアハウス情報(作成したウェアハウスのサイズや各サイズに対するコスト(契約状況で異なる))になります。私の場合、加えて、Snowflakeのユーザ名と社員マスタを紐づけて、ユーザの姓名を表示するようにしたかっため、Python(on Snowlfake)でプログラムを作成し、ユーザ個別の利用状況を可視化するために必要なデータマートを作成しました。
今日はここまでにして、コードやSQLの追加、解説は別途にしようと思います。