Impala执行计划查看方法+某查询实例

Impala生成执行计划过程:
(摘自论文:Impala: A Modern, Open-Source SQL Engine for Hadoop)
Impala可执行查询计划分两个阶段构建:(1)单节点计划和(2)计划并行化和碎片化。
1)在第一阶段,解析树被转换为不可执行的单节点计划树,由以下计划节点组成:HDFS/HBase扫描、哈希连接、交叉连接、并集、哈希聚合、排序、top-n和分析评估。这一步负责在尽可能低的计划节点分配谓词,根据等价类推断谓词,修剪表分区,设置限制/偏移,应用列投影,以及执行一些基于成本的操作。
2)第二个计划阶段将单节点计划作为输入,并生成分布式执行计划。总体目标是最大限度地减少数据移动并最大限度地提高扫描位置:在HDFS中,远程读取比本地读取慢得多。根据需要,通过在计划节点之间添加交换节点,并通过添加额外的非交换计划节点来最大限度地减少网络中的数据移动(例如,本地聚合节点),从而使计划变得分布式。在第二阶段,我们决定每个连接节点的连接策略(此时连接顺序是固定的)。支持的联接策略是广播和分区的。前者将连接的整个构建端复制到执行探测的所有集群机器,而后者在连接表达式上重新分发构建端和探测端。Impala选择任何一种估计的策略,以最大限度地减少网络上交换的数据量,同时利用连接输入的现有数据分区。
在这里插入图片描述
图中举例说明了查询规划的两个阶段。图的左侧显示了连接两个HDFS表(

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值