主要内容:
1. impala概述
1.1 impala是什么
impala是cloudera提供的一款开源的针对HDFS和Hbase中的PB即被数据进行交互式实时查询。
impala的最大特点就是快速。
1.2 impala优势
1) impala抛弃了Mr采用了MMP数据库技术提高了查询速度。
2)使用LLVM9(C++编写的)产生运行代码,针对特定查询生成特定代码。
3)优秀的IO调度,impala支持直接读取数据块和本地代码计算。
4)支持多种存储格式可以选择合适的存储方式。
5)尽可能使用内存,中间结果不写磁盘,及时通过网络以stream的方式传递。
2. impala安装与入门案例
2.1 impala的安装
1)impala的安装需要提问前安装好Hadoop和Hive(impala数据存储在HDFS且Impala直接使用Hive元数据管理数据)
2)Hive需要在所有的Impala安装的节点上都要有,因为Impala需要引用Hive的依赖包。
3. impala架构原理
3.1 Impala角色
impala-server:这个进程是Impala真正的进程,官方建议把Impala-server安装在datanode节点,更靠近数据
(短路读取),进程名impalad。
impala-statestored:健康监控角色,主要监控impala-server,impala-server出现异常时告知给其他impala-server;
进程名statestored。
impala-catalogd:管理和维护元数据(Hive),impala更新操作;把impala-server更新的元数据通知给其他的
impala-server;进程名catalogd。
官方建议state store与catalog安装在同一节点上。
4. impala的使用
5. impala的sql语法
6. impala的JDBC方式查询
7. impala进阶