Hadoop是什么
Hadoop是一个用于运行应用程序在大型集群的廉价硬件设备上的框架。Hadoop为应用程序透明的提供了一组稳定/可靠的接口和数据运动。在Hadoop中实现了Google的MapReduce算法,它能够把应用程序分割成许多很小的工作单元,每个单元可以在任何集群节点上执行或重复执行。此外,Hadoop还提供一个分布式文件系统用来在各个计算节点上存储数据,并提供了对数据读写的高吞吐率。由于应用了map/reduce和分布式文件系统使得Hadoop框架具有高容错性,它会自动处理失败节点。已经在具有600个节点的集群测试过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平台。目前Hadoop受到Yahoo的支持,有Yahoo员工长期工作在项目上,而且Yahoo内部也准备使用Hadoop代替原来的基于FreeBSD的系统。
Hadoop实现了HDFS文件系统和MapRecue。目前版本是0.16。还不成熟,但是已经可以在2000个节点上运行。用户只要继承MapReduceBase,提供分别实现Map和Reduce的两个类,并注册Job即可自动分布式运行。
HDFS把节点分成两类:NameNode和DataNode。NameNode是唯一的,程序与之通信,然后从DataNode上存取文件。这些操作是透明的,与普通的文件系统API没有区别。
MapReduce则是JobTracker节点为主,分配工作以及负责和用户程序通信。
目前这个项目还在进行中,还没有到达1.0版本,和Google系统的差距也非常大,但是进步非常快,值得关注。
另外,这是云计算(Cloud Computing)的初级阶段的实现,是通向未来的桥梁。
项目主页:http://hadoop.apache.org
一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。
Shenzhen Universiade - Shenzhen 2011 Summer Universiade
分享到:
相关推荐
### Hadoop:分布式系统基础架构概览 #### Hadoop的核心概念与起源 Hadoop是由Apache基金会开发的一款分布式系统基础架构,旨在使用户无需深入了解分布式系统的底层复杂性即可开发分布式程序,充分利用集群的强大...
### Hadoop简介与核心特性 #### 一、大数据与Hadoop背景 自“大数据”这一概念诞生以来,它已经在过去十多年间经历了飞速的发展。众多机构和组织试图对其定义进行阐述,例如研究机构Gartner将其定义为需要采用新型...
1. Hadoop简介:Hadoop的核心理念是通过分布式文件系统(HDFS)和分布式计算框架(MapReduce)实现数据的分散存储和并行处理,以提高处理效率。Hadoop的诞生源于Google的GFS和MapReduce论文,旨在解决海量数据处理的...
【Hadoop 简介】 Hadoop 是一个开源的分布式计算框架,由Apache软件基金会维护,是当前大数据处理领域的重要工具。它最初受到Google在2004年提出的MapReduce和GFS(Google File System)的启发,由Doug Cutting和...
【标题】:“福建师范大学精品大数据导论课程系列 (5.2.1)--4.1.2 hadoop简介之二.rar” 提供的是一份关于Hadoop的深入介绍,特别是针对Hadoop的基础概念和核心组件的讲解。Hadoop是Apache软件基金会开发的一个开源...
### HADOOP简介 #### Hadoop组成概述 Hadoop是一个开源软件框架,旨在为大型数据集提供分布式存储和计算能力。Hadoop的核心组件包括Hadoop分布式文件系统(HDFS)和MapReduce编程模型。 - **Hadoop分布式文件系统...
大数据处理框架:Hadoop:大数据与Hadoop简介.docx
Hadoop简介 Hadoop 是一个由 Apache 软件基金会开发的开源大数据处理框架,主要用于存储和处理大规模数据。Hadoop 的核心组件包括 HDFS、MapReduce、HBase 和 ZooKeeper。 1. HDFS(Hadoop Distributed File ...
#### 一、Hadoop简介 **Hadoop** 是一个能够对大量数据进行分布式处理的软件框架,它最初由Nutch和Lucene之父Doug Cutting于2006年创建。有趣的是,“Hadoop”这个名字来源于Doug Cutting的儿子对他玩具大象的一种...
hadoop简介 ,ppt格式,简要的介绍,适合初学者
Apache Hadoop 是一个开源的分布式计算框架,专为处理和存储大规模数据集而设计。它由Apache软件基金会维护,是大数据处理领域中的核心组件。Hadoop 的主要特点是高容错性和可扩展性,使得它能够处理PB级别的数据。...
Hadoop是现阶段数据开发的基础,Hadoop通常是指一个更广泛的概念—-Hadoop生态圈(基于或关于Hadoop的大数据开发的各种软件环境) 是Apache公司使用Java语言编写的开源的,分布式系统的基础架构 分布式就是,当储存...
- **计算模型**:为解决非专业用户难以有效利用分布式计算资源的问题,云计算提供高度抽象的计算模型,其中Hadoop是一个典型代表。 ### Hadoop:大数据处理的开源框架 Hadoop是一种开放源代码的分布式计算框架,...
简要介绍了hadoop的发展历程、原理、特征以及基于hadoop的分布式系统的安装方法。
Hadoop-0.21.0分布式集群配置.doc
1. **Hadoop简介**:Hadoop是一个开源框架,主要用于处理和存储大量数据。它的核心组件包括Hadoop Distributed File System (HDFS)和MapReduce,这两个组件共同实现了分布式计算。 2. **Eclipse IDE**:Eclipse是一...