大数据系统-SQL on Hadoop构建OLAP的基石

    SQL on Hadoop是泛指大规模并行SQL分析引擎,针对的是分析性应用。和其他关系型数据库或数据仓库类似,接受SQL,返回结果集。但它具有大规模并行处理很多传统数据库以及其他数据库没有的特性及功能。

    系统设计者和用户比较关注其中一些技术点:

  • 接口层:
是否兼容以往SQL标准,迁移以往工作负载以及平滑过渡甲方历史遗留作业。
  • 查询优化器层:
能否将SQL转换为优化的分布式执行作业,深挖分布式环境特点,减少网络传输等传统分布式经典问题。
  • 存储层:

利用分析型数据批量导入,主要为查询负载特点,设计存储格式,如列存储等。


    业界逐渐涌现新的查询系统,根据以往经验可以根据架构进行一定的划分:

  •    SQL on MR 

Spark SQL: http://spark.apache.org/sql/

Hive: https://hive.apache.org/  

  •     MPP

Impala: http://impala.apache.org/

  •     SQL on NoSQL 

Kylin: http://kylin.apache.org/cn/

  •     Time Series Partition

Druid: http://druid.io/

Pinot: https://github.com/linkedin/pinot

    

    每种方案都有各自的优劣,具体需要根据应用场景的工作负载与需求决定选用哪种架构和相应的系统。不建议单纯看个别query的Benchmark结果,体现的问题过于单一,不能代表整体的结果。


友情推荐:ABC技术研习社

为技术人打造的专属A(AI),B(Big Data),C(Cloud)技术公众号和技术交流社群。




猜你喜欢

转载自blog.csdn.net/gao8658/article/details/33015331