Apache Impala
- impla是个实时的sql查询工具,类似于hive的操作方式,只不过执行的效率极高,号称当下大数据生态圈中执行效率最高的sql类软件
- impala来自于cloudera,后来贡献给了apache
- impala工作底层执行依赖于hive 与hive共用一套元数据存储。在使用impala的时候,必须保证hive服务是正常可靠的,至少metastore开启。
- impala最大的跟hive的不同在于 不在把sql编译成mr程序执行 编译成执行
计划数(勘误:计划树)。 - impala的sql语法几乎兼容hive的sql语句。
impala优缺点
- 优点:
- 不经过MapReduce
- 直接操作HDFS数据
- 查询数据采用拉的方式
- 交互式–实时
- 缺点
- 完全依赖于hive的meatstore
- 容错–无容错
- 消耗内存大
- 底层使用的C++,不支持UDF
impala是一个适用于实时交互查询的sql软件 hive适合于批处理查询的sql软件。通常是两个互相配合。
- impala 可以集群部署
- Impalad(impala server):可以部署多个不同机器上,通常与datanode部署在同一个节点 方便数据本地计算,负责具体执行本次查询sql的impalad称之为Coordinator。每个impala server都可以对外提供服务。
- impala state store:主要是保存impalad的状态信息 监视其健