Budgetsを使用したクレジット使用状況のモニター

Budgetsを使用すると、特定のSnowflakeオブジェクトのグループに対するSnowflakeクレジット使用状況をアカウントレベルでモニターおよび通知できます。

このトピックの内容:

Budgetsの概要

予算により、SnowflakeアカウントまたはSnowflakeオブジェクトのカスタムグループの コンピューティングコスト の月間支出制限を定義できます。支出制限を上回ると予想される場合、予算通知の受け取りを指定したメールアドレスに毎日通知メールが送信されます。

アカウント予算およびカスタム予算

アカウント予算 は、アカウント内のすべての サポートされたオブジェクト の支出をすべて監視します。アカウント予算に関する通知を受け取るには、支出制限を設定し、通知を受け取るメールアドレスを指定します。

また、 カスタム予算 を作成して、サポートされているオブジェクトの特定のグループの支出制限を監視することもできます。アカウント予算と同様に、支出制限と通知メールを受け取るための通知メールアドレスを設定する必要があります。

Snowflakeで予算の使用を開始するには、 アカウント予算をアクティブ化 します。

支出制限と時間間隔

支出制限はSnowflakeクレジットで表示され、警告と通知の目的のみに使用されます。支出制限は、1暦月の時間間隔で設定されます。

時間間隔は、月の初日の12:00AM UTC で始まり、月の最終日の11:59PM UTC で終わります。予算が月の初日以降に作成された場合、最初の監視間隔は当月の最終日までの期間となり、翌月の初日にリセットされます。

月の初日以降に アカウント予算 を有効にした場合、月初からのデータがバックフィルされ、その月の支出制限を超えるかどうかを判断するために使用されます。

月の初日以降に カスタム予算 を作成した場合、その月の履歴データは バックフィルされません。将来の支出予測は、予算が有効になってから数日間のクレジットの使用状況に基づいて行われます。

注釈

月の初日以降にカスタム予算を作成した場合、初月の予算を超過する可能性があります。途中からの月では、予算が作成される前のクレジットの使用状況はカスタム予算ではバックフィルされず、間違った予測になる可能性があります。翌月以降は、支出履歴に基づいてクレジットの使用状況を正しく予測します。

サポートされているオブジェクト

サポートされるオブジェクトのリストの各オブジェクトは、すべてアカウント予算の支出制限に貢献します。カスタム予算では、監視する特定のオブジェクトのグループを選択できます。カスタム予算にオブジェクトを追加すると、予算はバックグラウンドのメンテナンス操作やサーバーレス機能を含む、オブジェクトのすべての計算コストを監視します。たとえば、カスタム予算にテーブルを追加し、そのテーブルで自動クラスタリングを有効にした場合、予算は自動クラスタリングのバックグラウンドメンテナンスのクレジット使用状況を監視します。

予算では、次のSnowflakeオブジェクトを監視できます。

オブジェクト

監視されたコスト

コンピューティングプール

Snowpark Container Servicesのコンピューティングプールの使用状況。詳細については、 コンピューティングプールコスト をご参照ください。

データベース

データベースを予算に追加すると、そのデータベースが含むすべてのサポート対象オブジェクトも自動的に追加されます。予算は以下のオブジェクトとサーバーレス機能のクレジット使用状況を監視します。

  • 上記のスキーマオブジェクトをサポートしています。

  • セカンダリ(レプリカ)データベースの複製。

    注釈

    複製グループまたはフェールオーバーグループで複製されるセカンダリデータベースの複製コストは、アカウント予算でのみ監視できます。

マテリアライズドビュー

マテリアライズドビューのバックグラウンドメンテナンス。詳細については、 マテリアライズドビューのコスト をご参照ください。

パイプ

Snowpipeを使用したデータ読み込み中のリソース消費。詳細については、 Snowpipeコスト をご参照ください。

テーブル

自動クラスタリング および 検索最適化 がテーブル上で有効になっている場合のバックグラウンドメンテナンス操作。

タスク

サーバーレスのタスクはカスタム予算によって監視されます。ユーザーが管理するウェアハウスを使用して実行されるタスクのクレジット使用状況を監視するには、そのウェアハウスを予算に追加する必要があります。詳細については、 タスクのコスト をご参照ください。

スキーマ

スキーマを予算に追加すると、スキーマが含むすべてのサポート対象オブジェクトも自動的に追加されます。予算は上記のようにスキーマオブジェクトのクレジット使用状況を監視します。

ウェアハウス

クエリ実行、ウェブインターフェイス、その他の機能(仮想ウェアハウスのクレジット使用状況 を参照)、サーバーレスタスク、 クラウドサービスのコンピューティング のためのコンピューティングリソース。

サポートされるサーバーレス機能

Budgetsにより、予算に含まれるサポートされたサーバーレス機能のクレジット使用状況がモニターされます。次の表は、クレジット使用状況を監視するためのサーバーレス機能とアカウントおよびカスタム予算のサポート一覧です。

注釈

サーバーレス機能のアカウント予算のサポートは、Account Usage METERING_HISTORY ビュー ビューのサービスタイプの可用性に依存します。

サーバーレス機能

アカウント予算

カスタム予算

オブジェクト

AI_SERVICES

AUTO_CLUSTERING

テーブル

COPY_FILES

HYBRID_TABLE_REQUESTS

MATERIALIZED_VIEW

マテリアライズドビュー

PIPE

パイプ

QUERY_ACCELERATION

QUERY_ACCELERATION_READER

REPLICATION

データベース

SEARCH_OPTIMIZATION

テーブル

SERVERLESS_TASK

タスク

SNOWPARK_CONTAINER_SERVICES

SNOWPIPE_STREAMING

テーブル

WAREHOUSE_METERING

ウェアハウス

WAREHOUSE_METERING_READER

ウェアハウス

予算の通知

予算により、時系列予測に基づき、現在の支出が支出制限を超えそうな場合、毎日アラート通知が送信されます。支出予定額が支出限度額を10%以上上回った時点で通知が始まる。自動アラート通知を受信するには、次を実行する必要があります。

  • 予算の支出制限を設定する。

  • 予算のメール通知を設定する。

以下は、通知メールの例です。

予算通知メールの例

SET_NOTIFICATION_MUTE_FLAG メソッドを呼び出すことで、予算のメール通知を無効にできます。

Budgetのロールと権限

アカウント内のカスタムロールが予算を操作できるようにするには、以下のロールと権限を付与します。

アカウント予算を管理するアプリケーションロール

アカウントのカスタムロールに次のアプリケーションロールを付与し、アカウント予算を変更または監視できます。

アプリケーションロール

説明

BUDGET_VIEWER

ロールが予算使用データを表示し、予算内のリソースを一覧表示できるようにします。

BUDGET_ADMIN

ロールは、支出制限、通知を受け取るメールアドレスのリスト、通知のミュート設定など、予算のプロパティを変更できます。

アプリケーションロールに加えて、カスタムロールがアカウント予算を監視または管理できるようにするために付与すべきその他の必要権限があります。詳細については、 予算のロールと権限 をご参照ください。

カスタム予算を管理するインスタンスロール

各カスタム予算にはインスタンスロールがあり、他のロールに付与して予算を表示または変更できます。

インスタンスロール

説明

VIEWER

ロールが予算使用状況データを表示できるようにします。

ADMIN

ロールは、支出制限、通知を受け取るメールアドレスのリスト、通知のミュート設定、グループ内のオブジェクトを含む、予算のプロパティを変更できます。

インスタンスロールに加えて、カスタムロールがカスタム予算を作成、監視、または変更できるようにするために付与すべきその他の必要権限があります。詳細については、 予算のロールと権限 をご参照ください。

予算のロールと権限

アプリケーションロールまたはインスタンスロールに加えて、予算を監視または管理するカスタムロールには以下の権限を付与する必要があります。

権限またはロール

予算タイプ

作成する

管理する

モニター

メモ

USAGE_VIEWER

両方

Snowflakeデータベースロール USAGE_VIEWER をカスタムロールに付与します。

USAGE

カスタム

カスタム予算を含むデータベースでUSAGE権限を付与します。

USAGE

カスタム

カスタム予算を含むスキーマにUSAGE権限を付与します。

SNOWFLAKE.BUDGET_CREATOR

カスタム

このデータベースロールをカスタムロールに付与して、カスタム予算を作成できるようにします。

CREATE SNOWFLAKE.CORE.BUDGET

カスタム

カスタム予算を含むスキーマにこの権限を付与します。

APPLYBUDGET

カスタム

カスタム予算から追加または削除する各オブジェクトに付与する必要があります。

USAGE

カスタム

カスタム予算からスキーマオブジェクトを追加または削除するには、オブジェクトを含むデータベースとスキーマにこの権限を付与する必要があります。

詳細と例については、次のトピックをご参照ください。

制限事項

以下はBudgetsに関する制限事項です。

  • BUDGET クラスのインスタンスをターゲットアカウントに 複製 することはできません。

  • アカウントには最大100件のカスタム予算を含めることができます。

  • 現在、Budgetsは ハイブリッドテーブル のコストのモニタリングをサポートしていません。