Impala 三大组件:
- Impala Daemon:
功能:
负责读写数据文件,接受来自 Impala-shell, ODBC,Hue 和 JDBC 的查询请求,然后与集群中的其他节点分布式并行工作,将本节点的查询结果返回给中心协调者节点。
查询流程:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210406212239886.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzIxNDY0NA==,size_16,color_FFFFFF,t_70)
我们向一个 Impalad 发送一个 SQL,这个Impalad 就要负责解析sql, 生成查询计划树,将执行计划分发给本节点的 协调者 Coordinator, 协调者执行计划再分发给其他节点的 执行器 Executor,各个 节点的Executor 将各自的 查询结果返回给 中心协调者节点(这个中心协调者节点就是接受sql 查询的节点),协调者 最后将整合后的查询结果返回给客户端。
- Impala Statestore:
功能:
StateStore 搜集集群中各个 impalad 进程节点的健康状况,然后不断的将健康状况结果发送给所有的 impalad进程节点。
当集群有impalad 故障时,statestore 会及时将信息发送给其他 impalad节点,这样,其他impala 节点就不会 将查询请求发送到坏的impalad 节点上了。
P