Apache Impala
impala 是 cloudera 提供的一款高效率的 sql 查询工具,提供实时的查询效果
impala 是基于 hive 并使用内存进行计算,兼顾数据仓库,具有实时,批处理,多并发等优点。
Impala 与 Hive 关系
impala 是基于 hive 的大数据分析查询引擎,直接使用 hive 的元数据库 metadata,意味着 impala 元数据都存储在 hive 的 metastore 当中,并且 impala 兼容 hive 的绝大多数 sql 语法。所以需要安装 impala 的话,必须先安装 hive,保证 hive 安装成功,并且还需要启动 hive 的 metastore 服务。
Hive 元数据包含用 Hive 创建的 database、 table 等元信息。元数据存储在关系型数据库中, 如 Derby、 MySQL 等。
客户端连接 metastore 服务, metastore 再去连接 MySQL 数据库来存取元数据。有了 metastore 服务,就可以有多个客户端同时连接,而且这些客户端不需要知道 MySQL 数据库的用户名和密码,只需要连接 metastore 服务即可。
Hive 适合于长时间的批处理查询分析,而 Impala 适合于实时交互式 SQL 查询。 可以先使用 hive 进行数据转换处理,之后使用 Impala 在 Hive 处理后的结果数据集上进行快速的数据分析
<