温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Impala隐藏的惊天秘密

发布时间:2020-08-22 13:20:19 来源:网络 阅读:1394 作者:caosheng03 栏目:大数据


元数据作为大数据的源泉,有着非常重要的作用。可在Impala中却隐藏着一个秘密?和元数据有着颇深的渊源,我们一起来追溯!

一、Impala体系结构

(1)每个slave节点运行一个Impala进程,和HDFS的DataNode进程同时协作

(2)两个其他的进程运行在master节点,用来支持查询执行

1、State Store进程:为ImpalaDaemon提供查×××,并周期性地检查Impala进程状态

2、Catalog进程:把元数据的变更同步到所有ImpalaDaemons中

Impala隐藏的惊天秘密

二、Impala如何执行查询

(1)Impala daemon查询执行过程

客户端(Impala-shell或Hue)连接到Impala daemon,它是Coordinator。Coordinator从State Store请求其他的Impala daemons,并把查询分发给其他的Impala daemons,最后返回结果给客户端。

Impala隐藏的惊天秘密

三、元数据缓存

根据Impala的查询功能,我们可以知道在Impala里面存在元数据的缓存。元数据保存在Hive的Metastore里面,那么元数据缓存的作用是什么呢?就是在Impala启动的时候,将元数据缓存到Impala daemon的节点。当Impala daemon发起元数据变更的时候,比如说创建表,删除表,或者修改表的定义,这些都是可以缓存下来的。如果我们去查询表信息的时候,可以从缓存里面找到,直接在节点中进行查询,所以在每个Impala daemon里面有metadata cache节点用作缓存。

Impala隐藏的惊天秘密

而当Impala进程改变了元数据,将会提示catalog服务,Catalog服务通知所有Impala daemons来更新缓存。

Impala隐藏的惊天秘密

四、外部改变和元数据缓存

我们上面讲的都是内部的改变,然而很多时候还会有外部的改变,可外部的改变对于Impala来说是未知的,比如:

(1)Hive、Hcatalog或HueMetadata Manager改变了元数据

(2)数据直接添加到HDFS目录

Impala隐藏的惊天秘密

外部的改变将导致Impala元数据缓存变得不可用,我们必须手动的刷新或验证Impala的元数据缓存。

当然,这种改变根据改变内容和性质的不同,有不同的方法去更新,比如:

Impala隐藏的惊天秘密

 

有疑问,欢迎来吐槽,关注微信公众号“大数据cn”, 每天同行嗨不停,还有更多资源等着你!


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI