大数据OLAP框架对比

2020-03-03  本文已影响0人  code_solve

大数据OLAP常用的技术

以上是在大数据处理方面常用的四种技术原理,
上面这些处理数据的方式极大程度的提高了单位时间内数据处理的能力,
但是其还是没有摆脱数据量和查询时间的线性关系。
于是在OLAP处理方式上,
我们多了一种:

目前还没有一个OLAP系统能够满足各种场景的查询需求。
其本质原因是,
没有一个系统能同时在数据量、性能、和灵活性三个方面做到完美,
每个系统在设计时都需要在这三者间做出取舍。
这个就有点像我们的CAP理论了~~~

image.png

目前市面上常用的OLAP框架

image.png

OLAP测评报告

前两份主要是针对基于MPP方式的OLAP框架的测评,

  1. HAWQ、Presto、ClickHouse
    HAWQ 性能大部分情况下是低于 Presto和 ClickHouse,
    而Presto的速度比较依赖网络,因为其本身并不具备存储数据的功能,
    ClickHouse目前是MPP速度最快的引擎,不过其在多表查询上性能也并不好。

  2. Hive Hawq、Presto、Impala、Sparksql、Clickhouse、Greenplum

    image.png
  1. kylin presto druid
    这是美团16年初的报告,
    时间比较久远,
    不具备太大的参考意义,

    不过大致也表明 kylin和druid 在速度响应上是要更快的。
    而Kylin提供了更加完善的功能和SQL支持,
    Druid则提供了数据实时摄入,
    二者在查询性能上基本是一个量级


    image.png

总结

MPP虽然看起来是更好的选择,
但是因为其是基于内存计算的,
会相对的比较不太稳定,
比如遇到数据倾斜导致内存崩溃,
又比如数据量的大小改变,
和查询语句的不同,
都可能导致查询时间的起伏,
也许很快,但也可能会出现半天出不来数据的情况

预计算则相对的放弃了灵活的查询,
但是却节省了大量的内存计算带来的开销,
而且因为是属于预计算范畴,
对于不支持的数据那就是不支持,
但是对于支持的查询则是可以达到一个比较稳定的查询速度,

对于稳定的天级任务,
我们完全可以使用预计算的方式,
而对于一些类似偶尔的临时任务,
那么可以通过MPP的方式进行导出,
没有必要为了一些特殊的需求而加大机器资源的开销。

而在基于预计算的框架,
我更趋向于kylin,
因为他可以更好的管理数据,
具有更好的SQL支持,
并且其社区在国内比较活跃,
然后有中文文档~~~~~

还有一点就是,现在很多培训机构已经把kylin拉上课程安排了....

上一篇 下一篇

猜你喜欢

热点阅读