DevOps精神:SQL-on-Hadoop的根基

日期: 2015-08-30 作者:Jack Vaughan翻译:曾少宁 来源:TechTarget中国 英文

在讨论大数据分析时,我们可能多次提到神话般的DevOps精神。

Hadoop的发展历史告诉我们,虽然与MapReduce编程相关的高级Java技能一定程度上能够帮助组织提高数据处理效率,但是仅仅这些还不足以帮助组织实现全部目标。开发者们始终致力于开发能从更高抽象层次上解决这个问题的工具。

等待SQL

Michael Fabacher是美国亚特兰大Cardlytics公司负责数据架构与数据库开发的副总裁,他的公司通过深入分析销售点数据来生成针对于信用卡和借记卡用户的零售与餐馆推广活动。

Fabacher说,他的团队在使用由MapR支持的Hadoop。另外,他们还使用MapR的Drill软件支持Hadoop上使用SQL的应用程序。Drill是一种新型SQL风格工具,它遵循由Facebook最先提出的Hive技术的方式。Facebook的开发人员决定开发一个能够帮助他们和同事使用SQL操作Hadoop数据的软件。

他说:“Facebook的工程师非常优秀,他们的时间不应该浪费在编写MapReduce作业上。”他是对的。或许,DevOps和Hadoop的快速发展需要调整一下。

Dremel、Impala、Drill和Presto

在很大程度上,Hadoop之上的SQL始于Hive,它最早是由Facebook在2007年提出的,当时它成为一个Apache开源项目。Hive能够将一些SQL命令转换为MapReduce作业,从而去掉了一层复杂的编程。这个软件扩大了Hadoop在Facebook及其他公司的使用,而且现在它已经成为所有Hadoop主流发行版的一部分。与MapReduce类似,它的血统源于Hadoop分布式文件系统(HDFS)的批处理作业。

451 Research分析师Matthew Aslett说:“如果了解Hive的起源就知道,它的目标是让一些有能力编写SQL查询的人能够操作HDFS。它就是将SQL技术集带到Hadoop中。”从那时开始,Hive发展迅速。但是,同时也出现了许多新型工具。

这其中包括Impala、Drill和Presto,它们每一个都有一个企业赞助商(分别是Cloudera、MarR和Teradata),但是也提供了Apache软件基金会开源授权版本。Aslett指出,这些工具在MapReduce发起者谷歌的Dremel计划中占据重要位置,后者是一种在MapReduce上使用的SQL风格语言。

要使用正确的工具

这些工具提供高性能大数据分析交互性。有意思的是,Hive发明者Facebook也是Presto的发起者,这家公司于2012年首次在内部使用这个工具,然后它投资了Teradata将它开发成一个产品。

谷歌开发了Dremel,它的目标作为MapReduce的补充而非替代,以实现已抓取网页文档的规模化交互式分析、跟踪Android商店网站应用的安装数据、谷歌产品的崩溃报表、广告邮件分析等。

现在行业正在推进用SQL-on-Hadoop产品来替代原始MapReduce分析,这个举措有一定的争议性。有一些观察人员可能会质疑,是否真有必要开发这些优化工具,或者它们是否有一定的夸大因素。但是,这些工具的出现仍然引起了很大的关注——它们有许多都来自于一些重量级程序员,他们坚信:要用正确的工具去做正确的事情。这些工具来自于真实需求。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

Jack Vaughan
Jack Vaughan

TechTarget新闻记者和网站编辑,主要关注数据管理领域的技术趋势和动态。

翻译

曾少宁
曾少宁

TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。

相关推荐