前面几篇随笔记录了我安装环境的一些笔记,环境ok以后,自然要看看impala到底性能如何,拿他来hive做做对比:

前面hive章节中,已经建立了一张名叫chengyeliang的table,该表的结构为

该表内导入了100000条记录。

分别用impala-shell和hive对该表进行查询:

测试一

查询记录的数量:

Select count(*)from chengyeliang

Hive

耗时27.197

Impala

耗时0.33

测试二

查询符合过滤条件的记录:filter

select * from chengyeliang where foo=1314;

Hive

耗时19.967

Impala

耗时0.31

测试三

查询某一列或者某几列的值:

select foo from chengyeliang limit 2000;(前2000条)

Hive

耗时18.71

Impala

耗时0.47


扩大数据量---上亿条记录

表的结构为:

12个字段,共有1004377251亿多)条记录。

测试一

查询记录的数量:

select count(*) from yeliang;

Hive

耗时111.761

Impala

耗时26.31

测试二

查询符合过滤条件的记录:filter

select * from yeliang where id=123456;

Hive

耗时110.581

Impala

耗时24.50

测试三

查询某一列或者某几列的值:

select id from yeliang sort by id limit 500;(前500条,排序)

Hive

耗时515.711

Impala

耗时28.77

总结

  大数据下的查询分析工具调研了一两个月的时间了,从最初的drill开始,到impala,从框架级,原理架构级到源码分析级,感触很多,由于apache 对drill广阔的前景规划目前drill的功能还不支持真正的dfs文件数据的查询,impala相对成熟一些,该文档前面详细叙述了搭建impala的环境,以及支持impala的各组件的安装,尤其是环境ok以后,对比hive的查询分析实验,实时性返回的感觉真的很棒。

  Google总是引领着互联网技术公司的走向,尤其在大数据领域。前段时间调研过的apache hama就是google pregel的开源实现,而如今apache drill同样是对google产品big query背后的引擎Dremel的开源实现,Cloudera在这一步上略早于apache,使得他的CDH更加的在业界具有竞争力,前段时间业界新闻,hive的发源地facebook同样也推出了自己的大数据查询分析工具----Presto http://www.csdn.net/article/2013-06-13/2815749-Facebook-Presto

  这说明着,数据越多的公司,对数据分析有强烈需求的公司,他们对高效查询分析的需求同样会更迫切。

展望

  总的来说,能够亲眼看到超过hive查询速度20多倍的产品,还是很吃惊的。但是,调研的过程中,尤其源码分析的阶段,类SQL大数据查询分析的门槛还是相对很高的,个人感觉,需要团队对传统数据库领域或者分布式文件系统等相关方向的积累,如果有分布式数据库的经验作为对比学习则更好。

Hive与impala的对比测试实验的更多相关文章

  1. 使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作

    CSSDesk body { background-color: #2574b0; } /*! zybuluo */ article,aside,details,figcaption,figure,f ...

  2. 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据操作(二)

    CSSDesk body { background-color: #2574b0; } /*! zybuluo */ article,aside,details,figcaption,figure,f ...

  3. 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据操作

    http://www.cnblogs.com/wgp13x/p/4934521.html 内容一样,样式好的版本. 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据 ...

  4. hive、impala集成ldap

    1.概要 1.1 环境信息 hadoop:cdh5.10 os:centos6.7 user:root hive.impala已集成sentry 1.2 访问控制权限 这里通过使用openldap来控 ...

  5. Hive记录-Impala jdbc连接hive和kudu参考

    1.配置环境Eclipse和JDK 2.加载hive jar包或者impala jar包 备注:从CDH集群里面拷贝出来 下载地址:https://www.cloudera.com/downloads ...

  6. SQL数据分析概览——Hive、Impala、Spark SQL、Drill、HAWQ 以及Presto+druid

    转自infoQ! 根据 O’Reilly 2016年数据科学薪资调查显示,SQL 是数据科学领域使用最广泛的语言.大部分项目都需要一些SQL 操作,甚至有一些只需要SQL. 本文涵盖了6个开源领导者: ...

  7. CDH5上安装Hive,HBase,Impala,Spark等服务

    Apache Hadoop的服务的部署比較繁琐.须要手工编辑配置文件.下载依赖包等.Cloudera Manager以GUI的方式的管理CDH集群,提供向导式的安装步骤.因为须要对Hive,HBase ...

  8. 学习Hive和Impala必看经典解析

    Hive和Impala作为数据查询工具,它们是怎样来查询数据的呢?与Impala和Hive进行交互,我们有哪些工具可以使用呢? 我们首先明确Hive和Impala分别提供了对应查询的接口: (1)命令 ...

  9. 第1节 HUE:14、15、16、hue与hdfs、yarn集群、hive、impala、mysql的整合

    3.hue与其他框架的集成 3.1.hue与hadoop的HDFS以及yarn集成 第一步:更改所有hadoop节点的core-site.xml配置 记得更改完core-site.xml之后一定要重启 ...

随机推荐

  1. java并发之hashmap

    在Java开发中经常会使用到hashmap,对于hashmap又了解多少,经常听到的一句话是hashmap是线程不安全的,那为什么是线程不安全的,如何才能保证线程安全,JDK又给我们提供了那些线程安全 ...

  2. REBXOR

    题面 Description 给定一个含N个元素的数组A,下标从1开始.请找出下面式子的最大值. (A[l1]xorA[l2+1]xor-xorA[r1])+(A[l2]xorA[l2+1]xor-x ...

  3. linux 中两个文档怎么对比内容是否一致

    可以用diff命令对比文档内容.[语法]: diff [参数] 文件1 文件2[说明]: 本命令比较两个文本文件,将不同的行列出来-b 将一串空格或TAB 转换成一个空格或TAB-e 生成一个编辑角本 ...

  4. ajax——dom对xml和html的操作

    上篇文章说到了dom的基础,dom能够操作xml和html,这次主要写利用dom的api去如何去操作xml和html文档. dom操作xml dom操作xml文档之前必须把xml文档装载到xml do ...

  5. 转:MapReduce原理与设计思想

    转自:http://www.cnblogs.com/wuyudong/p/mapreduce-principle.html 简单解释 MapReduce 算法 一个有趣的例子 你想数出一摞牌中有多少张 ...

  6. C 标准库 - <stdarg.h>

    C 标准库 - <stdarg.h> 简介 stdarg.h 头文件定义了一个变量类型 va_list 和三个宏,这三个宏可用于在参数个数未知(即参数个数可变)时获取函数中的参数. 可变参 ...

  7. java中自带时间类使用方法实例 Date,Timestamp,DateFormat

    我们将以Java自带的时间日期类和当中的处理函数进行分析. 一.与时间日期有关的类. java.util.Date. 实现类,其对象具有时间.日期组件. java.util.Calendar. 抽象类 ...

  8. 在pypy环境中运行odoo8

    PyPy是一个独立的解析器, 通过即时编译(JIT,Just-in-time)代码避免逐行解释执行来提升运行速度的(将编译过的行代码缓存起来,从而加快速度).我们一般使用的Python一般是使用C实现 ...

  9. Spring学习之事务注解@Transactional

    今天学习spring中的事务注解,在学习Spring注解事务之前需要明白一些事务的基本概念: 事务:并发控制的单位,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位.通 ...

  10. cocos2d0基础篇笔记二

    1.菜单的使用: CCMenuItemimage*image=CCMenuItemImage*create("xxx.png", "xxx,png", &quo ...