其实,对SQL支持并不是Hadoop的最终目标,但是这一特性将会帮助Hadoop找寻自己的生存方式,让Hadoop在那些已经明白下一代分析的重要性但又不想迈向MapReduce专家之路的公司中取得一席之地。

在GigaOM组织Structure: Data的日程的时分,就意识到很有必要评论在Hadoop上运转SQL查询,可是却未认识到Hadoop上运转SQL查询居然变的这么重要。本文是Gigaom的资深修改Derrick Harris 编撰的一篇文章 ,编译如下:

其实,对SQL支撑并不是Hadoop的最终方针,可是这一特性将会协助Hadoop找寻自己的生计方法,让Hadoop在那些现已了解下一代剖析的重要性但又不想迈向MapReduce专家之路的公司中获得一席之地。

当然,Facebook发起了整场运动 ——在2009年发明了Hive,它把相似数据库SQL查询功用引向了Hadoop 。Hive现在现已是Apache的一个开源项目,包括数据办理层以及类SQL的结构化查询言语HiveQL。在曩昔的数年里,Hive的确是十分有用并且很盛行,可是由于Hive对MapReduce依靠,查询速度有着“先天性缺乏”,由于在查询的过程中,MapReduce需求扫描整个数据集,并且在Job的处理过程中还需求把许多的数据传输到网络。对干流用户而言,难以有很大的吸引力。

请记住,下一代的SQL-on-Hadoop东西并不只是只是商业智能,也不是只是只能读取存储在Hadoop上数据的数据库产品, EMC Greenplum, HP Vertica, IBM Netezza, ParAccel, Microsoft SQL Server以及Teradata/Aster Data全部都答应某些方法的Hadoop数据查询。并且这些是运用,结构以及可以让用户从内部进行Hadoop数据查询的引擎,有时分也会重构底层核算以及数据基础设施。这种方法的长处在于:可以运用已有存储方式的数据,从理论上讲,对数据的剖析运用就不需求再拜访两个独立的数据存储。

数据仓库和BI:The Structure: Data set

Apache Drill: Drill是由MapR主导、依据Hadoop之上的相似于谷歌的Demel(或许说BigQuery)交互式查询引擎。***发布在8月份,不过该项目正处在开发阶段,也是Apache的孵化器方案,依据其网站所言:“(Drill)清晰的方针便是扩展到10000台服务器,并且可以在几秒钟之内处理PB级的数据和数万亿条的记载。”

MapR的产品办理总监Tomer Shiran表明:“Drill与MapReduce相得益彰。在谷歌,数以千计的工程师每天都在运用Dremel和MapReduce,未来也将有着更多的人来运用Drill与MapReduce。 ”

Hadapt:Hadapt实际上在2011年的Structure: Data大会上发布,它也是***批SQL-on-Hadoop的厂商之一,其共同之处在于,在市场上现已有了真实的产品,并且现已培养了自己的客户群。其***的架构包括先进的SQL剖析东西,为MapReduce以及相关使命打造的split-execution引擎,也包括HDFS和相关的存储。

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第1张

Hadapt供应了一体化的剖析环境,旨在对Hadoop里边的数据履行剖析操作,还能对SQL环境中传统的结构化数据进行剖析。而Hadapt的渠道规划成了可以在私有云或公共云环境上运转,供应了从一个环境就能拜访一切数据的长处,所以除了MapReduce流程和大数据剖析东西外,现有的依据SQL的东西也可以运用。Hadapt可以在Hadoop层和联系数据库层之间主动区分查询履行使命,供应了Hadapt所谓的优化环境,这种环境可以充分运用Hadoop的可扩展性和联系数据库技能的快速度。

Platfora:从技能来讲,这并不是一个SQL产品,Platfora现在是“红的发紫”,并且意图打造大数据商业智能(BI)的新蓝图。我们都知道,怎么可以把冗繁的数据(不管是邮件、文档、音频等)进行有用处理、视觉化,让它变成一般的用户都能看得懂的东西,“数据”才干真实变得有价值。可是Hadpoop只要一小部分开发者(相对而言)在运用,而Platfora却想把它变成一个任何人都可以了解、运用的东西。尽管也有其他的创业者在做相似的工作,可是Platfora在数据处理速度上有显着的优势,一起十分直观,并且他们在用HTML5的canvas来做解决方案,既可以确保操作简洁又能兼容不同设备上的数据,公司在10月份进行的产品发布。

Qubole:Qubole是一个建造云渠道进行数据剖析和处理的创业公司。联合开创人兼CEO是Ashishi Thusoo,在兴办Qubole之前,Ashishi担任Facebook数据基础设施团队。在他的领导下,团队发明了世界上***的数据剖析与处理渠道。他也是Apache Hive项意图联合开创人,并作为该项意图Apache软件基金会的开创副总裁。Qubole声称具有主动扩展才能,并且对Hadoop代码做过优化,高速的列数据缓存可以让其服务比独自运转Hive时要快许多。Qubole运转在AWS上,相对而言,这比保护一个物理集群要简单得多。

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第2张#p#

数据仓库和BI:续篇

Citus Data: Citus Data的CitusDB并不只是只重视于Hadoop,而是想把其分布式的Postgres才能扩展到一切的数据类型中。其间的一项功用“foreign data wrappers”,它可以把多种数据类型(像CSV, log以及JSON files,并且这些数据类型在原生的Postgres上是并不匹配的)转化成数据库的原生类型,接下来在几秒钟之内就能运用其特有的分布式处理技能来完结查询。由于其Postgres的功用,CitusDB也能衔接不同的数据源(比方Postgres-Hadoop),这样就不需求用户进行独立的查询,然后再手动地衔接数据。

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第3张

Cloudera Impala:Cloudera Impala可能是SQL-on-Hadoop上最重要的效果,这是一个大规模的并行处理引擎,成功避开了MapReduce进行交互式地查询布置在HDFS或许Hbase中的数据。不过,由于Cloudera并不构建运用程序,它依靠更高层次的BI和剖析合作伙伴为用户供应接口。

在2012年纽约进行的大数据技能会议Strata Conference + Hadoop World上,Cloudera发布了实时查询开源项目Impala 1.0 beta版,称 比本来依据MapReduce的Hive SQL查询速度提高3~90倍,并且愈加灵敏易用。Impala不再运用缓慢的Hive+MapReduce批处理,而是经过与商用并行联系数据库中相似的分布式查询引擎(由Query Planner、Query Coordinator和Query Exec Engine三部分组成),可以直接从HDFS或许HBase顶用SELECT、JOIN和计算函数查询数据,然后大大降低了推迟。其架构如下图所示。

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第4张

Impala的架构

Karmasphere:就像Hive相同,Karmasphere也是依靠于MapReduce处理查询,这也就意味着其速度要慢于其他的新途径。与Hive不同的是,Karmasphere答应并行查询,并且其包括一个可视化的界面,可以用于编写查询以及过滤查询成果。

Karmasphere供应了直接拜访Hadoop里边结构化和非结构化数据的长处,它还可以运用SQL及其他言语,用于即席查询和进一步的剖析。运用SQL及其他言语,用户就能创立即席查询,然后处理成果。Karmasphere Studio为开发人员供应了一种图形化环境,可以在里边开发自定义算法,为运用程序和可重复的生产流程创立有用的数据集。

Lingual:Lingual是来自Concurrent的一个新的开源项目,其母公司从事Hadoop Cascading结构规划。Lingual运转在Cascading之上,(Cascading是一个架构在Hadoop上的API,用来创立杂乱和容错数据处理工作流。它笼统了集群拓扑结构和装备来快速开发杂乱分布式的运用,而不必考虑背面的MapReduce),并供应给开发者和剖析师一个真实的ANSI SQL接口,在其之上可以运转剖析或许是构建运用。Lingual兼容传统的BI东西,JDBC以及Cascading系的API。

Phoenix:Phoenix是一个新的,相对来说并不为人知的一个开源项目,出自Salesforce.com,旨在打造一个更快的SQL查询,面向的目标有HBase或许是布置在HDFS之上的NoSQL数据库。用户经过JDBC接口与其进行交互。

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第5张

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第6张

Shark:Shark尽管不是技能上的Hadoop,可是它们也有很深的根由。Shark,从必定意义上 说代表了“Hive on Spark”,运用Hive也就意味着它与Hadoop也存在着亲近的联系。运用Shark运转并行处理Job要比MapReduce快100倍,Shark声称比照传统的Hive而言,这是一个巨大的提高。

Stinger Initiative:Stinger Initiative是由Hortonworks主导的

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第7张

一个科研效果,可以让Hive的速度提高高达100倍,并且引入了更多的功用。Stinger为Hive添加了更多的SQL剖析才能,可是最要害的方面在于底层基础设施的提高:一个优化的履行引擎,一个列式文件格局,可以防止MapReduce的运转瓶颈。 #p#

Operational SQL

Drawn to Scale:Drawn to Scale也是一家草创公司,它在HBase之上构建了一个 SQL数据库,这儿的要害词是“数据库”。其产品称之为Spire,它仿照了谷歌的F1规划。Spire具有一个分布式索引,一切的查询只发送给相关数据的存储节点,所以其读取和写入的速度都很快,体系还可以处理许多的并发用户。

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第8张

在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)  rackspace google GCE AWS IaaS rightscale 第9张

Splice Machine:Splice Machine(数据库草创公司)也测验经过在原生的HBase分布式数据库上树立其Splice SQL Engine来获得一席之地。Splice Machine重视的是业务完整性,这也是它差异于可扩展的NoSQL数据库和剖析类SQL-on-Hadoop产品的特征地点。它依靠于HBase的auto-sharding功用,这也是为了让扩展变得愈加简单。

转载请说明出处
知优网 » 在Hadoop上运转SQL:程序员需知晓的13种数据东西(hadoop和sql)

发表评论

您需要后才能发表评论