Impala 和 mem_limit
Impala and mem_limit
我听到一个“谣言”,说 Cloudera 的 set mem_limit=xxx;
更像是油门而不是停车标志。然而,我的经验让我相信它是一个停止标志:
如果查询超出内存限制,它只会使查询崩溃并出错,而不是使查询更加节俭。
是否有任何证据支持 Impala 将使查询 运行 更长但更慢且内存更少以保持在 mem_limit 阈值以下的观点?
我可以证实“谣言”。我在 Impala 中致力于 spill-to-disk 支持和其他内存管理,所以它确实存在并且有效。
我可以更具体地给出查询和错误的版本和示例。随着我们修复和改进越来越多的案例,这从一个版本到另一个版本都得到了逐步改进。 Impala 3.1 有大部分改进,但在此之前和之后也有重要的改进。
在某些已知情况下,即使在最新和最好的情况下,您也会遇到超出内存限制的情况。例如,一个大的交叉连接最终会 运行 内存不足。
我听到一个“谣言”,说 Cloudera 的 set mem_limit=xxx;
更像是油门而不是停车标志。然而,我的经验让我相信它是一个停止标志:
如果查询超出内存限制,它只会使查询崩溃并出错,而不是使查询更加节俭。
是否有任何证据支持 Impala 将使查询 运行 更长但更慢且内存更少以保持在 mem_limit 阈值以下的观点?
我可以证实“谣言”。我在 Impala 中致力于 spill-to-disk 支持和其他内存管理,所以它确实存在并且有效。
我可以更具体地给出查询和错误的版本和示例。随着我们修复和改进越来越多的案例,这从一个版本到另一个版本都得到了逐步改进。 Impala 3.1 有大部分改进,但在此之前和之后也有重要的改进。
在某些已知情况下,即使在最新和最好的情况下,您也会遇到超出内存限制的情况。例如,一个大的交叉连接最终会 运行 内存不足。