リソースモニターの操作¶
リソースモニター は、コストを管理し、ウェアハウスの実行に起因する予期しないクレジット使用状況を回避するのに役立ちます。仮想ウェアハウス は、実行中にSnowflakeクレジットを消費します。リソースモニターを使用して、仮想ウェアハウスによるクレジット使用状況と、それらのウェアハウスをサポートするために必要なクラウドサービスをモニターできます。また、リソースモニターを設定して、ユーザーが管理する仮想ウェアハウスがクレジットの制限に達したときに中断することもできます。
重要
リソースモニターはウェアハウスに対してのみ機能します。リソースモニターを使用して、サーバーレス機能や AI サービスに関連付けられた支出を追跡することはできません。これらの機能によるクレジットの消費を監視するには、代わりに 予算 を使用します。
消費されるクレジットの数は、ウェアハウスのサイズと実行時間によって異なります。ウェアハウスのクレジット使用状況については、 仮想ウェアハウスのクレジット使用状況 をご参照ください。
クレジット使用状況の制限は、指定された間隔または日付範囲に対して設定できます。制限に達したとき、および/または指定されたしきい値に達したとき、リソースモニターは、アラート通知の送信、および/またはユーザーが管理するウェアハウスの中断など、さまざまなアクションをトリガーできます。
リソースモニターを作成できるのは、 ACCOUNTADMIN ロールを持つユーザーだけですが、アカウント管理者は他のロールに権限を付与して、他のユーザーがリソースモニターを表示および変更できるようにすることができます。
リソースモニターのプロパティ¶
リソースモニターはSnowflakeのファーストクラスオブジェクトであり、次のプロパティで構成されています。
クレジットクォータ¶
クレジットクォータは、指定された頻度の間隔でモニターに割り当てられるSnowflakeクレジットの数を指定します。任意の数を指定できます。
さらに、Snowflakeは、監視に割り当てられたすべてのウェアハウスにおいて、指定された頻度間隔内で 使用済みクレジット/クォータ を追跡します。指定した間隔で、この数値は 0 にリセットされます。
クレジットクォータは、ユーザー管理の仮想ウェアハウスとクラウドサービスで使用する仮想ウェアハウスの両方で消費されるクレジットを考慮します。
例えば、リソースモニターの上限が1000クレジットに設定されているとします。ウェアハウスが700クレジットを消費し、クラウドサービスが指定された間隔または日付範囲内で300クレジットを消費すると、アラートがトリガーされます。
注釈
リソースモニターの制限は、クラウドサービスの毎日の10%調整を考慮しません。Snowflakeは、クラウドサービスレイヤーによるすべてのクレジット消費を使用して、その消費が請求されない場合でも、制限に達したかどうかを計算します。クラウドサービスのクレジットと調整の計算方法の詳細については、 クラウドサービスの使用に対する請求について をご参照ください。
クラウドサービスのクレジット使用状況を表示する手順については、 コンピューティングコストの調査 をご参照ください。
モニタータイプ¶
このプロパティは、リソースモニターがアカウントまたは個々のウェアハウスの特定のセットを監視するために使用されるかどうかを指定します。
アカウントモニター は、アカウント内のすべてのウェアハウスのクレジット使用状況を監視します。アカウントは1つのアカウントモニターしか持つことができません。
ウェアハウスモニター は、リソースモニターに割り当てられたウェアハウスのクレジット使用状況を監視します。アカウントは複数のウェアハウスモニターを持つことができます。
ウェアハウスモニターには1つ以上のウェアハウスを割り当てることができますが、各ウェアハウスは1つのリソースモニターにしか割り当てることができません。
このプロパティが設定されていない場合、リソースモニターはクレジット使用状況を監視しません。単に休止状態のままとなります。
詳細については、 リソースモニターの割り当て をご参照ください。
スケジュール¶
リソースモニターのデフォルトのスケジュールでは、クレジットの使用状況の監視をすぐに開始し、使用済みクレジットを各暦月の初め(つまり、標準のSnowflake請求サイクルの開始)に 0 にリセットするように指定しています。
ただし、オプションで、次のプロパティを使用してリソースモニターのスケジュールをカスタマイズできます。
- 頻度:
指定された開始日に 比例 して使用済みクレジットがリセットされる間隔です。
サポートされている値:
毎日
毎週
毎月
毎年
なし(使用済みクレジットがリセットされることはありません。割り当てられたウェアハウスはクレジットクォータに達するまでクレジットを使用し続けます)
- 開始:
リソースモニターが割り当てられたウェアハウスの監視を開始する日時(タイムスタンプ)。
サポートされている値:
すぐに(つまり、現在のタイムスタンプ)
後で(つまり、将来のタイムスタンプ)
さらに、Snowflakeはこの日付を使用して、指定された頻度に基づき、使用済みクレジットをリセットする時期を決定します。ただし、開始日時で指定された時刻に関係なく、リソースモニターは12:00 AM UTC にリセットされることに注意してください。たとえば、開始が2019年7月15日(月)の8:00 AM の場合、
頻度 = 毎月: 翌月15日の12:00 AM UTC に使用済みクレジットがリセットされます。
頻度 = 毎週: 翌月曜日の12:00 AM UTC に使用済みクレジットがリセットされます。
開始日として月の最後の日を指定すると、Snowflakeは、その月の日数に関係なく、後続月のすべてで、月の最終日に使用済みクレジットをリセットします。例えば、開始日を1月31日に設定すると、Snowflakeは2月28日(またはうるう年の2月29日)、3月31日、4月30日などにリソースモニターの使用済みクレジットをリセットします。
- 終了:
使用済みクレジットがリソースモニターのアクションに対して定義されたしきい値に到達したかどうかに関係なく、Snowflakeがリソースモニターに関連付けられたウェアハウスを中断する日時(タイムスタンプ)(このトピックの次のセクションを参照)。
サポートされる値: 将来のタイムスタンプすべて。
このプロパティは通常は使用されないことに注意してください。
重要
リソースモニターのスケジュールをカスタマイズすることを選択した場合、頻度はデフォルトのスケジュールとは異なり、指定された開始日に 比例 します。
また、頻度を指定する場合は、開始日時も指定する必要があり、逆も同様です(つまり、一方を設定せずに他方を設定することはできません)。
アクション¶
トリガー とも呼ばれる各アクションはリソースモニターのクレジットクォータのパーセンテージとしてしきい値を指定し、指定された間隔内でしきい値に達したときに実行するアクションを指定します。アクションは 100 より大きいしきい値をサポートすることに注意してください。
リソースモニターは、次のアクションをサポートします。
- 通知と一時停止:
通知を送信し、ウェアハウスで実行されているすべてのステートメントが完了した後、割り当てられたすべてのウェアハウスを中断します。
- 通知と即時一時停止:
通知を送信し、割り当てられたすべてのウェアハウスを即時中断します。これにより、その時点でウェアハウスによって実行されていたステートメントがキャンセルされます。
- 通知:
ウェアハウスに対してアクションは実行しませんが、通知を送信します。
通知は、通知が有効になっているすべてのアカウント管理者に送信されます。ウェアハウスを監視するリソースモニターのメール通知は、それらの通知を受信できる 管理者以外のユーザー にも送信されます。
注釈
管理者以外のユーザーは、 ウェアハウス モニターのメール通知のみを受け取ることができます。
各リソースモニターは、次のアクションを実行できます。
1つの 一時停止 アクション。
1つの 即時停止 アクション。
最大5つの 通知 アクション。
注釈
リソースモニターには、少なくとも1つのアクションが定義されている必要があります。アクションが定義されていない場合、使用済みクレジットがしきい値に達しても何も起こりません。
リソースモニターの割り当て¶
アカウントレベルで単一のモニターを設定して、アカウント内のすべてのウェアハウスのクレジット使用状況を制御できます。
加えて、1つ以上のウェアハウスをリソースモニターに割り当てることができるため、割り当てられた各ウェアハウスのクレジット使用状況を制御できます。ただし、ウェアハウスはアカウントレベル下の1つのリソースモニターにのみ割り当てることができます。
次の図は、1つのリソースモニターがアカウントレベルで設定され、個々のウェアハウスが他の2つのリソースモニターに割り当てられるシナリオを示しています。
この図に基づいて、
アカウント全体のクレジットクォータは、リソースモニター1によって制御される間隔(月、週など)で5000です。間隔内でこのクォータに達すると、リソースモニターに定義されたアクション(一時停止、 即時一時停止 など)が5つのウェアハウスすべてに適用されます。
ウェアハウス3は、間隔内で最大1000クレジットを消費できます。
ウェアハウス4と5は、間隔内で合計で最大2500クレジットを消費できます。
アカウントのクォータに最初に達した場合、ウェアハウス3、4、および5によって消費される実際のクレジットはクォータよりも少ない場合があることに注意してください。
重要
アカウントレベルのリソースモニターは、個々のウェアハウスのリソースモニターの割り当てを上書きしません。アカウントリソースモニターまたはウェアハウスリソースモニターのいずれかが定義済みのしきい値に達し、一時停止アクションが定義されている場合、ウェアハウスは一時停止されます。
アカウントレベルのリソースモニターは、サーバーレス機能(例:Snowpipe、自動再クラスタリング、マテリアライズドビュー)のためにSnowflakeが提供するコンピューティングリソースによるクレジット使用状況を制御しません。
ウェアハウスの一時停止と再開¶
リソースモニターの使用クレジットは、指定された間隔内で割り当てられたすべてのウェアハウスによって消費されたクレジットの合計と、同じ間隔内でそれらのウェアハウスをサポートするために使用されたクラウドサービスを反映します。モニターに 一時停止 または 即時一時停止 アクションが定義されており、使用済みクレジットがアクションのしきい値に達すると、モニターに割り当てられたウェアハウスはすべて一時停止され、次の条件のいずれかが満たされるまで再開できません。
モニターの開始日によって決まる次の間隔(ある場合)が開始されます。
モニターのクレジットクォータが増加します。
一時停止アクションのクレジットしきい値が増加します。
これで、ウェアハウスはモニターに割り当てられなくなります。
モニターはドロップされます。
ウェアハウスレベルのリソースモニターは、クラウドサービスによるクレジットの使用状況をモニターできますが、中断することはできません。仮想ウェアハウスが中断された後も、そのウェアハウスに対して実行される後続のクエリにより、追加のクラウドサービスコストが発生する可能性があります。クラウドサービスのクレジット使用状況の情報については、 クラウドサービスのクレジット使用状況 をご参照ください。
Tip
リソースモニターは、時間単位で消費を厳密に制御することを目的としていません。間隔(日、週、月など)ごとのクレジット消費を追跡および制御するためのものです。また、クレジット使用状況に(個々のクレジットのレベルまで)正確な制限を設定することも意図していません。例えば、リソースモニターのクレジットクォータのしきい値に達すると、割り当てられたウェアハウスは、アクションが 即時一時停止 である場合でも、一時停止までに時間がかかり、追加のクレジットが消費されます。
クォータを厳密に適用する場合は、次をお勧めします。
アクションのクォータしきい値でバッファを使用します(例えば、しきい値を100%ではなく90%に設定します)。
これにより、クレジット使用状況がクォータを超えないようにすることができます。
個々のウェアハウスのクレジット使用状況をより厳密に制御するには、各リソースモニターに1つのウェアハウスのみを割り当てます。
複数のウェアハウスが同じリソースモニターに割り当てられている場合、それらは同じクォータしきい値を共有するため、1つのウェアハウスのクレジット使用状況が他の割り当てられたウェアハウスに影響を与える可能性があります。
リソースモニター通知¶
リソースモニターが アクション のしきい値に達すると、以下のような通知を生成します。
Resource Monitor MY_ACCOUNT_MONITOR has reached 50% of its MONTHLY
quota of 500 credits which has triggered a <action> action.
<アクション> は以下のいずれかのアクションです。
NOTIFY
SUSPEND
SUSPEND_IMMEDIATE
通知の動作は、リソースモニターの タイプ と、個々のユーザーに対して通知が 有効 になっているかどうかによって異なります。通知は以下のように送信されます。
ウェアハウス モニターの場合、以下のユーザーに通知が送信されます。
リソースモニターの通知を有効にしているすべてのアカウント管理者。
リソースモニターの通知リストにある管理者以外のユーザー。
アカウント モニターの場合、以下のユーザーに通知が送信されます。
通知を有効にしている場合、リソースモニターのOWNERSHIP権限を持つアカウント管理者。
All account administrators who have enabled notifications using Snowsight.
注釈
管理者以外のユーザーを アカウント モニターの通知リストに追加することはできません。
重要
Resource monitor notifications can be sent by email or in Snowsight, but are disabled by default. You must set up notifications before they are sent. Users that do not have the ACCOUNTADMIN role can only be sent email notifications.
通知を有効にするには、 通知受信の有効化 をご参照ください。
リソースモニター用 DDL¶
Snowflakeには、リソースモニターを作成および使用/管理するための次の DDL コマンドが用意されています。
さらに、以下の DDL コマンドを使用して、ウェアハウスにリソースモニターを割り当てたり、ウェアハウスがモニターに割り当てられているかどうかを判断することができます。
リソースモニターのアクセス制御権限¶
デフォルトでは、リソースモニターはアカウント管理者のみが作成できるため、アカウント管理者のみが表示および管理できます。
ただし、特定のリソースモニターで次の権限が付与されているロールは、必要に応じて、 SQL を使用してリソースモニターを表示および変更できます。
MONITOR
MODIFY
詳細については、 アクセス制御権限 および GRANT <権限> ... TO ROLE をご参照ください。
Note that only account administrators can view and manage resource monitors via the Snowsight.
通知受信の有効化¶
リソースモニターからの通知を受け取る前に、ウェブインターフェイスで通知を有効にし、メールを確認する必要があります。
- Snowsight:
通知を有効にするには、次の手順に従います。
メールアドレスの確認が済んでいない場合は、確認を行ってください。メールアドレスの確認方法については、 メールアドレスを確認する をご参照ください。
ユーザー名を選択してから、 Profile を選択します
Notifications には、 Enable notifications from resource monitors を選択します。
注釈
メールアドレスの確認を行っていない場合、確認を行うまで Notifications オプションは使用できません。
Notifications では、次のケースで Enable notifications from resource monitors オプションは、ACCOUNTADMIN ロールを持つユーザーのみ使用できます。
アカウントにリソースモニターが割り当てられていて、アカウント管理者がそのアカウントモニターに対してOWNERSHIP権限を持っている場合。
アカウントにウェアハウスモニターがいる場合。すべてのアカウント管理者はウェアハウスモニターの通知を受け取ることができます。
リソースモニターの作成¶
リソースモニターは、ウェブインターフェイスまたは SQL を使用して作成できます。ただし、リソースモニターを作成できるのは、アカウント管理者(ACCOUNTADMIN ロールのあるユーザー)のみです。
500個を超えるウェアハウスにリソースモニターを割り当てることはできません。
重要
少なくとも1つのウェアハウスをリソースモニターに割り当てるか、アカウントレベルでモニターを設定してクレジット使用状況の監視/追跡を開始する 必要があります。
ウェブインターフェイスでは、作成時にこれを行う必要があります。
SQL では、最初にリソースモニターを作成してから、 ALTER WAREHOUSE を別の追加ステップとして実行して、1つ以上のウェアハウスを割り当てる必要があります。
また、リソースモニターアクションがトリガーされたときに通知を受信するには、 通知を有効化 する 必要があります。
デフォルトスケジュールによるリソースモニターの作成¶
ウェブインターフェイスまたは SQL を使用して、デフォルト以外のスケジュールを使用するリソースモニターを作成できます。
注釈
ACCOUNTADMIN ロールを持つユーザーのみリソースモニターを作成できます。
- Snowsight:
Snowsight にサインインします。
ナビゲーションメニューで Admin » Cost management を選択します。
Resource Monitors を選択してから、 + Resource Monitor を選択します。
Name には、リソースモニターの名前を入力します。
Credit Quota には、指定した間隔ごとのクレジット数を入力します。
Monitor Type を選択します。Account を選択してアカウントモニターを作成するか、 Warehouse を選択して監視するウェアハウスを選択します。
Actions では、オプションの横にしきい値を入力して、有効にする通知を選択します。少なくとも1つのオプションを選択する必要があります。
追加の通知を作成するには Add を選択します。通知アクションは5つまで指定できます。
- SQL:
SQL では、このタスクは2つのステップで実行されます。
CREATE RESOURCE MONITOR コマンドを実行しますが、スケジューリングプロパティは指定しません。
ALTER WAREHOUSE ステートメントを実行してウェアハウスをリソースモニターに割り当てる、 または、 ALTER ACCOUNT ステートメントを使用してアカウントのリソースモニターを設定します。
例:
すぐに監視を開始し、各月の初めにリセットし、使用済みクレジットがクレジットクォータの100%に達すると、割り当てられたウェアハウスを一時停止するモニターを作成するには、次を実行します。
USE ROLE ACCOUNTADMIN; CREATE OR REPLACE RESOURCE MONITOR limit1 WITH CREDIT_QUOTA=1000 TRIGGERS ON 100 PERCENT DO SUSPEND; ALTER WAREHOUSE wh1 SET RESOURCE_MONITOR = limit1;
SUSPEND アクションは、現在実行中のクエリが完了するのを待ってから、ウェアハウスを中断します。クエリはしきい値に達する前に開始され、 SUSPEND アクションがトリガーされた後に完了する可能性があります。この場合、ウェアハウスはクレジットクォータに達した後もクレジットを消費し続けます。
90%で中断し、クォータが100%に達したら即座に中断する同様のモニターを作成します。
USE ROLE ACCOUNTADMIN; CREATE OR REPLACE RESOURCE MONITOR limit1 WITH CREDIT_QUOTA=1000 TRIGGERS ON 90 PERCENT DO SUSPEND ON 100 PERCENT DO SUSPEND_IMMEDIATE; ALTER WAREHOUSE wh1 SET RESOURCE_MONITOR = limit1;
この例では、クレジットクォータの90%に達すると通知が送信され、割り当てられたウェアハウスは中断されます。現在実行中のクエリは完了しましたが、リソースモニターによりウェアハウスは新しいクエリを実行できません。割り当てられたウェアハウスがクレジットクォータの100%に達した場合、通知が送信され、ウェアハウスは即時中断され、現在実行中のクエリはすべてキャンセルされます。これにより、アカウント内のすべてのウェアハウスがクレジットを消費するのを防ぐことができます。
最初の例と同様、割り当てられたウェアハウスがクォータを10%を超え、使用済みクレジットがクォータの半分と4分の3ポイントに達するとアカウント管理者に警告する2つの通知アクションを含むモニターを作成するには、次を実行します。
USE ROLE ACCOUNTADMIN; CREATE OR REPLACE RESOURCE MONITOR limit1 WITH CREDIT_QUOTA=1000 TRIGGERS ON 50 PERCENT DO NOTIFY ON 75 PERCENT DO NOTIFY ON 100 PERCENT DO SUSPEND ON 110 PERCENT DO SUSPEND_IMMEDIATE; ALTER WAREHOUSE wh1 SET RESOURCE_MONITOR = limit1;
この例では:
50%および75%の使用状況に達すると、通知を有効化したすべてのアカウント管理者にアラート通知が送信されますが、他のアクションは実行されません。
使用状況が100%に達すると、割り当てられたウェアハウスは一時停止されます。
使用状況が110%に達したときにウェアハウスがまだ実行されている場合、即時一時停止されます。
カスタムスケジュールによるリソースモニターの作成¶
ウェブインターフェイスまたは SQL を使用して、デフォルト以外のスケジュールを使用するリソースモニターを作成できます。
注釈
ACCOUNTADMIN ロールを持つユーザーのみリソースモニターを作成できます。
カスタムスケジュールのリソースモニターを作成するには、次の手順を実行します。
- Snowsight:
Snowsight にサインインします。
ナビゲーションメニューで Admin » Cost management を選択します。
Resource Monitors を選択してから、 + Resource Monitor を選択します。
Name には、リソースモニターの名前を入力します。
Credit Quota には、指定した間隔ごとのクレジット数を入力します。
Monitor Type を選択します。Account を選択してアカウントモニターを作成するか、 Warehouse を選択して監視するウェアハウスを選択します。
Schedule » Customize を選択すると、指定した間隔のカスタムスケジュールが設定されます。この手順をスキップして デフォルトスケジュール を使用できます。
Custom Start Date と Custom End Date を使用してカスタムの開始日と終了日を設定するか、 Range タブを使用して日付範囲を指定できます。
注釈
指定した日時に監視を終了することを選択した場合、クレジットクォータに達していない場合でも、割り当てられたすべてのウェアハウスはその日時に中断されます。これが発生すると、リソースモニターがクォータの一定の割合に達し、即時中断アクションがトリガーされたことを示す通知が送信されます。クォータの割合は、現在の間隔で終了日までに使用されたクレジット数を反映しており、指定されたしきい値ではない場合があります。
また、モニタリングの指定間隔をカスタマイズすることもできます。Resets を選択すると、クレジットクォータをリセットする周期を次の中から選択できます。
Monthly
Daily
Weekly
Yearly
Never
Actions では、オプションの横にしきい値を入力して、有効にする通知を選択します。少なくとも1つのオプションを選択する必要があります。
追加の通知を作成するには Add を選択します。通知アクションは5つまで指定できます。
Actions and Notifications で、オプションの隣にしきい値を入力することで、指定したアクションまたは通知を有効にします。少なくとも1つのオプションを選択する必要があります。
追加の通知を作成するには +Add more notification thresholds を選択します。通知アクションは5つまで指定できます。
- SQL:
次の1つ以上のスケジューリングプロパティを使用して、 CREATE RESOURCE MONITOR コマンドを実行します。
FREQUENCY
START_TIMESTAMP
END_TIMESTAMP
例:
(現在のタイムスタンプに基づいて)即時開始し、同じ日付に毎月リセットし、終了日時がなく、使用済みクレジットがクォータの100%に達したときに割り当てられたウェアハウスを一時停止するアカウントレベルのリソースモニターを作成するには、次を実行します。
USE ROLE ACCOUNTADMIN; CREATE OR REPLACE RESOURCE MONITOR limit1 WITH CREDIT_QUOTA=1000 FREQUENCY = MONTHLY START_TIMESTAMP = IMMEDIATELY TRIGGERS ON 100 PERCENT DO SUSPEND; ALTER WAREHOUSE wh1 SET RESOURCE_MONITOR = limit1;
将来の特定の日時に開始し、同じ日付に毎週リセットし、終了日時がなく、割り当てられた2つのウェアハウスの異なるしきい値で2つの異なる一時停止アクションを実行するリソースモニターを作成するには、次を実行します。
USE ROLE ACCOUNTADMIN; CREATE OR REPLACE RESOURCE MONITOR limit1 WITH CREDIT_QUOTA=2000 FREQUENCY = WEEKLY START_TIMESTAMP = '2019-03-04 00:00 PST' TRIGGERS ON 80 PERCENT DO SUSPEND ON 100 PERCENT DO SUSPEND_IMMEDIATE; ALTER WAREHOUSE wh1 SET RESOURCE_MONITOR = limit1; ALTER WAREHOUSE wh2 SET RESOURCE_MONITOR = limit1;
注釈
カスタマイズされたリソースモニターのスケジュールをデフォルトに戻すことはできません。モニターをドロップして、新しいモニターを作成する必要があります。
リソースモニターの変更¶
既存のリソースモニターの次のプロパティを変更できます。
モニターのクレジットクォータを増減します。
モニターのスケジュール(頻度、開始タイムスタンプ、終了タイムスタンプ)をカスタマイズします。
アクションを追加または削除するか、既存のアクションのしきい値の割合を変更します。
モニターでアカウントを監視している場合、個々のウェアハウスを監視するように変換します。
モニターが個々のウェアハウスを監視している場合は、次を実行します。
リストからウェアハウスを追加または削除します。
アカウントを監視するために変換します。
注釈
これらのプロパティを変更しても、モニターの現在の使用済みクレジットに影響はありません。すべての変更は、変更が保存された後にのみ使用済みクレジットに影響します。
リソースモニターは、ウェブインターフェイスまたは SQL を使用して変更できます。
注釈
リソースモニターのプロパティを変更するには、次の権限が必要です。
リソースモニターのクレジットクォータ、スケジュール、またはアクションを変更するには、ユーザーはリソースモニターで MODIFY 権限を持つロールを使用する必要があります。
リソースモニターのモニタータイプをウェアハウスからアカウントへ、またはその逆に変更するには、ユーザーは ACCOUNTADMIN ロールを使用する必要があります。
ウェアハウスレベルリソースモニターのウェアハウスリストを変更するには、ユーザーは ACCOUNTADMIN ロールを使用する必要があります。
- Snowsight:
Snowsight にサインインします。
ナビゲーションメニューで Admin » Cost management を選択します。
Resource Monitors を選択してから、リソースモニターを選択します。
右上の More メニュー(...)を選択します。Edit を選択します。
- SQL:
クォータを変更する、スケジュールをカスタマイズする、またはアクションを追加/削除/変更するには、 ALTER RESOURCE MONITOR ステートメントを実行します。
たとえば、リソースモニター
limit1のクレジットクォータを3000に増やすには、次のステートメントを実行します。ALTER RESOURCE MONITOR limit1 SET CREDIT_QUOTA=3000;
その他の例については、 例 をご参照ください。
モニタータイプを変更するには、 ALTER WAREHOUSE または ALTER ACCOUNT ステートメントを実行します。
例えば、現在ウェアハウスを監視しているリソースモニター
my_rmを、アカウントmy_accountを監視するように変更するには、次の手順を実行します。リソースモニター
my_rmが監視しているすべてのウェアハウスを見つけます。my_rmのresource_monitor列を確認します。SHOW WAREHOUSES;
次の結果が返されます。
+--------+-----------+----------+---------+---------+--------+------------+------------+--------------+-------------+-----------+--------------+-----------+-------+-------------------------------+-------------------------------+-------------------------------+--------------+---------+------------------+---------+----------+--------+-----------+------------+--------+-----------------+ | name | state | type | size | running | queued | is_default | is_current | auto_suspend | auto_resume | available | provisioning | quiescing | other | created_on | resumed_on | updated_on | owner | comment | resource_monitor | actives | pendings | failed | suspended | uuid | budget | owner_role_type | |--------+-----------+----------+---------+---------+--------+------------+------------+--------------+-------------+-----------+--------------+-----------+-------+-------------------------------+-------------------------------+-------------------------------+--------------+---------+------------------+---------+----------+--------+-----------+------------+--------+-----------------| | MY_WH1 | STARTED | STANDARD | X-Small | 0 | 0 | N | N | 600 | true | | | | | 2024-01-17 14:37:36.223 -0800 | 2024-01-17 14:37:36.325 -0800 | 2024-01-17 14:47:49.854 -0800 | MY_ROLE | | null | 0 | 0 | 0 | 1 | 1222706972 | NULL | ROLE | | MY_WH2 | SUSPENDED | STANDARD | X-Small | 0 | 0 | N | Y | 600 | true | | | | | 2023-12-20 13:50:50.972 -0800 | 2024-01-17 14:28:39.170 -0800 | 2024-01-17 14:37:57.560 -0800 | ACCOUNTADMIN | | MY_RM | 0 | 0 | 0 | 1 | 1222706948 | NULL | ROLE | | MY_WH3 | SUSPENDED | STANDARD | Small | 0 | 0 | N | N | 600 | true | | | | | 2024-01-17 14:26:26.911 -0800 | 2024-01-17 14:33:39.260 -0800 | 2024-01-17 14:38:31.192 -0800 | ACCOUNTADMIN | | MY_RM | 0 | 0 | 0 | 2 | 1222706960 | NULL | ROLE | +--------+-----------+----------+---------+---------+--------+------------+------------+--------------+-------------+-----------+--------------+-----------+-------+-------------------------------+-------------------------------+-------------------------------+--------------+---------+------------------+---------+----------+--------+-----------+------------+--------+-----------------+
リソースモニター
my_rmは2つのウェアハウスmy_wh2とmy_wh3を監視しています。次のステートメントを実行して、両方のウェアハウスのリソースモニターを削除します。
ALTER WAREHOUSE my_wh2 UNSET RESOURCE_MONITOR; ALTER WAREHOUSE my_wh3 UNSET RESOURCE_MONITOR;
次のステートメントを実行して、アカウントを監視するようにリソースモニターを変更します。
ALTER ACCOUNT my_account SET RESOURCE_MONITOR = my_rm;
注釈
リソースモニターにカスタマイズされたスケジュールがある場合、スケジュールをデフォルトに戻すことはできません。モニターをドロップして、新しいモニターを作成する必要があります。
管理者以外のユーザーへのリソースモニター通知の送信¶
管理者以外のユーザーは、 ウェアハウスモニター のメール通知のみを受け取ることができます。管理者以外の各ユーザーは、認証済みのメールアドレスを持っている必要があります。CREATE RESOURCE MONITOR または ALTER RESOURCE MONITOR コマンドを使用して、ウェアハウスモニターに管理者以外のユーザーを5人まで追加できます。
たとえば、ユーザー user1 と user2 をウェアハウスモニター my_warehouse_rm に追加するには、次のステートメントを実行します。
ALTER RESOURCE MONITOR my_warehouse_rm
SET NOTIFY_USERS = (USER1, USER2);
注釈
通知リストに含まれるユーザーに検証済みのメールがない場合、 ステートメントは失敗します。
詳細については、 ALTER RESOURCE MONITOR トピックの NOTIFY_USERSパラメーター および 使用上の注意 をご参照ください。
SQL を使用してリソースモニターを作成する際に、管理者以外のユーザーをリソースモニターの通知リストに追加するには、 CREATE RESOURCE MONITOR をご参照ください。
アカウントのリソースモニターの設定¶
リソースモニターは、ウェブインターフェイスまたは SQL を通じてアカウントに設定できます。
注釈
ACCOUNTADMIN ロールを持つユーザーのみ、アカウントを監視するリソースモニターを設定できます。
- Snowsight:
リソースモニターを作成するときに、モニタータイプをアカウントに設定できます。詳細については、 リソースモニターの作成 をご参照ください。
- SQL:
SQL では、このタスクは2つのステップで実行されます。
CREATE RESOURCE MONITOR コマンドを使用してリソースモニターを作成します(存在していない場合)。
リソースモニターが存在する場合、ウェアハウスレベルのリソースモニターをアカウントのモニターに変更するには、 「リソースモニターの変更」セクションの例 をご参照ください。
ALTER ACCOUNT コマンドを使用して、作成したリソースモニターをアカウントのモニターとして設定します。
たとえば、アカウントリソースモニターを
my_account_rmに設定するには、次のステートメントを実行します。USE ROLE ACCOUNTADMIN; CREATE RESOURCE MONITOR my_account_rm WITH CREDIT_QUOTA=10000 TRIGGERS ON 100 PERCENT DO SUSPEND; ALTER ACCOUNT SET RESOURCE_MONITOR = my_account_rm;
既存のリソースモニターのモニタータイプをウェアハウスモニターからアカウントモニターに変更するには、 「リソースモニターの変更」セクションの例 をご参照ください。
アカウントにリソースモニターが設定されているかどうかを表示するには、ウェブインターフェイスまたは SHOW RESOURCE MONITORS コマンドを使用します。リソースモニターの LEVEL 列には、アカウントまたは個々のウェアハウスに設定されているかどうかが表示されます。
重要
アカウントレベルのリソースモニターは、アカウントで明示的に作成された仮想ウェアハウスのみを制御します。サーバーレス機能のためにSnowflakeが提供するウェアハウス(例:Snowpipe、 自動クラスタリング、および マテリアライズドビュー)によるクレジット使用状況は制御しません。
ウェアハウスレベルのリソースモニターは、クラウドサービスによるクレジットの使用状況をモニターできますが、中断することはできません。モニターは、アカウントで作成されたユーザー管理の仮想ウェアハウスのみを中断できます。ユーザー管理の仮想ウェアハウスが中断された後も、そのウェアハウスに対して実行される後続のクエリにより、追加のクラウドサービスコストが発生する可能性があります。クラウドサービスのクレジット使用状況の情報については、 クラウドサービスのクレジット使用状況 をご参照ください。
リソースモニターへのウェアハウスの割り当て¶
ウェアハウスは、ウェブインターフェイスまたは SQL を介して既存のリソースモニターに割り当てることができます。
注釈
ACCOUNTADMIN ロールを持つユーザーのみが、ウェアハウスをリソースモニターに割り当てることができます。
- Snowsight:
Snowsight にサインインします。
ナビゲーションメニューで Admin » Cost management を選択します。
Resource Monitors を選択してから、リソースモニターを選択します。
右上の More メニュー(...)を選択します。Edit を選択します。
Monitor Type が Account の場合、 Warehouse を選択します。
Warehouse を選択し、監視するウェアハウスを選択します。
- SQL:
ALTER WAREHOUSE コマンドを使用して、ウェアハウスをリソースモニターに割り当てます。
たとえば、リソースモニター
my_rmを使ってウェアハウスmy_whを監視するには、次のステートメントを実行します。ALTER WAREHOUSE my_wh SET RESOURCE_MONITOR = my_rm;
リソースモニターの表示¶
リソースモニターは、ウェブインターフェイスまたは SQL で表示できます。
- Snowsight:
Snowsight にサインインします。
ナビゲーションメニューで Admin » Cost management を選択します。
Resource Monitors を選択すると、自分のロールに MODIFY または MONITOR 権限が付与されているリソースモニターのリストが表示されます。アカウント管理者ユーザーは、すべてのリソースモニターを表示できます。
リソースモニターを選択すると、リソースモニターの設定、現在のクレジット使用状況、リソースモニターの権限を持つロールのリストに関する詳細情報が表示されます。
- SQL:
ACCOUNTADMIN ロール、またはリソースモニターに対する MONITOR または MODIFY 権限が付与されたロールを使用して、 SHOW RESOURCE MONITORS ステートメントを実行します。
さらに、任意のロールを使用して SHOW WAREHOUSES ステートメントを実行することにより、ロールが所有する(またはロールに USAGE 権限が付与されている)ウェアハウスを表示できます。出力には、ウェアハウスが割り当てられているリソースモニター(ある場合)が含まれます。
注釈
リーダーアカウントを作成した プロバイダーアカウント に対して、Snowflakeは追加のビューである RESOURCE_MONITORS を提供します。このビューを使用して、プロバイダーのリーダーアカウントでリソースモニターの使用状況をクエリできます。詳細については、 Account Usage をご参照ください。
リソースモニターの複製¶
リソースモニターは、 複製またはフェールオーバーグループ を使用して、ソースアカウントからターゲットアカウントに複製できます。詳細については、 リソースモニターの複製 をご参照ください。