[COPY]当前国内外Hadoop的实际使用案例

本文介绍了Hadoop在全球范围内的广泛应用案例,包括Yahoo、Facebook等知名企业,以及国内如百度、阿里巴巴等公司的实际部署情况。

说到Hadoop,很多朋友都想知道到底它是如何被应用的呢?通过下文,笔者就向大家介绍一下具体的情况。

1.Yahoo

Yahoo是Hadoop的最大支持者,截至2012年,Yahoo的Hadoop机器总节点数目超过420000个,有超过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应用算法如下。

  • 信息检索和分析。

  • 机器生成的内容——文档、文本、音频、视频。

  • 自然语言处理。

  • 项目组合包括:

  • 移动社交网络。

  • 网络爬虫。

  • 文本到语音转化。

  • 音频和视频自动生成。

12.Openstat

主要利用Hadoop定制一个网络日志分析并生成报告,其生产环境下超过50个节点集群(双路四核Xeon处理器,16GB的RAM,4~6硬盘驱动器),还有两个相对小的集群用于个性化分析,每天处理约500万的事件,每月15亿美元的交易数据,集群每天产生大约25GB的报告。

使用的技术主要包括:CDH、Cascading、Janino。

13.Quantcast

3000个CPU核心,3500TB存储,每日处理1PB以上的数据,使用完全自定义的数据路径和排序器的Hadoop调度器,对KFS文件系统有突出贡献。

14.Rapleaf

超过80个节点的集群(每个节点有2个双核CPU,2TB×8存储,16GBRAM内存);主要使用Hadoop、Hive处理Web上关联到个人的数据,并引入Cascading简化数据流穿过各种处理阶段。

15.WorldLingo

硬件上超过44台服务器(每台有2个双核CPU,2TB存储,8GB内存),每台服务器均运行Xen,启动一个虚拟机实例运行Hadoop/HBase,再启动一个虚拟机实例运行Web或应用程序服务器,即有88台可用的虚拟机;运行两套独立的Hadoop/HBase机群,它们各自拥有22个节点。Hadoop主要用于运行HBase和MapReduce作业,扫描HBase的数据表,执行特定的任务。HBase作为一种可扩展的、快速的存储后端,用于保存数以百万的文档。目前存储了1200万篇文档,近期的目标是存储4.5亿篇文档。

16.格拉斯哥大学的TerrierTeam

超过30个节点的实验集群(每节点配置XeonQuadCore2.4GHz,4GB内存,1TB存储)。使用Hadoop促进信息检索研究和试验,特别是用于TREC,用于TerrierIR平台。Terrier的开源发行版中包含了基于HadoopMapReduce的大规模分布式索引。

17.内布拉斯加大学的HollandComputingCenter

运行一个中等规模的Hadoop机群(共计1.6PB存储)用于存储和提供物理数据,以支持紧凑型μ子螺旋型磁谱仪(CompactMuonSolenoid,CMS)实验的计算。这需要一类能够以几Gbps的速度下载数据,并以更高的速度处理数据的文件系统的支持。

18.VisibleMeasures

将Hadoop作为可扩展数据流水线的一个组件,最终用于VisibleSuite等产品。使用Hadoop汇总、存储和分析与网络视频观众收看行为相关的数据流。目前的网格包括超过128个CPU核心,超过100TB的存储,并计划大幅扩容。

国内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。

  • 结算系统。

  • 信令系统。

  • 云计算资源池系统。

  • 物联网应用系统。

  • E-mail。

  • IDC服务等。

7.盘古搜索

盘古搜索(目前已和即刻搜索合并为中国搜索)主要使用Hadoop集群作为搜索引擎的基础架构支撑系统,截至2013年年初,集群中机器数量总计超过380台,存储总量总计3.66PB,主要包括的应用如下。

  • 网页存储。

  • 网页解析。

  • 建索引。

  • Pagerank计算。

  • 日志统计分析。

  • 推荐引擎等。

8.即刻搜索(人民搜索)

即刻搜索(目前已与盘古搜索合并为中国搜索)也使用Hadoop作为其搜索引擎的支撑系统,截至2013年,其Hadoop集群规模总计超过500台节点,配置为双路6核心CPU,48G内存,11×2T存储,集群总容量超过10PB,使用率在78%左右,每天处理读取的数据量约为500TB,峰值大于1P,平均约为300TB。

即刻搜索在搜索引擎中使用sstable格式存储网页并直接将sstable文件存储在HDFS上面,主要使用HadoopPipes编程接口进行后续处理,也使用Streaming接口处理数据,主要的应用包括:

  • 网页存储。

  • 解析。

  • 建索引。

  • 推荐引擎。

<think>嗯,用户遇到了复制虚拟机后Hadoop集群不生效的问题。从引用内容看,用户正在学习搭建Hadoop分布式集群,但克隆虚拟机后集群无法正常工作。这确实是Hadoop环境搭建中常见的痛点。 用户提供的引用材料很有价值,特别是引用[1]提到要"修改相关配置""主机映射",引用[3][4]都提到了配置文件同步的问题。不过用户似乎已经尝试过scp同步配置文件仍然无效,说明问题可能更隐蔽。 考虑到Hadoop集群对网络环境的严苛要求,最可能的是三个方向的问题:首先是网络配置,克隆虚拟机会导致MAC地址IP绑定失效;其次是主机标识,Hadoop依赖hostnamehosts文件的严格对应;最后是密钥认证,SSH免密登录在克隆后可能被破坏。 在引用[2]中特别强调了SSH配置的重要性,而引用[3]展示的jps状态检查正是我现在要建议的排查手段。用户之前应该已经完成过基础搭建(引用里提到成功案例),所以可以排除基础配置错误,重点检查克隆特有的问题。 准备建议用户按步骤排查:先确认IPhostname的对应关系,再检查SSH本地免密登录这个最容易被忽略的点(克隆后主机密钥变化会导致自连失败),最后用jps验证进程组合。每个步骤都给出具体命令,这样用户能快速验证。对于配置文件同步,虽然引用[4]提到scp同步,但要提醒用户注意环境变量等隐藏配置。 用户应该具备一定Linux基础(从引用内容看实验涉及命令操作),所以诊断命令可以写得稍微专业些,但关键参数要给出示例。最后补充配置模板很重要,因为很多教程的配置项不完整,特别是YARN资源管理部分常被忽略。 </think> 复制虚拟机后Hadoop集群失效是常见问题,主要原因及解决方法如下(结合引用内容): ### 一、核心原因分析 1. **主机名冲突** - 克隆的虚拟机与原主机名相同(如都叫 `master`),导致集群节点识别混乱。 - **解决**:修改每台虚拟机的唯一主机名: ```bash sudo hostnamectl set-hostname slave1 # 示例(需重启) ``` 2. **IP地址重复或配置错误** - 克隆机IP未更新(引用[1][3]中需"修改相关配置") - **解决**: - 检查 `/etc/sysconfig/network-scripts/ifcfg-ens*` 更新IP - 确保所有节点IP在 `/etc/hosts` 中正确映射(引用[1]要求"主机映射"): ```plaintext 192.168.75.128 master 192.168.75.129 slave1 192.168.75.130 slave2 ``` 3. **SSH免密登录失效** - 克隆后各节点的SSH密钥相同(引用[2]强调"免密操作") - **解决**: ```bash # 每台节点执行: sudo rm /etc/ssh/ssh_host_* # 删除旧密钥 sudo systemctl restart sshd # 重新生成密钥 # 重新配置免密登录(包括本机登录自己) ssh-keygen -t rsa ssh-copy-id master ssh-copy-id slave1 ``` 4. **Hadoop配置文件未同步** - `core-site.xml`/`hdfs-site.xml`/`yarn-site.xml` 中的主机名未更新(引用[3][4]需同步配置) - **关键检查项**: ```xml <!-- core-site.xml --> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> <!-- 确保此处是当前主机名 --> </property> ``` ```xml <!-- yarn-site.xml --> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> <!-- 确认与实际主节点一致 --> </property> ``` 5. **数据目录未清理** - 克隆导致所有节点的 `tmp` 目录数据相同(如 `hadoop.tmp.dir`) - **解决**: ```bash # 所有节点执行: rm -rf /tmp/hadoop-* # 删除Hadoop临时目录 hdfs namenode -format # 仅主节点重新格式化 ``` --- ### 二、快速诊断流程 1. **检查基础通信** ```bash ping master # 所有节点测试主机名解析 ssh slave1 jps # 测试免密登录主机识别 ``` 2. **验证配置同步** 在所有节点执行: ```bash grep -R "master" $HADOOP_HOME/etc/hadoop/*.xml # 确认主机名统一 ``` 3. **查看启动日志** ```bash tail -n 100 $HADOOP_HOME/logs/hadoop-*-namenode*.log ``` --- ### 三、关键配置示例 确保 `workers` 文件(或 `slaves`)包含正确从节点名: ```plaintext # $HADOOP_HOME/etc/hadoop/workers slave1 slave2 ``` > **注意**:克隆后**必须**修改三处唯一标识: > 1. 主机名(`hostnamectl`) > 2. IP地址(`ifcfg`文件) > 3. MAC地址(虚拟机设置中"生成新MAC") > 否则会导致网络冲突(引用[1]中"虚拟机删除,创建与复制"的隐含要求)[^1][^3]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值