融合了大数据、搜索引擎及SQL的敏捷大数据方案bigdata 3.0:Presto+Elasticsearch

融合了大数据、搜索引擎及SQL的敏捷大数据方案bigdata 3.0:Presto+Elasticsearch


一、大数据现状

 在bigdata 1.0时代,以hadoop为代表的大数据技术在企业数据仓库架构中起到的只是配角作用,只是完成数据批处理,处理好的数据还是放入传统的RDBMS中,由BI完成展示。这称为混合架构。对即时的数据流,提供了kafka+Storm的解决方案。既无法实现BI和bigdata的无缝对接,也无法进行流数据和大数据关联分析。这应该是一种不得已而为之的方案。


 当很多用户刚开始对bigdata 1.0有所了解的时候,bigdata 2.0已经迅速到来。bigdata 2.0主要就是实现了SQL on bigdata,这样就不再需要混合架构,BI可以直接连接bigdata了。听起来很美好,Presto、Impala、Drill、spark sql等,这些都是SQL on Bigdata方案。其中,以Presto最早,功能最全,支持SQL 2003。国内,最早使用和大力推广Presto的是京东。


 无论是bigdata 1.0,还是2.0都没有解决大数据的包容性、敏捷性和易用性问题。

 所谓包容性,是指大数据目前主要存的是结构化数据,对需要做语义解析的文本数据,无论是Hive,还是SQL on bigdata都无能为力。

 所谓敏捷性,是指目前的大数据都太笨重了,用户哪管你是头大象还是一只豹子呢。就像如今的一台笔记本可能都比当年的小型机性能不知道强了多少倍。所以,敏捷性也是大数据发展的一个重要方向。

 所谓易用性,这点大数据需要向商业软件学习的地方还太多。如目前SQL on bigdat还不支持函数和过程,还无法和BI无缝对接等。

 这些可能都要在bigdata 3.0中才能解决。

二、大数据总体分析

 目前的大数据总体来说说,都是先在某些点上突破了传统的极限,如数据库的存储极限,单一服务器的计算极限等,制约大数据发展的网络IO也将很快被突破。这些点突破还没有形成面突破,所以现在的大数据才存在以下问题:

1、架构复杂;

2、组件众多;

3、实施难度大

三、大数据3.0

 

 我们认为大数据3.0要能带来如下优势:

1、统一性:结构化数据和非结构化数据不再割裂开来,统一存放;

2、敏捷性:系统具有自管理性,可以快速部署和实施;

3、易用性:可以使用成熟的BI和挖掘工具进行开发和无缝集成。

四、大数据3.0方案

 在大数据3.0中,数据统一由Elasticsearch存储,SQL由Presto来实现,语义分析有Kibana实现。使用Elasticsearch具有如下好处:

1、集群管理简单,易扩展;

2、基于检索技术,可以提供语义分析和查询能力,满足性能要求;

 使用Presto具有如下好处:

1、集群管理简单,易扩展;

2、强大的分布式SQL执行引擎;

3、支持SQL2003标准;

3、灵活的Connector开发能力;


 当然,该方案也存在如下技术难点:

1、Elasticsearch for presto Connector开发;

2、Flume实现DB、file到ES的问题;

3、Presto JDBC驱动和BI的集成问题;

4、复杂业务逻辑的SQL实现等


五、进展及展望

 1、Elasticsearch for presto Connector

        经过2015年9月以来的跟踪和研究,在ES实现分布式SQL难度极大,Elastic官方提供的解决方案是Elasticsearch hadoop,终于发现了Presto Connector for Elasticsearch 开源版本:

https://github.com/albertocsm/presto/tree/master/presto-elasticsearch

      进展:

2016.3.6 完成presto-elasticsearch编译打包


2、Presto Web GUI

https://github.com/airbnb/airpal

https://github.com/wyukawa/yanagishima

3、Java数据库客户端

Squirrel

https://sourceforge.net/projects/squirrel-sql/files/latest/download?source=files

4、BI集成

      因为Presto JDBC驱动的原因,和BI的集成还有问题。可以采用Prestogres,也可以采用PostgreSQL Data Forigen Warper实现。

5、复杂业务逻辑的SQL实现,这块需要实际项目验证。

      可参考HPLSQL。HPL/SQL –Procedural SQL on Hadoop,并且在未来的Hive的版本(2.0)中,会将该模块集成进来。该解决方案不仅支持Hive,还支持在SparkSQL,其他NoSQL,甚至是RDBMS中使用类似于Oracle PL/SQL的功能,这将极大的方便数据开发者的工作,Hive中很多之前比较难实现的功能,现在可以很方便的实现,比如自定义变量、基于一个结果集的游标、循环等等。官方网站是:http://www.hplsql.org

 我们选择了一条Presto+Elastic的大数据之路,前途也许荆棘丛生,但也许是柳暗花明。“不积跬步,无以至千里;不积小流,无以成江海”。让我们拭目以待!



  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Learn various commercial and open source products that perform SQL on Big Data platforms. You will understand the architectures of the various SQL engines being used and how the tools work internally in terms of execution, data movement, latency, scalability, performance, and system requirements. This book consolidates in one place solutions to the challenges associated with the requirements of speed, scalability, and the variety of operations needed for data integration and SQL operations. After discussing the history of the how and why of SQL on Big Data, the book provides in-depth insight into the products, architectures, and innovations happening in this rapidly evolving space. SQL on Big Data discusses in detail the innovations happening, the capabilities on the horizon, and how they solve the issues of performance and scalability and the ability to handle different data types. The book covers how SQL on Big Data engines are permeating the OLTP, OLAP, and Operational analytics space and the rapidly evolving HTAP systems. You will learn the details of: Batch Architectures ―an understanding of the internals and how the existing Hive engine is built and how it is evolving continually to support new features and provide lower latency on queries Interactive Architectures―an understanding of how SQL engines are architected to support low latency on large data sets Streaming Architectures ―an understanding of how SQL engines are architected to support queries on data in motion using in-memory and lock-free data structures Operational Architectures―an understanding of how SQL engines are architected for transactional and operational systems to support transactions on Big Data platforms Innovative Architectures―an exploration of the rapidly evolving newer SQL engines on Big Data with innovative ideas and concepts Table of Contents Chapter 1: Why SQL on Big Data? Chapter 2: SQL-on-Big-Data Challenges & Solutions Chapter 3: Batch SQL—Architecture Chapter 4: Interactive SQL—Architecture Chapter 5: SQL for Streaming, Semi-Structured, and Operational Analytics Chapter 6: Innovations and the Road Ahead

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值