CREATE INTERACTIVE WAREHOUSE¶
创建一个新的交互式 虚拟仓库,针对低延迟、高并发工作负载以及交互式表进行了优化。
交互式仓库旨在在使用交互式表时提供最佳查询性能。交互式表通过智能缓存和优化,为经常访问的数据提供快速查询响应。
- 另请参阅:
CREATE WAREHOUSE, ALTER WAREHOUSE, DESCRIBE WAREHOUSE, DROP WAREHOUSE, SHOW WAREHOUSES, CREATE INTERACTIVE TABLE
语法¶
其中:
参数¶
name指定交互式仓库的标识符。标识符在您的账户中必须唯一。
有关更多详细信息,请参阅 标识符要求。
TABLES ( ... )(可选)指定以逗号分隔的交互式表名称列表,以立即与交互式仓库关联。使用此子句将在创建仓库时启动指定表的缓存预热过程。
table_name指定要与仓库关联的交互式表标识符。可指定多个表名,用逗号分隔。
备注
所有指定的表必须是使用
INTERACTIVE关键字创建的交互式表。如果省略此子句,可以稍后使用 ALTER WAREHOUSE 配合
ADD TABLES子句关联交互式表。缓存预热可能需要较长时间,具体取决于数据量大小。
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(单集群仓库)
MIN_CLUSTER_COUNT = num为多群集交互式仓库指定最小群集数量。
- 有效值:
1到 MAX_CLUSTER_COUNT 的值- 默认值:
1
AUTO_SUSPEND = { num | NULL }指定交互式仓库在处于不活动状态多少秒之后自动暂停。
交互式仓库的最小值为
86400``(24 小时)。如果指定的值小于 86400,Snowflake 将使用 86400。将值设置为 ``NULL禁用自动暂停。- 默认值:
``NULL``(自动暂停已禁用)
AUTO_RESUME = { TRUE | FALSE }指定当向交互式仓库提交 SQL 语句时,是否自动恢复该仓库。
- 默认值:
FALSE
INITIALLY_SUSPENDED = { TRUE | FALSE }指定是否以暂停状态创建交互式仓库。
- 默认值:
``TRUE``(交互式仓库创建已暂停)
RESOURCE_MONITOR = monitor_name指定要分配给交互式仓库的资源监视器标识符,用于控制 Credit 的使用。
- 有效值:
任意现有资源监视器。
- 默认值:
无值(未分配资源监视器)
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 = num指定 SQL 语句在被取消前可排队的时间(以秒为单位)。
STATEMENT_TIMEOUT_IN_SECONDS = num指定运行中的 SQL 语句被取消前的时间(以秒为单位)。交互式仓库的最大超时时间为五秒。任何超过该都将被忽略。
访问控制要求¶
用于执行此 SQL 命令的 角色 必须至少具有以下 一项 权限:
权限 |
对象 |
备注 |
|---|---|---|
CREATE WAREHOUSE |
账户 |
创建任何仓库(包括交互式仓库)时所必需的。 |
USAGE |
交互式表 |
如果在 |
有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色。
使用说明¶
OR REPLACE 和 IF NOT EXISTS 子句互斥。它们不能同时用于同一条语句中。
CREATE OR REPLACE <object> 语句是原子的。也就是说,当对象被替换时,旧对象将被删除,新对象将在单个事务中创建。
交互式仓库默认以
SUSPENDED状态创建。使用 ALTER WAREHOUSE 和 RESUME 子句来启动仓库。指定 TABLES 子句后,会震碎所指定的交互式表立即开始缓存预热。此过程可能需要较长时间,具体取决于数据大小。
交互式仓库只能查询交互式表。若要查询标准表,请使用 CREATE WAREHOUSE 创建的标准仓库。
交互式仓库支持自动暂停和自动恢复。最小 AUTO_SUSPEND 值为 86400 秒(24 小时)。有关更多信息,请参阅 恢复和暂停交互式仓库。
交互式仓库支持多群集配置,以处理高并发工作负载。
如果在创建时未指定
TABLES子句,可以稍后使用 ALTER WAREHOUSE 配合 ADD TABLES 子句将交互式表关联到仓库。关于元数据:
注意
客户应确保在使用 Snowflake 服务时,不会将个人数据(用户对象除外)、敏感数据、出口管制数据或其他受监管数据作为元数据输入。有关更多信息,请参阅 Snowflake 中的元数据字段。
计费和定价¶
有关交互式仓库的计费和定价注意事项的信息,请参阅 成本和计费注意事项。
示例¶
创建与特定交互式表关联的交互式仓库:
创建一个暂未关联表的交互式仓库(表可稍后添加):
创建具有资源监视功能的交互式仓库:
恢复交互式仓库并关联交互式表: