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 并发查询延迟的主要内容,如果未能解决你的问题,请参考以下文章

Impala 简介

Impala快速入门

Kudu和Impala

Impala+Kudu兼顾OLTP和OLAP能力

Impala篇---Hue从初始到安装应用

impala基础学习——part1