优化仓库以提高性能

在 Snowflake 架构中,虚拟仓库提供执行查询所需的计算能力。微调仓库提供的计算资源可以提高一个或一组查询的性能。

仓库所有者或管理员在尝试提高一个或多个查询的性能时,可以尝试以下与仓库相关的策略。当他们根据这些策略之一调整仓库时,可以通过重新运行查询并 检查其执行时间 来测试更改。

与仓库相关的策略只是提高查询性能的一种方式。有关涉及数据存储方式的性能策略,请参阅 优化存储以提高性能

策略

描述

减少队列

将队列减到最少可以提高性能,因为当查询必须排队等待才能开始时,提交查询和获取其结果之间的时间会更长。

解决内存溢出

调整仓库的可用内存可以提高性能,因为当仓库内存不足时,查询的运行速度会显著变慢,这会导致字节在存储上“溢出”。

增加仓库规模

仓库越大,可用于执行一项查询或一组查询的计算资源就越多。

尝试查询加速

Query Acceleration Service 可将查询处理的部分工作卸载到无服务器计算资源,从而加快查询的处理速度,同时减少对仓库计算资源的需求。

优化仓库缓存

如果查询可以从仓库的缓存而不是表中读取数据,则查询性能会提高。

限制并发运行的查询

限制在仓库中并发运行的查询数可以提高性能,因为这减少了对仓库资源有需求的查询。

小技巧

当仓库运行相似的工作负载时,优化仓库能更直接地提高查询性能。例如,如果仓库运行明显不同的查询,则可能会在不能从优化中受益的查询上浪费功夫来增强性能。

有关将工作负载分发到组织仓库的一般准则,请参阅 管理 Snowflake 的计算资源 (Snowflake 博客)中的“分析工作负载”部分。

语言: 中文