Linux Hadoop运行应用程序开源实现
创始人
2024-06-24 00:01:15
0

Linux Hadoop还是比较常用的,于是我研究了一下Linux Hadoop,在这里拿出来和大家分享一下,希望对大家有用。Linux Hadoop是什么.

Linux Hadoop是一个用于运行应用程序在大型集群的廉价硬件设备上的框架。Linux Hadoop为应用程序透明的提供了一组稳定/可靠的接口和数据运动。在Linux Hadoop中实现了Google的MapReduce算法,它能够把应用程序分割成许多很小的工作单元,每个单元可以在任何集群节点上执行或重复执行。

此外,Linux Hadoop还提供一个分布式文件系统用来在各个计算节点上存储数据,并提供了对数据读写的高吞吐率。由于应用了map/reduce和分布式文件系统使得Linux Hadoop框架具有高容错性,它会自动处理失败节点。已经在具有600个节点的集群测试过Linux Hadoop框架。

Google的数据中心使用廉价的Linux PC机组成集群,在上面运行各种应用。即使是分布式开发的新手也可以迅速使用Google的基础设施。核心组件是3个:

1、GFS(Google File System)。

一个分布式文件系统,隐藏下层负载均衡,冗余复制等细节,对上层程序提供一个统一的文件系统API接口。Google根据自己的需求对它进行了特别优化,包括:超大文件的访问,读操作比例远超过写操作,PC机极易发生故障造成节点失效等。

GFS把文件分成64MB的块,分布在集群的机器上,使用Linux的文件系统存放。同时每块文件至少有3份以上的冗余。中心是一个Master节点,根据文件索引,找寻文件块。详见Google的工程师发布的GFS论文。

2、MapReduce。

Google发现大多数分布式运算可以抽象为MapReduce操作。Map是把输入Input分解成中间的Key/Value对,Reduce把Key/Value合成最终输出Output。这两个函数由程序员提供给系统,下层设施把Map和Reduce操作分布在集群上运行,并把结果存储在GFS上。

3、BigTable。

一个大型的分布式数据库,这个数据库不是关系式的数据库。像它的名字一样,就是一个巨大的表格,用来存储结构化的数据。

开源实现

这个分布式框架很有创造性,而且有极大的扩展性,使得Google在系统吞吐量上有很大的竞争力。因此Apache基金会用Java实现了一个开源版本,支持Fedora等Linux平台。目前Linux Hadoop受到Yahoo的支持,有Yahoo员工长期工作在项目上,而且Yahoo内部也准备使用Linux Hadoop代替原来的基于FreeBSD的系统。

Linux Hadoop实现了HDFS文件系统和MapRecue。目前版本是0.16。还不成熟,但是已经可以在2000个节点上运行。用户只要继承MapReduceBase,提供分别实现Map和Reduce的两个类,并注册Job即可自动分布式运行。

HDFS把节点分成两类:NameNode和DataNode。NameNode是***的,程序与之通信,然后从DataNode上存取文件。这些操作是透明的,与普通的文件系统API没有区别。MapReduce则是JobTracker节点为主,分配工作以及负责和用户程序通信。

目前这个项目还在进行中,还没有到达1.0版本,和Google系统的差距也非常大,但是进步非常快,值得关注。另外,这是云计算(Cloud Computing)的初级阶段的实现,是通向未来的桥梁。

项目主页:http://Linux Hadoop.apache.org一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。

Shenzhen Universiade - Shenzhen 2011 Summer Universiade

【编辑推荐】

  1. Linux Mono项目的Beta3版已经发布学习到更多的RPM在here
  2. Linux CVS确认系统中是否安装xinetd
  3. Linux配置文件与用户管理相关系统文件
  4. Linux文件类型全解析
  5. Linux交换分区简介与实验场景及过程

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...