Hadoop基本架构之HDFS和MapReduce(上)

原创 2015年11月18日 22:43:10

可自由转载,转载请在文章开头处注明来源。格式: 用户名 + 文章链接。本篇文章为:TiuVe2 + http://blog.csdn.net/tiu_velenjdong/article/details/49914321

请支持原创,谢谢~


摘自《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》

Hadoop是一个由Apache基金会所支持的分布式基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群进行高速运算和存储。

Hadoop由两部分组成,分别是分布式文件系统和分布式计算框架MapReduce。其中,分布式文件系统主要用于大规模数据的分布式存储,而MapReduce则构建在分布式文件系统之上,对存储在分布式文件系统中的数据进行分布式计算。

在Hadoop中,MapReduce底层的分布式文件系统是独立模块,用户可按照约定的一套接口实现自己的分布式文件系统,然后经过简单配置后,存储在该文件系统上的数据便可以被MapReduce处理。Hadoop默认使用的文件系统是HDFS(Hadoop Distributed File System)。

一. HDFS架构

    HDFS是一个具有高容错性的分布式文件系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。

    HDFS总体上采用了master/slave(主从)架构,主要由以下几个部件组成:Client、NameNode、Secondary NameNode和DataNode。其架构如下图所示:

      


各部分组件功能如下:

        (1)Client

                  Client通过与NameNode和DataNode交互从而访问HDFS中的文件。Client提供了类似POSIX的文件系统接口供用户使用。

         (2)NameNode

                  整个Hadoop集群中只有一个NameNode。它是整个系统的总管,负责HDFS的目录树和相关的文件元数据信息。这些信息以“fsimage”(HDFS元数据镜像文件)和“editlog”(HDFS文件改动日志)两个文件形式存储在本地磁盘,当HDFS重启时重新构造出来的。此外,NameNode还负责监控各个DataNode的健康状态,一旦发现有DataNode宕掉,则将该DataNode移出HDFS并重新备份其上面的数据。

         (3)Secondary NameNode

                 Secondary NameNode最重要的任务不是为NameNode元数据进行热备份,而是定期合并fismage和edits日志,并传输给NameNode。为了减小NameNode压力,NameNode自己不会合并fismage和edits,并将文件存储到磁盘上,而是由Secondary NameNode完成。

         (4)DataNode

                 一般而言,每个Slave节点上安装一个DataNode,它负责实际的数据传输,并将数据信息定期汇报给NameNode。DataNode以固定大小的block为基本单位组织文件内容,默认情况下block大小为64MB。当用户上传一个较大的文件到HDFS上时,该文件会被切分成若干个block,分别存储到不同的DataNode;同时,为了保证数据可靠,会将同一个block以流水线方式写到若干个(默认是3,该参数可配置)不同的DataNode上,这种文件切割后存储的过程是对用户透明的。


版权声明:本文为博主原创文章。可自由转载文章,但请务必在文章开头注明出处。格式:TiuVe2 + 文章链接。谢谢!

使用Hadoop的MapReduce与HDFS处理数据

hadoop是一个分布式的基础架构,利用分布式实现高效的计算与储存,最核心的设计在于HDFS与MapReduce,HDFS提供了大量数据的存储,mapReduce提供了大量数据计算的实现,通过Java...
  • tpkey
  • tpkey
  • 2014年11月19日 16:16
  • 2744

MapReduce 和 HDFS的一些介绍

 MapReduce 和 HDFS介绍--------------------------------Overview* 为什么要用Mapreduce?* 什么是Mapreduce?* Hadoop的...

Hadoop,MapReduce,HDFS面试题

今天发这个的目的是为了给自己扫开迷茫,告诉自己该进阶了,以下内容不一定官方和正确,完全个人理解,欢迎大家留言讨论 1.什么是hadoop答:是google的核心算法MapReduce的一个开源实现。用...

HDFS和MapReduce核心思想

初学hadoop,这里整理了一下其核心思想HDFS,MapReduce的主要流程,我觉得,只有对其数据流及任务执行熟悉之后,才能对整个框架的运行有进一步的了解。...

HDFS、YARN和MapReduce简介

Hadoop Hadoop是一个Apache旗下的分布式系统基础架构。 Hadoop1由HDFS和MapReduce构成;Hadoop2框架核心设计有HDFS、MapReduce、YARN。 H...
  • xraw999
  • xraw999
  • 2016年11月27日 19:19
  • 647

Hadoop中HDFS和MapReduce的概念和机制

0     搭建平台时的思考 1 在启动CentOS时候,DHCP识别不到网络ip,可以将虚拟机可移动设备将网卡选择先不连接,进入OS后,再打开。  http://blog.csdn.net/ol...

hbase 上传下载文件

hbase 是高读的,虽然写的速度不很乐观,但是有时候也需要往里面存一些文件。(一般建议存放在hdfs上),这里讲一下怎么把文件存储到hbase上 首先大家都知道的,hbase 只支持 byte 的存...

利用Hbase解决HDFS小文件合并

自己开发心得,希望能够帮助大家! 相关源码: http://download.csdn.net/download/zhtzh312/9259615...

(hadoop HDFS 和 Mapreduce 架构浅析

  • 2013年03月22日 15:22
  • 668KB
  • 下载

大数据Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

纯干货:Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解。       通过这一阶段的调研总结,从内部机理的角度详细分析,HDFS、MapReduce、Hbase、H...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hadoop基本架构之HDFS和MapReduce(上)
举报原因:
原因补充:

(最多只允许输入30个字)