3.hadoop中的数据复制

HDFS可以保证集群中文件存储的可靠性。它把文件分解成一个由数据块构成的序列,每个数据块有多个副本,这种数据冗余对容错非常关键。当一个数据块损坏时,不会造成数据丢失。数据块的大小和复制因子对每个文件都是可配的。

一般情况下,HDFS中一个文件的所有数据块,除最后一个块外,都有同样的大小。

但是,HDFS支持变长的数据块,就是说一个文件有可能包含两种大小的数据块。当用户重新配置了文件的块大小,然后向该文件中追加数据,这时HDFS不会填充文件的最后一个块,而是用新的尺寸创建新块存储追加的数据,这种情况下文件中就会同时存在两种大小的块。

应用可以指定一个文件的副本数,即复制因子。可以在文件创建时指定复制因子,这个复制因子的配置以后是可以改变的。除了追加和清除操作外,HDFS中的文件在任何时候都是严格地一次写入。

NameNode做出的所有操作,都会考虑数据块的复制。它周期性地接收集群中每个DataNode发出的心跳和块报告。接收到心跳说明DataNode工作正常。块报告包含该DataNode节点上所有数据块的列表。

HDFS使用所谓的“机架感知”策略放置数据块副本。这是一个需要进行大量实验并不断调整的特性,也是HDFS与其他分布式文件系统的主要区别。机架感知的目的是要提升数据可靠性、可用性和网络带宽的利用率。

在此简单说一下可靠性与可用性的区别

可靠性是指系统可以无故障地持续运行,而可用性指的是系统在任何给定的时刻都能工作。
例如,如果系统每月崩溃1分钟,那么它的可用性是99.998%,但是它还是非常不可靠的。与之相反,如果一个系统从来不崩

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值