Impala

作者: 小驴小驴 | 来源:发表于2021-02-22 10:20 被阅读0次

Impala

架构

架构图:


Impala架构图2.jpg

对图中各个名词说明

  • Impalad
    由Impalad进程表示,Impala集群中有若干Impalad服务,接收到用户请求的Impalad为Coordinator角色(Coordinator角色接收到请求之后通过JNI调用Java解释SQL查询语句,生成查询计划树,再通过调度器将执行计划分发给具有相应数据的其他Impalad服务),当其他Imapalad计算出结果之后返回给Coordinator,最终由Coordinator返回给客户端。这其中Impalad分发任务的时候会先看自己缓存中或State store服务器中注册的哪些健康Impalad服务
  • Impala State Store
    跟踪集群中的Impalad的健康状态及位置信息,它通过创建多个线程来处理Impalad的注册订阅与Impalad保持心跳连接,各个Impalad都会缓存一份State STore中的信息,当Store离线后(Impalad会进入recovery模式,进行反复注册心跳,知道store上线之后注册成功,并更新缓存),Impalad中会根据缓存继续工作,但会因为有些Impalad失效了,自身的缓存并不是最新的,因此会造成查询失败。
  • Catalog
    保存元数据,Impalad服务指定DDL语句时,有Catalog代替执行,且将更新有State Store广播

元数据存储

Impala的元数据需要存储在HMS(Hive MetaStore)中,因此Impala天然具有数据库的层级概念(这不同于Presto,Presto在同一个Catalog中是否支持多Schema取决于所连接的数据源)

所支持的数据源

  • HDFS
  • Hive
  • Kudu
  • Amazon S3
  • ADLS
  • Isilon Storage

相关文章

网友评论

      本文标题:Impala

      本文链接:https://www.haomeiwen.com/subject/jnshfltx.html