Hadoop -HDFS

全称:分布式文件系统

‘’

Block数据块:

基本存储单元,一般大小为64M(配置大的主要是因为:1) 减少搜寻时间,一般硬盘传输速率比寻道时间要快,大的块可以减少寻道时间;2)减少管理块的数据开销,每个块都需要在NameNode 上有对用的记录;3) 对数据块进行读写,减少建立网络的连接成本。

2. 一个大文件会被拆分成一个个的块,然后存储于不同的机器,如果一个文件少于Block 大小,那么实际占用的空间为其文件的大小。

3. 基本的读写单位,类似于磁盘的页,每次都是读写一个块。

4. 每个块都会被复制到多台机器,默认复制3份。

NameNode:

1. 存储文件的metadata,运行时所有数据都保存到内存, 整个HDFS 可存储的文件数受限于NameNode 的内存大小。

2. 一个Block 在NameNode 中对用的一条记录(一般一个Block 占用150字节),如果是大量的小文件,会消耗大量内存,同时map task 的数量是由splits 来决定的,所以用MapReduce 处理大量的小文件时,就会产生过多的map task, 线程管理开销将会增加作业时间,处理大量小文件的速度远远小于处理同等大小的大文件的速度,因此Hadoop 建议存储大文件。

3 数据会定时保存在本地磁盘,但不保存block的位置信息。

4.NameNode 失效则整个HDFS 都失效了,所以要保证NameNode的可用性。

Secondary NameNode:

1. 定时与NameNode 进行同步(定期合并文件系统镜像和编辑日记,然后把合并后的传给NameNode,替换其镜像,并清空编辑日记,类似于CheckPoint机制,但NameNode 失效后仍需要手工将其设置成主机。

DataNode:

1. 保存具体的block 数据。

2.负责数据的读写操作和复制操作。

3.DataNode 启动时会向NameNode 报告当前存储的数据块信息,后续也会定时报告修改信息。

4.DataNode 之间会进行通信,复制数据块,保证数据的冗余性。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值