zoukankan      html  css  js  c++  java
  • impala和presto

    作者:拥抱大数据
    链接:https://www.zhihu.com/question/391626341/answer/1204632615
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    引擎介绍:

    首先你要知道Presto,Impala都属于开源OLAP引擎.

    Presto是一个分布式SQL查询引擎,FaceBook于2013年11月份对其进行了开源, 它被设计为用来专门进行高速、实时的数据分析。它支持标准的ANSI SQL,包括复杂查询、聚合(aggregation)、连接(join)和窗口函数(window functions)。Presto 本身并不存储数据,但是可以接入多种数据源,并且支持跨数据源的级联查询。Presto是一个OLAP的工具,擅长对海量数据进行复杂的分析;但是对于OLTP场景,并不是Presto所擅长,所以不要把Presto当做数据库来使用。

    Impala是实时交互SQL大数据查询工具,是Google Dremel的开源实现(Apache Drill类似),Cloudera推出的Impala系统,它拥有和Hadoop一样的可扩展性、它提供了类SQL(类Hsql)语法,在多用户场景下也能拥有较高的响应速度和吞吐量。Impala还能够共享Hive Metastore,甚至可以直接使用Hive的JDBC jar和beeline等直接进行查询,并且支持丰富的数据存储格式(Parquet、Avro等)。此外,Impala 通过使用分布式查询引擎(由 Query Planner、Query Coordinator 和 Query Exec Engine 三部分组成),可以直接从 HDFS 或 HBase 中用 SELECT、JOIN 和统计函数查询数据,从而大大降低了延迟。

    2 性能总结:

    Impala的计算速度是其一大优点,多表查询性能和Presto差不多,单表查询方面却不如Presto好。而且Impala不支持update、delete操作,不支持Date数据类型,不支持ORC文件格式等,并且Impala在查询时占用的内存很大。相比于Impala,Presto综合性能要更好一些,无论是查询性能还是支持的数据源和数据格式方面都要突出一些。占用的内存比Impala也要少一些,比如多表join需要很大的内存,Impala占用的内存比presto要多。

    所以从整体性能对比看,两者差不多,但是Presto更优.

  • 相关阅读:
    c#,简单的冒泡排序
    uwp,c#,listView与gridView列表控件进阶
    使用gensim之KeyedVectors操作词向量模型
    python时间戳
    通过Python查找目录下含有指定字符串的所有文件
    聚类之DBSCAN
    使用pyhanlp进行分词
    将Python对象和变量保存在本地
    通过selenium进行博客备份
    matplotlib颜色代码
  • 原文地址:https://www.cnblogs.com/yyfyl/p/14149211.html
Copyright © 2011-2022 走看看