作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3161
一、 简述Hadoop平台的起源、发展历史与应用现状。
- Hadoop平台的起源
2003-2004年,Google公布了部分GFS和MapReduce思想的细节,受此启发的Doug Cutting等人用2年的业余时间实现了DFS和MapReduce机制,使Nutch性能飙升。然后Yahoo招安Doug Gutting及其项目。
2005年,Hadoop作为Lucene的子项目Nutch的一部分正式引入Apache基金会。
2006年2月被分离出来,成为一套完整独立的软件,起名为Hadoop
Hadoop名字不是一个缩写,而是一个生造出来的词。是Hadoop之父Doug Cutting儿子毛绒玩具象命名的。
Hadoop的成长过程
Lucene–>Nutch—>Hadoop总结起来,Hadoop起源于Google的三大论文
GFS:Google的分布式文件系统Google File System
MapReduce:Google的MapReduce开源分布式并行计算框架
BigTable:一个大型的分布式数据库演变关系
GFS—->HDFS
Google MapReduce—->Hadoop MapReduce
BigTable—->HBase - Hadoop平台的发展历史
Hadoop大事记
2004年— 最初的版本(现在称为HDFS和MapReduce)由Doug Cutting和Mike Cafarella开始实施。
2005年12月— Nutch移植到新的框架,Hadoop在20个节点上稳定运行。
2006年1月— Doug Cutting加入雅虎。
2006年2月— Apache Hadoop项目正式启动以支持MapReduce和HDFS的独立发展。
2006年2月— 雅虎的网格计算团队采用Hadoop。
2006年4月— 标准排序(10 GB每个节点)在188个节点上运行47.9个小时。
2006年5月— 雅虎建立了一个300个节点的Hadoop研究集群。
2006年5月— 标准排序在500个节点上运行42个小时(硬件配置比4月的更好)。
2006年11月— 研究集群增加到600个节点。
2006年12月— 标准排序在20个节点上运行1.8个小时,100个节点3.3小时,500个节点5.2小时,900个节点7.8个小时。
2007年1月— 研究集群到达900个节点。
2007年4月— 研究集群达到两个1000个节点的集群。
2008年4月— 赢得世界最快1TB数据排序在900个节点上用时209秒。
2008年7月— 雅虎测试节点增加到4000个
2008年9月— Hive成为Hadoop的子项目
2008年11月— Google宣布其MapReduce用68秒对1TB的程序进行排序
2008年10月— 研究集群每天装载10TB的数据。
2008年— 淘宝开始投入研究基于Hadoop的系统–云梯。云梯总容量约9.3PB,共有1100台机器,每天处理18000道作业,扫描500TB数据。
2009年3月— 17个集群总共24 000台机器。
2009年3月— Cloudera推出CDH(Cloudera’s Dsitribution Including Apache Hadoop)
2009年4月— 赢得每分钟排序,雅虎59秒内排序500 GB(在1400个节点上)和173分钟内排序100 TB数据(在3400个节点上)。
2009年5月— Yahoo的团队使用Hadoop对1 TB的数据进行排序只花了62秒时间。
2009年7月— Hadoop Core项目更名为Hadoop Common;
2009年7月— MapReduce 和 Hadoop Distributed File System (HDFS) 成为Hadoop项目的独立子项目。
2009年7月— Avro 和 Chukwa 成为Hadoop新的子项目。
2009年9月— 亚联BI团队开始跟踪研究Hadoop
2009年12月—亚联提出橘云战略,开始研究Hadoop
2010年5月— Avro脱离Hadoop项目,成为Apache顶级项目。
2010年5月— HBase脱离Hadoop项目,成为Apache顶级项目。
2010年5月— IBM提供了基于Hadoop 的大数据分析软件——InfoSphere BigInsights,包括基础版和企业版。
2010年9月— Hive( Facebook) 脱离Hadoop,成为Apache顶级项目。
2010年9月— Pig脱离Hadoop,成为Apache顶级项目。
2011年1月— ZooKeeper 脱离Hadoop,成为Apache顶级项目。
2011年3月— Apache Hadoop获得Media Guardian Innovation Awards 。
2011年3月— Platform Computing 宣布在它的Symphony软件中支持Hadoop MapReduce API。
2011年5月— Mapr Technologies公司推出分布式文件系统和MapReduce引擎——MapR Distribution for Apache Hadoop。
2011年5月— HCatalog 1.0发布。该项目由Hortonworks 在2010年3月份提出,HCatalog主要用于解决数据存储、元数据的问题,主要解决HDFS的瓶颈,它提供了一个地方来存储数据的状态信息,这使得 数据清理和归档工具可以很容易的进行处理。
2011年4月— SGI( Silicon Graphics International )基于SGI Rackable和CloudRack服务器产品线提供Hadoop优化的解决方案。
2011年5月— EMC为客户推出一种新的基于开源Hadoop解决方案的数据中心设备——GreenPlum HD,以助其满足客户日益增长的数据分析需求并加快利用开源数据分析软件。Greenplum是EMC在2010年7月收购的一家开源数据仓库公司。
2011年5月— 在收购了Engenio之后, NetApp推出与Hadoop应用结合的产品E5400存储系统。
2011年6月— Calxeda公司(之前公司的名字是Smooth-Stone)发起了“开拓者行动”,一个由10家软件公司组成的团队将为基于Calxeda即将推出的ARM系统上芯片设计的服务器提供支持。并为Hadoop提供低功耗服务器技术。
2011年6月— 数据集成供应商Informatica发布了其旗舰产品,产品设计初衷是处理当今事务和社会媒体所产生的海量数据,同时支持Hadoop。
2011年7月— Yahoo!和硅谷风险投资公司 Benchmark Capital创建了Hortonworks 公司,旨在让Hadoop更加鲁棒(可靠),并让企业用户更容易安装、管理和使用Hadoop。
2011年8月— Cloudera公布了一项有益于合作伙伴生态系统的计划——创建一个生态系统,以便硬件供应商、软件供应商以及系统集成商可以一起探索如何使用Hadoop更好的洞察数据。
2011年8月— Dell与Cloudera联合推出Hadoop解决方案——Cloudera Enterprise。Cloudera Enterprise基于Dell PowerEdge C2100机架服务器以及Dell PowerConnect 6248以太网交换机 - Hadoop平台的应用现状
国内外Hadoop应用的典型案例
国内Hadoop的应用现状
Hadoop在国内的应用主要以互联网公司为主,下面主要介绍大规模使用Hadoop或研究Hadoop的公司。
1.百度
百度在2006年就开始关注Hadoop并开始调研和使用,在2012年其总的集群规模达到近十个,单集群超过2800台机器节点,Hadoop机器总数有上万台机器,总的存储容量超过100PB,已经使用的超过74PB,每天提交的作业数目有数千个之多,每天的输入数据量已经超过7500TB,输出超过1700TB。
百度的Hadoop集群为整个公司的数据团队、大搜索团队、社区产品团队、广告团队,以及LBS团体提供统一的计算和存储服务,主要应用包括:
数据挖掘与分析
日志分析平台
数据仓库系统
推荐引擎系统
用户行为分析系统
同时百度在Hadoop的基础上还开发了自己的日志分析平台、数据仓库系统,以及统一的C++编程接口,并对Hadoop进行深度改造,开发了HadoopC++扩展HCE系统。
2.阿里巴巴(旧的数据,现在已转而使用阿里云了)
阿里巴巴的Hadoop集群截至2012年大约有3200台服务器,大约30?000物理CPU核心,总内存100TB,总的存储容量超过60PB,每天的作业数目超过150?000个,每天hivequery查询大于6000个,每天扫描数据量约为7.5PB,每天扫描文件数约为4亿,存储利用率大约为80%,CPU利用率平均为65%,峰值可以达到80%。阿里巴巴的Hadoop集群拥有150个用户组、4500个集群用户,为淘宝、天猫、一淘、聚划算、CBU、支付宝提供底层的基础计算和存储服务,主要应用包括:
数据平台系统
搜索支撑
广告系统
数据魔方
量子统计
淘数据
推荐引擎系统
搜索排行榜
为了便于开发,其还开发了WebIDE继承开发环境,使用的相关系统包括:Hive、Pig、Mahout、Hbase等。
3.腾讯
腾讯也是使用Hadoop最早的中国互联网公司之一,截至2012年年底,腾讯的Hadoop集群机器总量超过5000台,最大单集群约为2000个节点,并利用Hadoop-Hive构建了自己的数据仓库系统TDW,同时还开发了自己的TDW-IDE基础开发环境。腾讯的Hadoop为腾讯各个产品线提供基础云计算和云存储服务,其支持以下产品:
腾讯社交广告平台
搜搜(SOSO)
拍拍网
腾讯微博
腾讯罗盘
QQ会员
腾讯游戏支撑
QQ空间
朋友网
腾讯开放平台
财付通
手机QQ
QQ音乐
4.奇虎360
奇虎360主要使用Hadoop-HBase作为其搜索引擎so.com的底层网页存储架构系统,360搜索的网页可到千亿记录,数据量在PB级别。截至2012年年底,其HBase集群规模超过300节点,region个数大于10万个,使用的平台版本如下:
HBase版本:facebook0.89-fb。
HDFS版本:facebookHadoop-20。
奇虎360在Hadoop-HBase方面的工作主要为了优化减少HBase集群的启停时间,并优化减少RS异常退出后的恢复时间。
5.华为
华为公司也是Hadoop主要做出贡献的公司之一,排在Google和Cisco的前面,华为对Hadoop的HA方案,以及HBase领域有深入研究,并已经向业界推出了自己的基于Hadoop的大数据解决方案。
6.中国移动
中国移动于2010年5月正式推出大云BigCloud1.0,集群节点达到了1024。中国移动的大云基于Hadoop的MapReduce实现了分布式计算,并利用了HDFS来实现分布式存储,并开发了基于Hadoop的数据仓库系统HugeTable,并行数据挖掘工具集BC-PDM,以及并行数据抽取转化BC-ETL,对象存储系统BC-ONestd等系统,并开源了自己的BC-Hadoop
版本。
中国移动主要在电信领域应用Hadoop,其规划的应用领域包括:
经分KPI集中运算
经分系统ETL/DM
结算系统
信令系统
云计算资源池系统
物联网应用系统
IDC服务等
7.盘古搜索
盘古搜索(目前已和即刻搜索合并为中国搜索)主要使用Hadoop集群作为搜索引擎的基础架构支撑系统,截至2013年年初,集群中机器数量总计超过380台,存储总量总计3.66PB,主要包括的应用如下。
网页存储
网页解析
建索引
Pagerank计算
日志统计分析
推荐引擎等
即刻搜索(人民搜索)
即刻搜索(目前已与盘古搜索合并为中国搜索)也使用Hadoop作为其搜索引擎的支撑系统,截至2013年,其Hadoop集群规模总计超过500台节点,配置为双路6核心CPU,48G内存,11×2T存储,集群总容量超过10PB,使用率在78%左右,每天处理读取的数据量约为500TB,峰值大于1P,平均约为300TB。
即刻搜索在搜索引擎中使用sstable格式存储网页并直接将sstable文件存储在HDFS上面,主要使用HadoopPipes编程接口进行后续处理,也使用Streaming接口处理数据,主要的应用包括:
网页存储
解析
建索引
推荐引擎
国外Hadoop的应用现状
1.Yahoo
Yahoo是Hadoop的最大支持者,截至2012年,Yahoo的Hadoop机器总节点数目超过42?000个,有超过10万的核心CPU在运行Hadoop。最大的一个单Master节点集群有4500个节点(每个节点双路4核心CPUboxesw,4×1TB磁盘,16GBRAM)。总的集群存储容量大于350PB,每月提交的作业数目超过1000万个,在Pig中超过60%的Hadoop作业是使用Pig编写提交的。
Yahoo的Hadoop应用主要包括以下几个方面:
支持广告系统
用户行为分析
支持Web搜索
反垃圾邮件系统
会员反滥用
内容敏捷
个性化推荐
同时Pig研究并测试支持超大规模节点集群的Hadoop系统。
2.Facebook
Facebook使用Hadoop存储内部日志与多维数据,并以此作为报告、分析和机器学习的数据源。目前Hadoop集群的机器节点超过1400台,共计11?200个核心CPU,超过15PB原始存储容量,每个商用机器节点配置了8核CPU,12TB数据存储,主要使用StreamingAPI和JavaAPI编程接口。Facebook同时在Hadoop基础上建立了一个名为Hive的高级数据仓库框架,Hive已经正式成为基于Hadoop的Apache一级项目。此外,还开发了HDFS上的FUSE实现。
3.A9.com
A9.com为Amazon使用Hadoop构建了商品搜索索引,主要使用StreamingAPI以及C++、Perl和Python工具,同时使用Java和StreamingAPI分析处理每日数以百万计的会话。A9.com为Amazon构建的索引服务运行在100节点左右的Hadoop集群上。
4.Adobe
Adobe主要使用Hadoop及HBase,同于支撑社会服务计算,以及结构化的数据存储和处理。大约有超过30个节点的Hadoop-HBase生产集群。Adobe将数据直接持续地存储在HBase中,并以HBase作为数据源运行MapReduce作业处理,然后将其运行结果直接存到HBase或外部系统。Adobe在2008年10月就已经将Hadoop和HBase应用于生产集群。
5.CbIR
自2008年4月以来,日本的CbIR(Content-basedInformationRetrieval)公司在AmazonEC2上使用Hadoop来构建图像处理环境,用于图像产品推荐系统。使用Hadoop环境生成源数据库,便于Web应用对其快速访问,同时使用Hadoop分析用户行为的相似性。
6.Datagraph
Datagraph主要使用Hadoop批量处理大量的RDF数据集,尤其是利用Hadoop对RDF数据建立索引。Datagraph也使用Hadoop为客户执行长时间运行的离线SPARQL查询。Datagraph是使用AmazonS3和Cassandra存储RDF数据输入和输出文件的,并已经开发了一个基于MapReduce处理RDF数据的Ruby框架——RDFgrid。
Datagraph主要使用Ruby、RDF.rb以及自己开发的RDFgrid框架来处理RDF数据,主要使用HadoopStreaming接口。
7.EBay
单集群超过532节点集群,单节点8核心CPU,容量超过5.3PB存储。大量使用的MapReduce的Java接口、Pig、Hive来处理大规模的数据,还使用HBase进行搜索优化和研究。
8.IBM
IBM蓝云也利用Hadoop来构建云基础设施。IBM蓝云使用的技术包括:Xen和PowerVM虚拟化的Linux操作系统映像及Hadoop并行工作量调度,并发布了自己的Hadoop发行版及大数据解决方案。
9.Last.Fm
Last.Fm主要用于图表计算、专利申报、日志分析、A/B测试、数据集合并等,也使用Hadoop对超过百万的曲目进行大规模的音频特征分析。
节点超过100台机器,集群节点配置双四核XeonL5520@2.27GHzL5630@2.13GHz,24GB内存,8TB(4×2TB)存储。
10.LinkedIn
LinkedIn有多种硬件配置的Hadoop集群,主要集群配置如下:
800节点集群,基于Westmere的惠普SL170X与2×4的核心,24GB内存,6×2TBSATA。
1900节点集群,基于Westmere的超微-HX8DTT,与2×6的核心,24GB内存,6×2TBSATA。
1400节点集群,基于SandyBridge超微与2×6的核心,32GB内存,6×2TBSATA。
使用的软件如下:
操作系统使用RHEL6.3。
JDK使用SUNJDK1.6.0_32。
Apache的Hadoop0.20.2的补丁和ApacheHadoop的1.0.4补丁。
Azkaban和Azkaban用于作业调度。
Hive、Avro、Kafka等。
11.MobileAnalytic.TV
主要使用Hadoop应用在并行化算法领域,涉及的MapReduce应用算法如下:
信息检索和分析
机器生成的内容——文档、文本、音频、视频
自然语言处理
项目组合包括:
移动社交网络
网络爬虫
文本到语音转化
音频和视频自动生成
- 列举发展过程中重要的事件
2004年12月。Google发表了MapReduce论文,MapReduce允许跨服务器集群,运行超大规模并行计算。Doug Cutting意识到可以用MapReduce来解决Lucene的扩展问题。
Google发表了GFS论文。
Doug Cutting根据GFS和MapReduce的思想创建了开源Hadoop框架。
2006年1月,Doug Cutting加入Yahoo,领导Hadoop的开发。
Doug Cutting任职于Cloudera公司。
2009年7月,Doug Cutting当选为Apache软件基金会董事,2010年9月,当选为chairman。
各大企业开发自己的发行版,并为Apache Hadoop贡献代码。
- 主要版本
1.DKhadoop发行版:有效的集成了整个HADOOP生态系统的全部组件,并深度优化,重新编译为一个完整的更高性能的大数据通用计算平台,实现了各部件的有机协调。因此DKH相比开源的大数据平台,在计算性能上有了高达5倍(最大)的性能提升。DKhadoop将复杂的大数据集群配置简化至三种节点(主节点、管理节点、计算节点),极大的简化了集群的管理运维,增强了集群的高可用性、高可维护性、高稳定性。
2.Cloudera发行版:CDH是Cloudera的hadoop发行版,完全开源,比Apache hadoop在兼容性,安全性,稳定性上有增强。
3.€Hortonworks发行版:Hortonworks 的主打产品是Hortonworks Data Platform (HDP),也同样是100%开源的产品,其版本特点:HDP包括稳定版本的Apache Hadoop的所有关键组件;安装方便,HDP包括一个现代化的,直观的用户界面的安装和配置工具。 - 主要厂商
1.IBM(国际商业机器公司)或万国商业机器公司,简称IBM(International Business Machines Corporation)。总公司在纽约州阿蒙克市。1911年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30多万人,业务遍及160多个国家和地区。
2.EMC(易安信)为一家美国信息存储资讯科技公司, 主要业务为信息存储及管理产品、服务和解决方案。EMC公司创建于1979年,总部在马萨诸塞州霍普金顿市。2003年,EMC收购了VMware。2015年10月,EMC被DELL
3.甲骨文公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989年正式进入中国市场。2013年,甲骨文已超越IBM,成为继Microsoft后全球第二大软件公司。
4.Cloudera成立于2008年,在企业和大型机构在寻求解决棘手的大数据问题时,往往会使用开源软件基础架构Hadoop的服务。
二、下次上课之前,必须成功完成Hadoop的安装与配置。
- 完成配置ssh无密码登陆
- 完成java环境的安装及环境变量的配置
- 完成hadoop的安装
- 完成伪分布式Hadoop的配置及启动
- 进行伪分布式实例的操作
- 完成运行hadoop伪分布式实例,下图为运行结果
- 关闭hadoop的操作