Impala
Posted _TIM_
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Impala相关的知识,希望对你有一定的参考价值。
Impala简介
Impala
是基于Hive
的大数据查询引擎,直接使用Hive
的元数据库metadata
,意味着Impala
元数据都存储在Hive
的metastore
中,并且Impala
兼容Hive
的绝大多数sql
语法,所以需要安装Impala
的话,必须先安装Hive
,保证HIve
安装成功,并且还需要启动Hive
的metastore
服务,它实际上只提供了计算服务,不提供存储服务
Impala的优点
Impala
很快,因为所有计算都可以放入内存中计算- 放弃了
MapReduce
,用C++
来实现,有针对的硬件优化 - 具有数据仓库的特性,对
Hive
的原有数据做数据分析 - 支持
ODBC
,jdbc
远程访问
Impala的缺点
- 基于内存计算,对内存依赖较大
- 改用
C++
编写,维护难度变大 - 稳定性不如
Hive
,但不会出现数据丢失的情况 - 和
Hive
紧耦合,共存亡
Impala架构
Impala-server:
从节点计算节点,主要负责执行查询任务的计算
Impala-catalog:
主节点,存储和管理元数据
Impala-statestore:
主节点,状态存储区,主要存储一些sql执行的进度信息,状态信息等
Impala查询计划,分为两个阶段
fronted
使用Java实现,负责生成查询计划,第一阶段生成单机版查询计划,第二阶段生成分布式查询计划
backend
使用C++实现,负责执行查询
impala与hive的比较
impala
比较快,impala
稳定性不如hive
Impala
可以和Shell
以及Java
交互
以上是关于Impala的主要内容,如果未能解决你的问题,请参考以下文章