HDFS-- 副本放置策略

一、概述

         之前提到HDFS有很强的容错机制,它通过增加副本的形式,提高容错性。 某一个副本丢失以后,它可以自动恢复,一个文件块从最初的产生到最后的落盘,会经过存储类型策略的选择,在存储类型选择策略中 HDFS 会帮我们先筛选 批符合存储类型要求的存储位置列表 ,通过这些候选列表,我们还需要做进一步的筛选,HDFS 的副本放置策略主要做的事情在于副本的最终存放,位置放得好了,能提高读写性能,否则反而会起到负面的效果 之前文章提到的三副本备份策略就是其中一个副本放置策略 

二、副本放置策略概念与方法

首先要先介绍什么是副本放置策略,有些文章中也会叫它副本选择策略,这源于此策略的名称: BlockPlacementPolicy 这个策略类重在副本放置 block placement ),目前在 DFS 中现有的副本放置策略类有两大继承子类,分别为 BlockPlacementPolicy-Default和BlockPlacementPolicy WithNodeGroup 我们平常提到的 副本策略用的是 BlockPlacementPolicy Default 策略 。三副本如何存放在这个策略类中得到了完美的实现BlockPlacementPolicyDefault 类中 的注释详细地解释了三个副本的存放位置

放置流程:

(1) 如果写请求方所在机器是其中 DataNo 巾,则直接存放在本地,否则随机在集群
中选择 DataNode
(2)第 2 个副本存放于不同于第 1 个副本所在的机架
(3)第 3 个副本存放于第2个副本所在的机架,但 是属于不同的节点
橙色区域表示的是写请求者,绿色区域表示一个副本 从这里可以看出, HDFS 在容错性上还是做了很多用心的设计的

三、那么HDFS在读取时如何选择副本呢?

为了最大的减少带宽和延迟,HDFS 读取文件采用就近原则,如果与客户端在同一机架上的 DataNode 上存有副本,则直接读取该副本。如果 HDFS 是跨数据中心的,则优先选择同一数据中心的副本。关于大数据入门,HDFS数据副本存放策略,以上就为大家做了简单的介绍了。HDFS的副本策略,很大程度上来说,保证了其存储的高可靠性,也为后续的数据处理环节,提供更加稳固的支持 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值