400-685-0732

WJMonitor舆情之声

企业大数据智能舆情监测管理解决方案

全网监测海量数据按需发布监测预警

实时把握舆情动态精准追溯信息源头

获取验证码
企业采购 个人使用
当前位置: 首页 > SEO博客 > 分布式计算平台Hadoop简介

分布式计算平台Hadoop简介

时间:2012-01-13 09:17:19
产生背景

当今世界,随着信息化的不断发展,在各个行业,如银行、金融、航天、电信、交通、医药等,数据量级都呈现快速增长的态势。如何高效地处理和分析这些日益庞大的数据,是当今信息化处理的一个难题。在这个背景下,Google在2004年提出了MapReduce的分布式计算模型和分布式文件系统Google File System。受此启发,Apache Software Foundation 公司于在2005年引入了Hadoop项目,最初它是作为 Lucene 的子项目 Nutch 的一部分被正式引入的。2006 年 3 月份,MapReduce 和 Nutch Distributed File System (NDFS) 分别被纳入称为 Hadoop 的项目中。

hadoop

Hadoop作为一个分布式系统基础架构,用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力高速运算和存储。

相关项目

HBase,类似Google BigTable的结构化存储系统,其运行在HDFS文件系统中。

Apache Pig,一个基于Hadoop的大规模数据分析平台,它提供的SQL-LIKE语言叫Pig Latin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。Pig为复杂的海量数据并行计算提供了一个简单的操作和编程接口。

Hive,基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。

ZooKeeper,是一个分布式应用程序调度服务系统,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。

Hama,一个基于BSP的分布式计算框架,适合大规模科学计算。

Mahout,使用Hadoop的一个伸缩性强的机器学习算法,旨在帮助开发人员更加方便快捷地创建智能应用程序。

工作原理

Hadoop是一个纯java实现的分布式计算平台,Hadoop有许多元素构成,它实现了自己的MapReduce:HadoopMapReduce,其最底部是 HDFS,它存储 Hadoop 集群中所有存储节点上的文件。HDFS有三个重要角色:NameNode、DataNode和Client。NameNode可以看作是分布式文件系统中的管理者,主要负责管理文件系统的命名空间、集群配置信息和存储块的复制等。DataNode是文件存储的基本单元,它将Block存储在本地文件系统中,保存了Block的Meta-data,同时周期性地将所有存在的Block信息发送给NameNode。Client就是需要获取分布式文件系统文件的应用程序。HDFS的上一层是 MapReduce 引擎,该引擎由 JobTrackers 和 TaskTrackers 组成。Hapdoop工作原理如下图所示:

hadoop架构

功能优点

1,强大的扩展能力。经过知名公司验证,其最大能达到了4000个节点的规模,对900个节点的排序效率很高,对于900个节点上的9TB的数据,排序时间仅为1.8小时左右。

2,低廉的使用成本。可以通过普通机器组成的服务器群来分发以及处理数据。这些服务器群总计可达数千个节点。

3 ,较高的执行效率。通过分发数据,hadoop可以在数据所在的节点上并行地处理它们,这使得处理非常的快速。

4,不俗的 可靠性。hadoop能自动地维护数据的多份复制,并且在任务失败后能自动地重新部署计算任务。

应用举例

作为搜索引擎的先驱之一, Yahoo目前有超过38000台服务器,超过4000个以上的服务器集群,数据总量达到了170PB,每日的数据增量在10TB以上。Yahoo的Hadoop应用包含有搜索、日志处理、用户建模、内容优化,垃圾邮件过滤器以及广告计算等。

如何利用Hadoop对海量数据进行优化处理是Yahoo正在致力于工作的主要内容。以网络分析为例,雅虎目前有超过100亿个网页,1PB的网页数据内容,2万亿条链接数据,每日面临这300TB的数据输出。在应用Hadoop前,实施这一过程Yahoo大概需要1个月的时间,但应用后仅需要1周时间就完成了这样的工作。从Yahoo的这个应用实例中,由此可窥Hadoop强大之一斑。

应用前景

Hadoop 的最常见用法之一是 Web 搜索。虽然它不是惟一的软件框架应用程序,但作为一个并行数据处理引擎,它的突出表现有目共睹。作为Apache开源组织的一个分布式计算开源框架,Hadoop已经在很多大型网站上都已经得到了应用,如亚马逊、Facebook和Yahoo等,相信随着更多企业的深入使用,它给整个分布式计算行业带来价值是不可估量的。
分享按钮