CREATE INTERACTIVE WAREHOUSE¶
インタラクティブなテーブルを使用する、低レイテンシで同時実行性の高いワークロード向けに最適化された、新しいインタラクティブな 仮想ウェアハウス を作成します。
インタラクティブウェアハウスは、インタラクティブテーブルを操作するときに最適なクエリパフォーマンスを提供するように設計されています。インテリジェントなキャッシュと最適化によって、頻繁にアクセスされるデータに対する高速なクエリ応答を提供します。
- こちらもご参照ください。
CREATE WAREHOUSE , ALTER WAREHOUSE , DESCRIBE WAREHOUSE , DROP WAREHOUSE , SHOW WAREHOUSES , CREATE INTERACTIVE TABLE
構文¶
CREATE [ OR REPLACE ] INTERACTIVE WAREHOUSE [ IF NOT EXISTS ] <name>
[ TABLES ( <table_name> [ , <table_name> ... ] ) ]
[ [ WITH ] objectProperties ]
[ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]
[ objectParams ]
条件:
objectProperties ::= WAREHOUSE_SIZE = { XSMALL | SMALL | MEDIUM | LARGE | XLARGE | XXLARGE | XXXLARGE | X4LARGE | X5LARGE | X6LARGE } MAX_CLUSTER_COUNT = <num> MIN_CLUSTER_COUNT = <num> AUTO_RESUME = { TRUE | FALSE } INITIALLY_SUSPENDED = { TRUE | FALSE } RESOURCE_MONITOR = <monitor_name> COMMENT = '<string_literal>'objectParams ::= MAX_CONCURRENCY_LEVEL = <num> STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = <num> STATEMENT_TIMEOUT_IN_SECONDS = <num>
パラメーター¶
nameインタラクティブウェアハウスの識別子を指定します。識別子は、アカウント内で一意である必要があります。
詳細については、 識別子の要件 をご参照ください。
TABLES ( ... )オプションで、インタラクティブウェアハウスにすぐに関連付けるための、インタラクティブテーブル名のコンマ区切りリストを指定します。この句を使用すると、ウェアハウスの作成時に指定されたテーブルのキャッシュ準備プロセスが開始されます。
table_nameウェアハウスに関連付けるインタラクティブテーブルの識別子を指定します。コンマで区切られた複数のテーブル名を指定できます。
注釈
指定されたすべてのテーブルは、
INTERACTIVEキーワード付きで作成されたインタラクティブなテーブルである必要があります。この句を省略すると、後で
ADD TABLES句で ALTER WAREHOUSE を使用してインタラクティブテーブルを関連付けることができます。データのサイズによっては、キャッシュの準備に非常に多くの時間が必要になる場合があります。
WAREHOUSE_SIZE = string_constantインタラクティブウェアハウスのサイズを指定します。インタラクティブウェアハウスは、インタラクティブなワークロード向けに最適化された特定のサイズをサポートします。
- 有効な値:
XSMALL、'X-SMALL'SMALLMEDIUMLARGEXLARGE、'X-LARGE'XXLARGE、X2LARGE、'2X-LARGE'XXXLARGE、X3LARGE、'3X-LARGE'
- デフォルト:
XSMALL
注釈
ハイフンを含む値(例えば、
'2X-LARGE')を使用するには、示されているように値を一重引用符で囲む必要があります。ワークロードの要件に合わせてウェアハウスのサイズを選択します。
MIN_CLUSTER_COUNTおよびMAX_CLUSTER_COUNTプロパティを調整して同時実行向けに最適化できます。
MAX_CLUSTER_COUNT = numマルチクラスターのインタラクティブウェアハウスに対するクラスターの最大数を指定します。
- 有効な値:
1から10(ウェアハウスのサイズによる)- デフォルト:
1(単一クラスターウェアハウス)
1つのインタラクティブウェアハウスの場合、
MIN_CLUSTER_COUNTおよびMAX_CLUSTER_COUNTに同じ値を使用します。マルチクラスターのインタラクティブウェアハウスは、自動的にスケールアップまたはスケールダウンしません。MIN_CLUSTER_COUNT = numマルチクラスターのインタラクティブウェアハウスに対するクラスターの最小数を指定します。
- 有効な値:
1から MAX_CLUSTER_COUNT の値- デフォルト:
1
1つのインタラクティブウェアハウスの場合、
MIN_CLUSTER_COUNTおよびMAX_CLUSTER_COUNTに同じ値を使用します。マルチクラスターのインタラクティブウェアハウスは、自動的にスケールアップまたはスケールダウンしません。AUTO_RESUME = { TRUE | FALSE }クエリの送信時にインタラクティブウェアハウスを自動的に再開するかどうかを指定します。
- 有効な値:
TRUE:ウェアハウスは SQL ステートメントが送信されると自動的に再開しますFALSE:ウェアハウスは ALTER WAREHOUSE を使用して明示的に再開された場合にのみ再開します
- デフォルト:
TRUE
INITIALLY_SUSPENDED = { TRUE | FALSE }インタラクティブウェアハウスを一時停止状態で作成するかどうかを指定します。
- 有効な値:
TRUE:ウェアハウスは一時停止状態で作成され、使用前に再開する必要がありますFALSE:ウェアハウスは実行状態で作成されます(AUTO_RESUMEがTRUEの場合)
- デフォルト:
TRUE
RESOURCE_MONITOR = monitor_nameクレジット使用状況の制御のためにインタラクティブウェアハウスに割り当てる、リソースモニターの識別子を指定します。
- 有効な値:
既存のリソースモニター
- デフォルト:
値なし(リソースモニターの割り当てなし)
COMMENT = 'string_literal'インタラクティブウェアハウスのコメントを指定します。
TAG ( tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ] )タグ の名前とタグ文字列の値を指定します。
タグ値は常に文字列であり、タグ値の最大文字数は256です。
ステートメントでのタグの指定に関する情報については、 Tag quotas をご参照ください。
MAX_CONCURRENCY_LEVEL = numインタラクティブウェアハウスクラスターによって実行される SQL ステートメントの同時実行レベルを指定します。
STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = numSQL ステートメントがキャンセルされる前にキューに入れることができる時間を秒単位で指定します。
STATEMENT_TIMEOUT_IN_SECONDS = num実行中の SQL ステートメントがキャンセルされるまでの時間を秒単位で指定します。インタラクティブウェアハウスの最大タイムアウト間隔は5秒です。これより大きな値は無視されます。
アクセス制御の要件¶
この SQL コマンドの実行に使用される ロール には、 最低 1 つ の次の 権限 が必要です。
権限 |
オブジェクト |
メモ |
|---|---|---|
CREATE WAREHOUSE |
アカウント |
インタラクティブウェアハウスを含む、ウェアハウスを作成するために必要です。 |
USAGE |
インタラクティブテーブル |
|
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
使用上の注意¶
インタラクティブウェアハウスは、デフォルトで
SUSPENDED状態で作成されます。ALTER WAREHOUSE を RESUME 句で使用してウェアハウスを開始します。TABLES 句を指定すると、指定されたインタラクティブテーブルのキャッシュの準備がすぐに開始されます。このプロセスは、データサイズによっては、かなりの時間がかかる場合があります。
インタラクティブウェアハウスはインタラクティブテーブルのみをクエリできます。標準テーブルをクエリするには、CREATE WAREHOUSE で作成された標準ウェアハウスを使用します。
インタラクティブウェアハウスは、同時実効性の高いワークロードを処理するためのマルチクラスター構成をサポートしています。
作成中に
TABLES句を指定しない場合、後で ALTER WAREHOUSE を ADD TABLES 句で使用して、インタラクティブテーブルを関連付けることができます。
例¶
特定のインタラクティブテーブルに関連付けられたインタラクティブウェアハウスを作成します。
CREATE OR REPLACE INTERACTIVE WAREHOUSE sales_interactive_wh
TABLES (orders, customers, products)
WAREHOUSE_SIZE = 'MEDIUM'
COMMENT = 'Interactive warehouse for sales team analytics';
関連するテーブルなし(後で追加)でインタラクティブウェアハウスを作成します。
CREATE INTERACTIVE WAREHOUSE analytics_interactive_wh
WAREHOUSE_SIZE = 'LARGE'
MAX_CLUSTER_COUNT = 3
MIN_CLUSTER_COUNT = 3;
インタラクティブウェアハウスをリソースモニター付きで作成します。
CREATE INTERACTIVE WAREHOUSE dev_interactive_wh
WAREHOUSE_SIZE = 'XSMALL'
RESOURCE_MONITOR = dev_resource_monitor
COMMENT = 'Development interactive warehouse';
インタラクティブウェアハウスを再開し、テーブルを関連付けます。
-- Resume the warehouse
ALTER WAREHOUSE sales_interactive_wh RESUME;
-- Add additional tables if needed
ALTER WAREHOUSE sales_interactive_wh ADD TABLES (inventory);