Snowflake データを操作する
Snowflake データを DoiT プラットフォームにインポートしたら、Cloud Analytics や、Budgets・Allocations・Anomaly detection などの DoiT の機能を使用して、Snowflake のコストと使用状況を分析・監視できます。
Cloud Analytics における Snowflake データ
標準ディメンション
標準の Cloud Analytics のディメンション を通じて Snowflake データを取得できます。DoiT の Cloud Analytics と Snowflake の用語の対応は次のとおりです。
| DoiT term | Snowflake term | Snowflake definition |
|---|---|---|
| Billing account ID | ORGANIZATION_NAME | 組織の名前。 |
| Cost | USAGE_IN_CURRENCY | USAGE_DATE の USAGE に対する USAGE_TYPE の請求総額。 |
| Cost type | BALANCE_SOURCE | 日々の使用量の支払いに使用された資金のソース。 BALANCE_SOURCE の取りうる値 を参照。 |
| Project ID | ACCOUNT_NAME | 使用が発生したアカウントの名前。 |
| Service ID | SERVICE_TYPE | 使用の種類。 SERVICE_TYPE の取りうる値 を参照。 |
| SKU | RATING_TYPE | レコード内の使用量がどのようにレーティング(価格付け)されるかを示します。取りうる値:compute・data_transfer・storage・other。 |
| Unit | USAGE | SERVICE_TYPE に基づいて課金対象となる使用量の合計。 |
| Usage | BILLING_TYPE | 請求またはクレジットの対象を示します。 BILLING_TYPE の取りうる値 を参照。 |
BALANCE_SOURCE の取りうる値
-
capacity: 組織のキャパシティ・コミットメントに残っているクレジットで支払われた使用量。 -
free usage: 組織に付与された無料クレジットでカバーされた使用量。 -
overage: 組織がキャパシティ・ロールオーバー・無料クレジットを使い切ったときに発生する、オンデマンド料金で支払われた使用量。 -
rebate: 組織が他の組織とデータを共有した際に付与されたクレジットでカバーされた使用量。 -
rollover: ロールオーバークレジットで支払われた使用量。組織がキャパシティ・コミットメントを更新すると、未使用のクレジットは新しい契約の残高にロールオーバークレジットとして追加されます。
SERVICE_TYPE の取りうる値
-
automatic_clustering: 自動クラスタリングを指します。 -
cloud_services: Cloud Services のクレジット使用量を指します。 -
data_transfer: データ転送コストの理解を指します。 -
logging: Logging and Tracing Overview を指します。 -
materialized_view: Working with Materialized Views を指します。 -
query_acceleration: Using the Query Acceleration Service を指します。 -
replication: 複数アカウント間のレプリケーションとフェイルオーバーの概要を指します。 -
search_optimization: Search Optimization Service を指します。 -
serverless_task: タスクの概要を指します。 -
snowpipe: Snowpipe を指します。 -
snowpipe_streaming: Snowpipe Streaming を指します。 -
storage: ストレージコストの理解を指します。 -
warehouse_metering: 仮想ウェアハウスのクレジット使用量を指します。サーバーレスまたは Cloud Services のコンピュート使用は示しません。
BILLING_TYPE の取りうる値
-
consumption: コンピュートクレジット、ストレージ コスト、データ転送コストに関連する使用量。 -
priority support: プライオリティサポートサービスの料金。この請求はアカウントではなく、契約の条項に関連付けられます。 -
rebate: 組織が他の組織とデータを共有した際に付与されたクレジットでカバーされた使用量。 -
support_credit: Snowflake Support が、Snowflake の問題に起因する請求を取り消すためにアカウントへクレジットしたもの。 -
vps_deployment_fee: Virtual Private Snowflake のデプロイ料金。
システムラベル
以下は、Cloud Analytics で使用できる Snowflake のシステムラベルです。
-
snowflake/database_id: Snowflake データベースの ID。
-
snowflake/database_name: Snowflake データベースの名前。
-
snowflake/query_hash: 識別とグルーピングに使用される、クエリテキストの暗号学的ハッシュ。 Query cost を参照。
-
snowflake/query_parameterized_hash: パラメータ化後のクエリテキストの暗号学的ハッシュで、識別とグルーピングに使用されます。 Query cost を参照。
-
snowflake/service_level: Standard や Enterprise など、Snowflake ウェアハウスに関連付けられたサービスレベル。
-
snowflake/user_name: クエリを実行したユーザーの名前。
-
snowflake/warehouse_credit_cloud_services_rate: ストレージやネットワーキングなどの Cloud Services に対する、ウェアハウスクレジットあたりのコスト。
-
snowflake/warehouse_credit_compute_rate: コンピュートリソースに対する、ウェアハウスクレジットあたりのコスト。
-
snowflake/warehouse_id: Snowflake ウェアハウスの ID。
-
snowflake/warehouse_name: Snowflake ウェアハウスの名前。
QUERY_TAG
DoiT は Snowflake の QUERY_TAG をサポートします。これらのタグは、Cloud Analytics レポート の Labels & Tags に表示されます。
拡張メトリクス
Query Cost
Query Cost メトリックは、Snowflake ウェアハウス内で特定のクエリが消費したリソース量の推定値を定量化します。クエリの実行時間に基づいて、その クエリの実行に関連する計算コストを見積もります。
コンピュートコストは、ウェアハウスの稼働時間に対する各クエリのタイムシェアに基づき、そのウェアハウス上で実行されたすべてのクエリに比例配分されます。たとえば、ウェアハウスが利用可能な 1 時間のうち、あるクエリが 15 秒実行された場合、そのクエリは 1 時間分のコンピュートリソースを消費したものとして記録されます。ウェアハウスが 1 時間アイドル状態で、アクティブなクエリがない場合は、関連するコンピュートコストは発生しません。
Query Cost メトリックは、あくまでクエリのプロファイリングとリソース使用状況の理解を目的としています。実際に発生したコストへ直接対応するものではなく、財務メトリックとして使用すべきではありません。
これをレポートで設定するには、リソース ID でグループ化して、特定のリソース上でどのクエリが実行されたかを確認できます。これにより Snowflake のクエリ ID が特定され、その後 Snowflake で該当クエリを追跡できます。クエリが複数回実行された場合は、それらの繰り返しクエリが全体のコストにどれだけ寄与しているかを追跡できます。
さらに、次のディメンションを使用すると、値が異なる場合でも、同一または類似のクエリを特定するのに役立ちます。
-
snowflake/query_hash: クエリテキストに基づいて生成されます。同じクエリが異なる値で複数回実行されても、
query_hashは同一です。 Using the Hash of the Query (query_hash) を参照。 -
snowflake/query_parameterized_hash: 特定の値をプレースホルダーに置き換えた後に生成されます。同じクエリが異なる値で複数回実行されても、
query_parameterized_hashは同一です。 Using the Hash of the Parameterterized Query (query_parameterized_hash) を参照。
このメトリックの適用例は、Query cost を参照してください。
例レポート
このセクションでは、Cloud Analytics で Snowflake データを扱う方法を示す例レポートを提供します。Snowflake の query tags と、標準のディメンションとメトリクスを組み合わせてレポートを作成できます。
全体のクラウド支出
この例では、直近数か月における組織のクラウドコストを示します。
- グループ化: Provider

DOIT_WAREHOUSE のコスト
この例では、DOIT_WAREHOUSE(DoiT がお客様に代わって作成した warehouse)によって直近数か月に発生したコストを示します。
-
グループ化: snowflake/warehouse_name
-
フィルター: snowflake/warehouse_name equals
DOIT_WAREHOUSE

クエリコスト
この例では、直近 1 か月における日次のクエリコスト上位 10 件を示します。
-
メトリクス: Query Cost
-
フィルター
- Provider:
Snowflake - Service:
WAREHOUSE_METERING
- Provider:
-
グループ化:
Resource -
結果の制限:
limit by top/bottom
