ITPub博客

首页 > > > Hadoop的数据仓库框架-Hive和Impala比较

Hadoop的数据仓库框架-Hive和Impala比较

作者:25minutes 时间:2019-08-12 09:47:48 0 删除 编辑

Hive和Impala的关系

Impala是Cloudera在受到Google的Dremel启发下开发的实时交互SQL大数据查询工具,Impala没有再使用缓慢的Hive+MapReduce批处理,而是通过使用与商用并行关系数据库中类似的分布式查询引擎(由Query Planner、Query Coordinator和Query Exec Engine三部分组成),可以直接从HDFS或HBase中用SELECT、JOIN和统计函数查询数据,从而大大降低了延迟。

Impala是基于Hive的大数据实时分析查询引擎,直接使用Hive的元数据库Metadata,意味着Impala元数据都存储在Hive的metastore中。并且Impala兼容Hive的SQL解析,实现了Hive的SQL语义的子集。

Hive和Impala的不同点

1. Hive适合于长时间的批处理查询分析,而Impala适合于实时交互式SQL查询。

2. Hive 依赖于MapReduce 计算框架,Impala 把执行计划表现为一颗完整的执行计划树,直接分发执行计划给各个Impalad 执行查询。

3. Hive 在执行过程中,如果内存发不下所有数据则会使用外存,以保证查询能顺利执行完成;Impala 在遇到内存放不下数据时,不会利用外存,所以Impala 目前处理查询时会受到一定的限制。

Hive 和 Impala 的相同点

1. Hive 与 Impala 使用相同的存储数据池,都支持把数据存储于HDFS和HBase中。

2. Hive 与 Impala 使用相同的元数据。

3. Hive 与 Impala 中对SQL的解释处理比较相似,都是通过词法分析生成执行计划。

Impala 的目的并不是替换现有的MapReduce 工具。把 Hive 和Impala配合使用效果更佳,可以先使用Hive 进行数据转换处理,之后再使用Impala在Hive 处理后的结果数据集上进行快速的数据分析。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4328/viewspace-3151050/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-17

  • 博文量
    336
  • 访问量
    14898