ウェアハウスサイズの拡大¶
このトピックでは、ウェアハウスの所有者または管理者がウェアハウスのサイズを調整して、ウェアハウスで実行されているクエリのパフォーマンスを向上させる方法について説明します。
ウェアハウスが大きくなればなるほど、クエリまたは一連のクエリを実行するために使用できるコンピューティングリソースが増えます。このため、ウェアハウスのサイズを大きくすることは、クエリのパフォーマンスを向上させるための簡単な戦略になります。単純にウェアハウスのサイズを拡大し、クエリを再実行します。パフォーマンスの向上がクエリの実行コストの増加に見合わない場合は、ウェアハウスを元のサイズに戻します。
大規模なウェアハウスを使用すると、大規模で複雑なクエリに最大の影響があり、小規模で基本的なクエリのパフォーマンスは向上しない場合があります。
注釈
このトピックで提供されている診断クエリを実行するには、 共有 SNOWFLAKE データベースへのアクセス が必要です。デフォルトでは、 ACCOUNTADMIN ロールのみがクエリを実行するために必要な権限を持っています。
ウェアハウスの負荷の決定¶
ウェアハウスの負荷を調べると、ウェアハウスのサイズを大きくすることによりパフォーマンスが向上するかどうかを判断するのに役立ちます。ウェアハウスの負荷が高い場合は、同時実行クエリの必要とするコンピューティングリソースが競合する可能性があります。この場合は、ウェアハウスのサイズを大きくしても、期待したほどパフォーマンスが向上しない可能性があります。ただし、負荷が低いと判断できる場合は、ウェアハウスのサイズを大きくすると、複雑なクエリのパフォーマンスが向上する可能性が高くなります。
クエリ: ウェアハウスの負荷
このクエリは、実行されたクエリとキューに入れられたクエリのウェアハウスの総負荷に関する洞察を提供します。これらの負荷値は、間隔内の特定の状態にあるすべてのクエリの合計実行時間(秒単位)と、その間隔の合計時間(秒単位)の比率を表します。
たとえば、276秒が、5分(300秒)間隔のクエリ4つの合計時間である場合、クエリ負荷値は276/300=0.92です。
 SELECT TO_DATE(start_time) AS date,
  warehouse_name,
  SUM(avg_running) AS sum_running,
  SUM(avg_queued_load) AS sum_queued
FROM snowflake.account_usage.warehouse_load_history
WHERE TO_DATE(start_time) >= DATEADD(month,-1,CURRENT_TIMESTAMP())
GROUP BY 1,2
HAVING SUM(avg_queued_load) >0;
コストの考慮事項¶
ウェアハウスが大きいほど、特定の期間に一段と多くのクレジットを消費します。
| ウェアハウスサイズ | クレジット / 時間(Gen1ウェアハウス) | クレジット / 秒(Gen1ウェアハウス) | 注意 | 
|---|---|---|---|
| XS | 1 | 0.0003 | Snowsight で作成され CREATE WAREHOUSE を使用するウェアハウスのデフォルトサイズ。 | 
| S | 2 | 0.0006 | |
| 中 | 4 | 0.0011 | |
| L | 8 | 0.0022 | |
| XL | 16 | 0.0044 | Classic Console を使用して作成されたウェアハウスのデフォルトサイズ。 | 
| 2XL | 32 | 0.0089 | |
| 3XL | 64 | 0.0178 | |
| 4XL | 128 | 0.0356 | |
| 5XL | 256 | 0.0711 | Amazon Web Services(AWS)およびMicrosoft Azureリージョンで一般公開され、 US 政府リージョンではプレビュー段階にあります。 | 
| 6XL | 512 | 0.1422 | Amazon Web Services(AWS)およびMicrosoft Azureリージョンで一般公開され、 US 政府リージョンではプレビュー段階にあります。 | 
前テーブルの数字は、Snowflake標準ウェアハウスの第一世代(Gen1)を参照しています。新しいGen2ウェアハウスの使用情報については、 Snowflake第2世代標準ウェアハウス を参照してください。第 2 世代標準ウェアハウスのクレジット消費に関する情報は、 Snowflake Service Consumption Table を参照してください。Gen2ウェアハウスはまだすべてのクラウドサービスプロバイダーやリージョンで利用可能ではなく、標準ウェアハウスを作成する際のデフォルトではありません。
Tip
RESOURCE_CONSTRAINT プロパティの変更によるコストへの影響については、 :ref:`ウェアハウスの稼働中または一時停止中の RESOURCE_CONSTRAINT の変更に関する考慮事項 <label-gen_2_standard_warehouses_altering>`をご参照ください。
ウェアハウスのサイズを変えずにSnowflakeウェアハウスの容量を拡張するもう一つの方法は、マルチクラスタ ウェアハウスを使用することです。この機能の詳細については、 マルチクラスターウェアハウス を参照してください。
大規模なウェアハウスでクエリの実行にかかる時間が短い場合、大規模なウェアハウスを実行するコストの増加は、実行時間の短縮によって相殺される可能性があります。たとえば、今よりも1サイズ大きいウェアハウスでクエリ実行の速さが2倍になる場合、クエリを実行するための総コストは変わりません。
Tip
ベストプラクティスは、ウェアハウスのサイズを調整できるユーザーを制限することです。ユーザーが個別のクエリのニーズを満たすためにウェアハウスのサイズを大きくできるようにすると、クエリの実行後にウェアハウスを元のサイズに戻すのを忘れて、予期しないコストが発生する可能性があります。
ウェアハウスのサイズを増やす方法¶
ウェアハウスのサイズを増やすには、次のいずれかを実行します。
- Snowsight:
- Snowsight にサインインします。 
- ナビゲーションメニューで Compute » Warehouses を選択します。 
- ウェアハウスを見つけて、 ... » Edit を選択します。 
- Size ドロップダウンを使用して、新しいウェアハウスサイズを選択します。 
- Save Warehouse を選択します。 
 
- SQL:
- ALTER WAREHOUSE コマンドを使用して、ウェアハウスのサイズを変更します。例: - ALTER WAREHOUSE my_wh SET WAREHOUSE_SIZE = large;