2.3 Hadoop的今天
Tom White写的The Definite Guide for Hadoop(Hadoop权威指南)一书(副标题是“Storage and Analysis at internet scale”(互联网规模的存储和分析))对Hadoop系统进行了很好的总结,因为Hadoop提供的就是一个易用、可靠、可扩展的大规模数据存储和分析系统。
确实,在Hadoop系统出现之前,没有一个很好的技术能够系统化地作好大规模的存储和数据分析。
在今天,Hadoop已经不再是一个软件工具,而是一个生态系统。
2015年的Forrester报告创造了一个新的词Hadooponomics——基于Hadoop的经济,他们认为Hadoop不再是一个“可选的技术”,而是一个“必选的技术”。当我们在应用大数据的时候,考虑的不再是是否应用Hadoop,而是选择用开源的还是哪家供应商的Hadoop平台。
Forrester报告中指出:
(1)Hadoop会被企业普遍接受;
(2)Hadoop会被广泛应用在各个行业;
(3)与Hadoop相关的从业者人数会增加,原本的Java工程师很多都会转向Hadoop系统上的开发;
(4)大型的软件开发商如Oracle、SAP、Microsoft等都会支持Hadoop系统。
图2-6所示为互联网女皇Mary Meeker在2016年互联网报告中关于数据发展的情况。
图2-6 数据发展的示意
在图中,我们看到在第二波“数据爆炸和混乱”中,大数据时代最有代表性的基础设施是:
(1)Hadoop;
(2)Teradata;
(3)Netazza;
(4)NetApp;
(5)EMC;
(6)Greenplum。
而在第三波“海量数据情报”中,其最有代表性的基础设施是:
(1)Redshift;
(2)BigQuery;
(3)Spark;
(4)Presto。
Spark是Hadoop系统上的一个组件,使用它可以让基于Hadoop的大数据系统更加有效率,这个系统我们会在第3章向读者们介绍。
经过这些年的发展,Hadoop已经是一个成熟的分布式系统。从2009年到2011年1月,Facebook, LinkedIn, eBay和IBM共同为Hadoop系统贡献了超过200000行代码。
目前而言,主流的不收费的Hadoop版本主要有以下几个,分别是:
(1)Apache(最原始的开源版本,所有发行版都是基于这个版本进行改进的);
(2)Cloudera版本(Cloudera's Distribution Including Apache Hadoop, CDH);
(3)Hortonworks版本(Hortonworks Data Platform, HDP)。
在本书中,我们提到的CDH和HDP分别指的就是Cloudera和Hortonworks的Hadoop版本。
除了这些免费的版本之外,还有不少商用的Hadoop版本,其中绝大部分是国外的厂商,而我们在本书的案例中提到最多的TDH指的是星环科技的Hadoop商用版本(Transwarp Data Hub)。
对于一家企业来说,选择Hadoop系统并不是一个结果,而只是一个新的历程的开端。我们在本书中为读者所展示的并不是为了就事论事地推荐Hadoop,而是为了深入探讨如何解决某一个领域或者某一个企业的问题。在第7章会为读者介绍我们究竟应该怎样选择所用的Hadoop系统。