Impala 并发查询延迟
Posted
技术标签:
【中文标题】Impala 并发查询延迟【英文标题】:Impala concurrent query delay 【发布时间】:2018-09-21 06:23:09 【问题描述】:我的集群配置如下:
-
3 节点集群
每个集群节点 128GB RAM。
处理器:每个集群节点 16 核超线程。
所有 3 个节点都有 Kudu master 和 T-Server 和 Impala 服务器,其中一个节点有 Impala 目录和 Impala StateStore。
我的问题如下:
1) 在运行并发查询时,我很难弄清楚 Impala 中的动态资源池。我试过给 mem_limit 仍然没有运气。我也尝试过静态服务池,但我也无法实现所需的并发性。即使有准入控制,也没有达到所需的并发性。
I) The time taken for 1 query: 500-800ms.
II) But if 10 concurrent queries are given the time taken grows to 3-6s per query.
III) But if more than 20 concurrent queries are given the time taken is exceeding 10s per query.
2) 我的一个集群节点在提交查询后没有承担负载,我通过查询摘要检查了这一点。我已尝试在未承受负载的节点上将 NUM_NODES 设为 0 和 1,但摘要显示该节点未承受负载。
【问题讨论】:
没有负载的机器可以从其他2访问吗? @SaifAhmad 是的。它可以从其他节点访问。 您是否在并行执行相同的查询?在这种情况下,例如,如果您的 Kudu 表的复制因子为 1,您可能会遇到“热点”。 不,复制因子设置为 3,我们没有并行运行相同的查询。执行了 100 多个不同的查询。 我不会过多解读您的绩效数据。 Impala 是 MPP,并非设计为在 3 节点集群上运行。大多数基准测试至少在 10 个节点的集群上运行,总内存为 1TB 或更多。 【参考方案1】:桌子尺寸是多少?表中有多少行?表是否分区?如果您可以将您的配置与 Impala 基准进行比较,那就太好了
如上所述,Impala 旨在在大规模并行处理基础架构上运行。如果我们设置 10 个节点、80 个内核和 160 个虚拟内核和 12 TB SAN 存储,我们可以获得 5 个并发用户的 60 秒计算时间。
【讨论】:
以上是关于Impala 并发查询延迟的主要内容,如果未能解决你的问题,请参考以下文章