SQL on Hadoop开源项目总结

随着Hadoop的流行,越来越多的企业把数据存储在Hadoop上,或者Non-SQL数据库上,随之相关的数据处理技术也从一开始的Map Reduce一统江湖,到现在各种技术竞相出现。最新的趋势是,大家普遍希望能够快速得到查询结果,做交互式查询,同时也希望传统的BI(Business Intelligence,商务智能)工具可以直接和基于Hadoop的大数据平台连接起来,以便使用现用工具进行可视化数据分析。

SQL on Hadoop是近几年发展起来的技术,解决了交互式查询和SQL支持的问题。下文总结了一些这个领域的开源项目,供参考。如有具体问题或任何反馈,欢迎联系作者本人:boyang798@gmail.com。

项目名称技术特点主导公司
Apache Hive支持原生Hadoop数据存储和访问,存储数据schema等metadada信息,提供类SQL的数据查询语言初期由Facebook开发,现在被Hadoop社区广泛接受
Apache Spark将Map Reduce缓存在内存中执行(RDD,Resilient Distributed Datasets),使用多级有向图来优化查询执行。Spark SQL支持JDBC和ODBCDatabricks
Cloudera Impala使用C/C++实现的基于Hadoop的数据查询层,用户量比较大,与现有BI工具集成比较好Cloudera
Stinger Initiative基于Hive的性能优化和提升,与Hadoop结合比较紧密Hortonworks
Apache Drill以Google Dremel论文为基础,全新实现的数据查询层,不依赖Hadoop,支持schema free的数据查询。支持JDBC和ODBCMapR
Presto分布式SQL查询执行引擎,支持多种数据源,可扩展性比较好。支持JDBC初期由Facebook开发,现在Netflix也是积极用户和贡献者
Apache Phoenix基于Apache HBase的关系型数据库层。支持JDBC初期由Salesforce开发,现在被多家公司使用和共同开发
Apache Kylin基于Apache HBase的OLAP,使用OLAP Cube技术做多维数据预计算和聚合。支持JDBC由ebay开发
Apache Tajo基于Hadoop的数据仓库和SQL数据查询执行引擎。支持JDBC由Database Lab., Korea University开发
Cascading Lingual基于Hadoop的SQL数据查询执行引擎。支持JDBC由Cascading和Optiq开源社区开发
Dato (GraphLab)严格意义上不属于SQL on Hadoop,但是其有特殊的技术,所以值得一提。基于C++实现的数据存储和分析工具,初期是Graph Base的数据存储和查询技术,主要用于机器学习。现在也扩展为通用的大数据分析和处理平台。GraphLab由Carnegie Mellon University的Carlos Guestrin教授发起,现在改名为Dato,由dato.com公司主导

以上各个项目各有特点和优缺点,目前没有一家可以统一整个SQL on Hadoop市场,并且各自都仍在发展和演进之中。用户需要根据自己的特定应用场景和技术领域选择合适的工具。


扫描微信二维码联系作者
扫描微信二维码联系作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值