- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
1概述
1.Impala是参照谷歌新三篇论文Dremel的开源实现,和Shark、Drill功能相似。Impala
是Cloudera公司主导开发并开源。基于Hive并使用内存进行计算,兼顾数据仓库,具
有实时、批处理、多并发等优点。是使用CDH的首选PB级大数据实时查询分析引擎。
2.Impala是基于Hive的大数据实时分析查询引擎,直接使用Hive的元数据库Metadata,
意味着impala元数据都存储在Hive的metastore中。并且impala兼容Hive的sql解析,
实现了Hive的SQL语义的子集,功能还在不断的完善中。
1.1特点
1.基于内存进行计算,能够对PB级数据进行交互式实时查询、分析
2.摒弃了MR计算改用C++编写,有针对性的硬件优化,例如使用SSE指令
3.兼容HiveSQL,无缝迁移
4.通过使用LLVM来统一编译运行时代码,避免了为支持通用编译而带来的不必要开销。
5.支持sql92标准,并具有自己的解析器和优化器。
6.具有数据仓库的特性,对hive原有数据做数据分析。
7.使用了支持Datalocality的I/O调度机制。
8.支持列式存储。
9.支持jdbc/odbc远程访问。
1.2缺点
1.基于内存进行计算,对内存依赖性较大
2.改用C++编写,意味着对C++普通用户不可见。
3.基于Hive,与Hive共存亡
4.实践中impala的分区数超过一万,性能严重下降,容易出现问题。
5.稳定性不如Hive。
2配置
共分为三种角色:ImpalaCatalogServer、ImpalaDaemon、ImpalaStateStore:
注:Impala没有主节点,ImpalaCatalogServer和ImpalaStateStore具有主节点的功能,可当
作主节点,ImpalaDaemon可理解为从节点
配置impala的内存,impala需要内存的是ImpalaDaemon,Impala提供查询实例的是
ImpalaDaemon,Impala的总内存就是ImpalaDaemon的内存总和,如果要在某台机器
做汇总操作,该台机器内存需要大一些
Impala的客户端可以连ImpalaDaemon的任意一台机器,但做汇总操作可以连内存大
的ImpalaDaemon的机器
如果每台机器的内存大小相差不大时,可以轮询ImpalaDaemon的机器,或随机进行
切换(获取机器的资源,如果某台机器的资源多,就使用这台机器发请求),可解决线
程的问题和返回数据内存的问题,也可解决高并发问题。
配置StateStore的工作线程数,一般会给的高一些,给高后会快一些
3Impala三大核心主件
1.Statestoredaemon:服务名StateStore
1)负责收集分布在集群中各个impalad进程的资源信息,各节点健康状况、同步节
点信息。检查Daemon是否活着
2)负责query的调度.
3)对于一个正常运转的集群,并不是一个关键进程.
2.Catalogdaemon:服务名Catalog:
1)把impala表的metadata(也是hive的源数据表)分发到各个impalad中
2)接收来自statestore的所有请求
3.Impaladaemon:服务名impalad:
1)接收client、hue、jdbc或者odbc请求、query执行并返回给中心协调节点
2)子节点上的守护进程,负责向statestore保持通信,汇报工作
注:插入数据在Daemon上操作,操作后汇报给StateStore说明节点的数据变了,
StateStore发请求给Catalog,Catalog去同步源数据表,StateStore进程和Catalog进程经
常放到一台机器上。建议不要在Stat
文档评论(0)