• Hive与impala的对比测试实验


    前面几篇随笔记录了我安装环境的一些笔记,环境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大数据查询分析的门槛还是相对很高的,个人感觉,需要团队对传统数据库领域或者分布式文件系统等相关方向的积累,如果有分布式数据库的经验作为对比学习则更好。

           

  • 相关阅读:
    linux查看文件有多少行(WC)
    MYSQL -- 联合索引
    MySQL -- 调优
    MySQL
    Linux命令执行的屏幕输出内容重定向到日志文件
    golang日期时间格式format()
    scp遇到路径中有空格
    查看服务器的网络吞吐
    SQL中关于where后面不能放聚合函数(如sum等)的解决办法
    gearman kubernetes 运行
  • 原文地址:https://www.cnblogs.com/chengyeliang/p/3548570.html
Copyright © 2020-2023  润新知