??xml version="1.0" encoding="utf-8" standalone="yes"?>
׃具备低成本和前所未有的高扩展性,Hadoop已被公认为是C代的大数据处理^台。就?0q前SQLQStructured Query LanguageQ出CPHadoop正带来了C轮的数据革命。如今Hadoop已从初出茅庐的小象变成了行业的巨人,但Hadoop仍需l箋完善?/p>
ZJava语言构徏的Hadoop框架实际上一U分布式处理大数据^収ͼ其包括Y件和众多子项目。在q十q中Hadoop已成为大数据革命的中心。MapReduce作ؓHadoop的核心是一U处理大型及大型数据集QTBU别的数据。包括网l点M生的数据、日志文件、社交网l等所带来的数据)q生成相关的执行的编E模型。其主要思想是从函数式编E语a借鉴而来的,同时也包含了从矢量编E语a借鉴的特性?/p>
互联|巨头YahooQ作为Hadoop框架的先qI者,?q时间已l将Hadoop塑造成了极为成功的技术。但相比于SQLQHadoop在某些方面仍然显得不够完善。这直接DC所有目光都集中在Hadoop供应商的w上。包括Amazon、Cloudera{公司带来众多的创新q提供强大的工具。Cloudera推出的CHD3包含众多的附加YӞ可以帮助理、运行Hadoop上的复杂dQ例如:Apache Mahout、Flume、Sqoop、Pig、Oozie、Hive、HBase、ZooKeeper、Whirr{。同时Cloudera也是目前最大的提供企业Hadoop技术支持和培训的厂商。而Amazon是较早在公共云中q行Hadoop的公司,其提供的ZMapReduce的弹性计可提供量的数据计服务?/p>
但数据处理只是大数据处理的一部分Q组l最l想要得到的是经q分析后的有价值的数据。商业智能和数据分析厂商如Datameer、Hadapt以及Karmasphere显的不可或~?/p>
Hadoop?011q证明自w的价|最明显的迹象就是五大数据库理软g供应商EMC、IBM、Informatica、Microsoft以及Oracle都投入了Hadoop的怀抱。EMC与MapR展开合作Q而Microsoft和Oracle则分别与Hortonworks和Cloudera展开了合作。而EMC和Oracle已经推出了Hadoop专有讑֤。下面就让我们来看一下Hadoop在大数据领域都俘虏了那些公司的心?/p>
AmazonZMapReduce的服?/strong>
Amazon早在2009q就推出了基于Hadoop MapReduce的EC2QElastic Compute CloudQ服务。因此Amazon在应对用户应用和需求上昑־胸有成竹。无论是中小型企业还是超大型的组l,ZMapReduce的EC2服务都经受住了考验。同时AWSQ?a title="Powered by Text-Enhance" id="_GPLITA_0" in_rurl="http://www.textsrv.com/click?v=VVM6MTc4MjM6MzM2OmFtYXpvbjozNmU0MGEyNTkzY2Q2YjllMDhkOTg5ZjRhMGEzZWE0MDp6LTEwNDctMTQyMTI6Y2xvdWQuY3Nkbi5uZXQ%3D" style="color: #015fb6; ">Amazon Web ServiceQ还包括Amazon S3QSimple storage ServiceQ。Amazon S3可提供高伸羃性、靠可靠性、高可用性以及极低的存储成本。利用AWS可高效的处理数据密集型的dQ如Web索引、数据挖掘、日志文件分析、机器学习以及科技和生物信息的学术研究?/p>
Cloudera提供安全的Hadoopq_
Cloudera也是比较早的大规模Hadoop软g和服务提供商。Cloudera一直专注于开源的Apache Hadoop完善成可靠的q_。Cloudera目前拥有100多家客户Qƈ且在本月q与Oracle展开合作Q共同进军大数据领域?/p>
在Cloudera提供了用于管理大数据的管理控制台和负责管理Hadoop部v的工具以及企业的支持。Cloudera的管理工h供基于向导式的Hadoop安装和配|菜单。同时提供相应的工具Q以帮助pȝ理员监控^台的健康状况、诊断问题、优化性能Qƈq行所需的配|和安全变更。而Cloudera的企业支持与服务包括配|检查、升U和与第三方pȝ集成以及其他技术资源。现今Cloudera理软g现在的h格是每节Ҏq?000元Q不包括gQ?/p>
Datameer大数据与商业智能有机结?/strong>
Datameer宣称其公司基于Hadoopq_的品方案DASQDatameer Analytics SolutionQ非帔R用于商业智能(BIQ。Datameer可通过JDBC、Hive、Httpq接M的数据源。同时包括一个向导驱动集成^収ͼ可安排负载ƈ从Q何结构化、半l构化和非结构化的大数据集。Datameer的大数据分析解决Ҏ通过表格接口整合Hadoop的数据挖掘能力。ƈ通过REST API在私有云和公׃中输入和输出数据?/p>
EMC的统一数据分析q_
EMC推出用于支持大数据分析的q_――EMC Greenpluml一分析q_(UAP)。Greenplum UAP是一个唯一的统一数据分析q_Q可扩展臛_他工P其独特之处在于,它将对大数据的认知和分n贯穿整个分析q程Q实现比以往更高的商业h倹{UAP包括EMC Greenplum 关系数据库、EMC Greenplum HD Hadoop以及EMC Greenplum Chorus。UAP好比一个数据分析团队,包括了从数据U学家和BI分析师到DBA和在U商业用户和理者。EMC针对g讑֤DCAQData Computing ApplianceQ,其以运行EMC Greenplum 关系数据库和EMC Greenplum HD节点。DCA提供控制理界面Q方便管理h员监视、管理Greenplum数据库和Hadooppȝ性能?/p>
Hadapt与Hadoop环境无缝集成
Hive作ؓq行在Hadoop上的数据仓库lgq不像Hadoop那样受hx。而Hadapt则提供集众多功能于一w的数据分析环境Q旨在处理存在于Hadoop和SQL环境中传l结构化的数据。Hadaptq_可运行在U有云和公共云之上,q提供从一个环境访问数据的能力。包括现有基于SQL的工具以及MapReduce处理和大数据分析。Hadapt自动分开执行Hadoop和关pL据库之间的查询,处分利用了Hadoop的高扩展性和关系数据库的高速性?/p>
Hortonworksl承YahooQ?Hadoop衣钵
Yahoo!在去q剥MHadoop业务Qƈ与硅谷风投公司Benchmark Capital合资l徏一家名为Hortonworks的公司。新公司包含在YahooQA献最大的50名工E师Q旨在l推动Hadoop的发展。Hortonworks高管断言q支以Yahoo!开发团队ؓ班底的公司将会A献更多的Hadoop代码Qƈ指引Hadoopq_未来的发展。Hortonworks已在d10月与微Y成ؓ合作伙伴关系。Hortonworks可帮助Microsoft推出Windowsq_之上的Hadoop。Hortonworks在去q?1月也推出了自qHDPQHortonworks Data PlatformQV1Q而结合了最?.23版Hadoop的HDP V2在2012q第一季度推出。Hortonworksq提供Hadoop的培训与支持Q加强在q方面与Cloudera和MapR的竞争?/p>
IBM的Hadoop之\
IBM在多q以前就开始研IHadoop。现今IBM提供Z云服务的量数据分析斚w多种Ҏ的选择Q但目前IBM的策略似乎主要是围绕Hadoop在发展。IBM?月推Z其SmartCloud云计^台。ƈ承诺改善Hadoop工作负蝲。IBM提供了基于Hadoop的InfoSphere BigInsightsQIBM InfoSphere BigInsights是用于分析和虚拟化v量数据的软g和服务,q款C品由 ApacheHadoop 提供技术支持。)基本版和企业版?InfoSphere BigInsights之前作ؓIBM试和开发的云品,现在被SmartCloud取代?/p>
Informatica 向云更进一?/strong>
大多数的数据理软g供应商(如IBM、Oracle、Syncsort、TalendQ都涉及到Hadoop。Informatica在去q?0月也推出了Hadoop环境下的数据~译转换解决Ҏ――HParser?/p>
该方案可以运行在几乎所有的Apache Hadoop分布式环境中Q与MapReduce架构qQ能高效率地把无l构的复杂数?#8213;―诸如|络记录、社交媒体数据、通话详细记录以及其他数据格式――转换为Hadoop中结构或半结构格式。当把数据{化ؓ更具l构性的格式后,便可以得到更快速的使用和生效,从而驱动业务发展、提高运营效率?/p>
Karmasphere Hadoop数据分析利器
Karmasphere提供了直接访问Hadoop中结构化和非l构化数据以及进一步分析查询的Ҏ,同时Karmasphereq提供的可视化工作空间。Karmasphere提供的可视化工具提供了SQL或其他特定查询语a分析位于Amazon S3、工作流以及本地文gpȝ上的l构化和非结构数据的Ҏ。企业还可以使用数据库或相关工具Q例如ExcelQ来提取分析得出的数据?/p>
MapR带来更高性能的Hadoop
MapR在Hadoop的舞C昑־格外耀|其提供Hadoop非常独特。MapRZ开源HadoopQ在只需有限g的环境中提供更快的Hadoop。同时Mapr配备了快照,q号UC会出现SPOF单节Ҏ障,且被认ؓ是与现有HDFS的API兼容。因此非常容易替换原有的pȝ。MapR最新的0.23版解册多开源Hadoop的缺陗而MapR与EMC的合作体现在了EMC Greenplum HD Enterprise Edition上,其就是基于MapR M5构徏的?/p>
Microsoft全面拥抱Hadoop
当EMC、IBM、Oracle都在2011q涉及HadoopӞMicrosoft全面拥抱Hadoop的D动就昑־不为奇了。而Hadoop的Windows Server在?012q推出,届时其还会与微Y现有的BI工具联合处理d。去q微软表C推出Windows Azure上的Hadoop预览版,微YqHadoop的数据通过部v在基于云的Windows Azure获取。ƈ使其能够与企业的商业工具一起分析数据。微软目前正与Hortonworks合作旨在努力化下载、安装和配置{几个Hadoop的相x术。包括HDFS、Hive、Pig。这有利于企业通过Hadoop拓宽自n的业务。微软将~写新的ODBC驱动E序q扩展自q有的查询pȝ到Hive。这样一来用户将能够直接从Excel、PowerView执行Hadoop查询?/p>
Oracleq军云计?/strong>
Oracle?011 Oracle全球大会上宣布推ZOracle Big Data Appliance。Big Data Appliance是一个集成了Hadoop、NoSQL Database、Oracle数据库Hadoop适配器、Oracle数据库Hadoop装蝲器及R语言的系l。Oracleq在今年1月与Cloudera成ؓ合作伙伴关系。Oracle现已Cloudera Distribution Including Apache HadoopQCDHQ和Cloudera Manager集成到Oracle大数据机之中。Oracle也将利用Cloudera在Hadoop领域的专业知识提供培训及咨询业务。Oracle大数据机中运行了Oracle Linux操作pȝQ?个机架中包含18个Oracle-Sun服务器,p216个核心,同时具备864GB的内存和648TB的存储能力,其售价ؓ45万美元。(李智/~译Q?/p>
如今Apache Hadoop已成为大数据行业发展背后的驱动力。Hive和Pig{技术也l常被提刎ͼ但是他们都有什么功能,Z么会需要奇怪的名字Q如OozieQZooKeeper、FlumeQ?/p>
Hadoop带来了廉L处理大数据(大数据的数据定w通常?0-100GB或更多,同时数据U类多种多样Q包括结构化、非l构化等Q的能力。但q与之前有什么不同?
C企业数据仓库和关pd数据库擅长处理结构化数据Qƈ且可以存储大量的数据。但成本上有些昂c这U对数据的要求限制了可处理的数据U类Q同时这U惯性所带的~点q媄响到数据仓库在面Ҏv量异构数据时对于敏捷的探索。这通常意味着有h值的数据源在l织内从未被挖掘。这是Hadoop与传l数据处理方式最大的不同?/p>
本文重Ҏ讨了Hadooppȝ的组成部分,q解释各个组成部分的功能?/p>
MapReduce——Hadoop的核?/strong>
Google的网l搜索引擎在得益于算法发挥作用的同时QMapReduce在后台发挥了极大的作用。MapReduce框架成ؓ当今大数据处理背后的最具媄响力?#8220;发动?#8221;。除了HadoopQ你q会在MapReduce上发现MPPQSybase IQ推出了列C数据库Q和NoSQLQ如Vertica和MongoDBQ?/p>
MapReduce的重要创新是当处理一个大数据集查询时会将其Q务分解ƈ在运行的多个节点中处理。当数据量很大时无法在一台服务器上解决问题,此时分布式计优势就体现出来。将q种技术与Linux服务器结合可获得性h比极高的替代大规模计阵列的Ҏ。Yahoo?006q看CHadoop未来的潜力,q请Hadoop创始人Doug Cutting着手发展Hadoop技术,?008qHadoop已经形成一定的规模。Hadoop目再从初期发展的成熟的q程中同时吸U了一些其他的lgQ以便进一步提高自w的易用性和功能?/p>
HDFS和MapReduce
以上我们讨论了MapReduceQ务分发到多个服务器上处理大数据的能力。而对于分布式计算Q每个服务器必须具备Ҏ据的讉K能力Q这是HDFSQHadoop Distributed File SystemQ所起到的作用?/p>
HDFS与MapReduce的结合是强大的。在处理大数据的q程中,当Hadoop集群中的服务器出现错误时Q整个计过Eƈ不会l止。同时HFDS可保障在整个集群中发生故障错误时的数据冗余。当计算完成时将l果写入HFDS的一个节点之中。HDFS对存储的数据格式q无苛刻的要求,数据可以是非l构化或其它cd。相反关pL据库在存储数据之前需要将数据l构化ƈ定义架构?/p>
开发h员编写代码责L使数据有意义。Hadoop MapReduceU的~程利用Java APIsQƈ可手动加载数据文件到HDFS之中?/p>
Pig和Hive
对于开发h员,直接使用Java APIs可能是乏xҎ出错的,同时也限制了JavaE序员在Hadoop上编E的q用灉|性。于是Hadoop提供了两个解x案,使得Hadoop~程变得更加Ҏ?/p>
•Pig是一U编E语aQ它化了Hadoop常见的工作Q务。Pig可加载数据、表达{换数据以及存储最l结果。Pig内置的操作得半l构化数据变得有意义Q如日志文gQ。同时Pig可扩展用Java中添加的自定义数据类型ƈ支持数据转换?/p>
•Hive在Hadoop中扮演数据仓库的角色。Hived数据的结构在HDFSQhive superimposes structure on data in HDFSQ,q允怋用类gSQL语法q行数据查询。与Pig一PHive的核心功能是可扩展的?/p>
Pig和HiveL令h困惑的。Hive更适合于数据仓库的dQHive主要用于静态的l构以及需要经常分析的工作。Hive与SQL怼促其成为Hadoop与其他BI工具l合的理想交集。Pig赋予开发h员在大数据集领域更多的灵zL,q允许开发简z的脚本用于转换数据以便嵌入到较大的应用程序。Pig相比Hive相对轻量Q它主要的优势是相比于直接用Hadoop Java APIs可大q削减代码量。正因ؓ如此QPig仍然是吸引大量的软g开发h员?/p>
改善数据讉KQHBase、Sqoop以及Flume
Hadoop核心q是一套批处理pȝQ数据加载进HDFS、处理然后检索。对于计这或多或少有些倒退Q但通常互动和随机存取数据是有必要的。HBase作ؓ面向列的数据库运行在HDFS之上。HBase以Google BigTable本。项目的目标是快速在L内数十亿行数据中定位所需的数据ƈ讉K它。HBase利用MapReduce来处理内部的量数据。同时Hive和Pig都可以与HBasel合使用QHive和PigqؓHBase提供了高层语a支持Q得在HBase上进行数据统计处理变的非常简单?/p>
但ؓ了授权随机存储数据,HBase也做Z一些限Ӟ例如Hive与HBase的性能比原生在HDFS之上的Hive要慢4-5倍。同时HBase大约可存储PBU的数据Q与之相比HDFS的容量限制达?0PB。HBase不适合用于ad-hoc分析QHBase更适合整合大数据作为大型应用的一部分Q包括日志、计以及时间序列数据?/p>
获取数据与输出数?/strong>
Sqoop和Flume可改q数据的互操作性和其余部分。Sqoop功能主要是从关系数据库导入数据到HadoopQƈ可直接导入到HFDS或Hive。而Flume设计旨在直接流数据或日志数据导入HDFS?/p>
Hive具备的友好SQL查询是与J多数据库的理想l合点,数据库工具通过JDBC或ODBC数据库驱动程序连接?/p>
负责协调工作程的ZooKeeper和Oozie
随着来多的项目加入Hadoop大家庭ƈ成ؓ集群pȝq作的一部分Q大数据处理pȝ需要负责协调工作的的成员。随着计算节点的增多,集群成员需要彼此同步ƈ了解d里访问服务和如何配置QZooKeeper正是为此而生的?/p>
而在Hadoop执行的Q务有时候需要将多个Map/Reduce作业q接CP它们之间或许Ҏ依赖。Oozielg提供理工作程和依赖的功能Qƈ无需开发h员编写定制的解决Ҏ?/p>
Ambari是最新加入Hadoop的项目,Ambari目旨在监控和理{核心功能加入Hadoop目。Ambari可帮助系l管理员部v和配|HadoopQ升U集以及监控服务。还可通过API集成与其他的pȝ理工具?/p>
Apache Whirr是一套运行于云服务的cdQ包括HadoopQ,可提供高度的互补性。WhirrC相对中立Q当前支持Amazon EC2和Rackspace服务?/p>
机器学习QMahout
各类l织需求的不同D相关的数据Ş形色Ԍ对这些数据的分析也需要多样化的方法。Mahout提供一些可扩展的机器学习领域经典算法的实现Q旨在帮助开发h员更加方便快捷地创徏应用E序。Mahout包含许多实现Q包括集、分cR推荐过滤、频J子Ҏ掘?/p>
使用Hadoop
通常情况下,Hadoop应用于分布式环境。就像之前Linux的状况一P厂商集成和测试Apache Hadoop生态系l的lgQƈd自己的工具和理功能。(李智/~译Q?/p>