Loading

Hadoop简介(一)

Hadoop组成

Hadoop有两个主要部分:

数据处理框架(MapReduce)

分布式数据存储文件系统(HDFS)

特点

适合的场景:

1. 大文件存储(TB,甚至PB)

2. 一次写,多次读(写入的数据无法进行更改,只在文件尾部添加数据)

3. 硬件要求低(适合多台廉价服务器搭建)

不适合的场景:

1. 低延时数据访问

2. 太多的小文件

3. 多次改写

原理

1. 一个大文件被划分成多个大小固定的文件块,分布的存储在集群的节点中(便于横向扩展容量)

2. 同一个文件块在不同的节点中有多个副本(防止某个节点文件错误、丢失;加速计算)

3. 有一个集中的地方保存文件的分块信息

HDFS

HDFS(Hadoop Distributed File System),即Hadoop分布式文件系统。

在HDFS中,namenode是总节点,用于保存文件的分块信息,负责管理多个datanode。namenode有两个:active-namenode和standby-namenode,这两个节点以主从方式工作,当active-namenode出现问题时,standby-namenode会替代active-namenode。

HDFS架构图:

从上图中我们可以看出,client要访问HDFS中的文件,首先需要向namenode询问文件的分块信息,然后再到具体的datanode中去访问。

一些概念

Block:一个文件分块,默认为64M

Namenode:保存整个文件系统的目录信息,文件信息以及文件响应的分块信息。

Datanode:用于存储Blocks

HDFS的HA策略:NameNode一旦宕机,整个文件系统将无法工作。如果NameNode中的数据丢失,整个HDFS中的文件都丢失。2.x开始,HDFS支持NameNode的active-standby模式。

MapReduce

1.原理,以求和为例:

 

posted @ 2016-12-24 15:57  北岛知寒  阅读(399)  评论(0)    收藏  举报