最近一有时间就在补数据结构和学Hadoop上的知识,今天看了一下Hadoop中的HDFS(分布式文件系统)中是怎么将文件写入HDFS中的,在将文件写入HDFS的时候有一件事情也在发生,就是文件复本的写入,这就又要牵扯到一个东西,就是文件复本的布局,今天就来谈谈文件的复本在datanode上是怎么个布局法。
首先来说说文件复本是什么,其实从字面上也就知道了,其实他就是我们写入文件一模一样的东西,就是把文件复制了几份,在Hadoop中一般情况下复制数量是3份(这3个复本的datanode分布好后会构成一个管线)。为什么要复制了?就是为了防止数据丢失,当 一个datanode上的数据丢失或者损坏后,其他的节点上还有复本,就是为了这样才有了复本的出现。
我们知道,namenode是领导,它负责统筹规划,因此数据块和 它们的复本分配到哪个datanode上也要听从他的指挥。它也不是随便乱分配的,它需要在”可靠性“,”写入宽带 “和”读取宽带“之间来权衡好。如果把所有的复本都写在一个datanode上的话,它的”写入宽带“最小,这个想也想得出,它不用把数据传出去嘛,它的复制管线都是在单一的节点上运行,但是这样如果该节点发生了故障,块中的数据就会丢失,也就是它不提供真实的”冗余“, 还有虽然它的”写入宽带很小“但是在同一机架上”读取宽带“很高,另一方面,把他们放在不同的数据中心,那样可以最大限度的提高冗余,但是宽带的损耗非常大。
hadoop的默认布局策略是在运行客户端的节点上放第1个复本(如果客户端运行在集群之外,就随机的选择一个节点,但是系统会避免挑选那些存储太满或太忙的节点)。第2个复本放在与第1个不同且是随机选择的另外的机架中的节点上。第3个复本与第2个复本放在同一个机架上面,且是随机选择的一个节点,其他的复本放在集群中随机选择的节点上面,但是系统会尽量避免在相同的机架上面放太多的复本。
一旦选定了复本的放置的位置,就会根据网络拓扑创建一个管线,如下图为一个典型的复本管线:
总的来说,这一方法不仅提供了很好的稳定性,数据不容易丢失(数据块存储在两个机架中)同时实现了很好的负载均衡,包括写入宽带(写入操作只要遍历一个交换机),读取性能(可以从两个机架中进行选择读取)和集群中块的均匀分布(客户端只在本地机架写入一个块)。
PS:以上的内容参考自《Hadoop 权威指南》。
相关推荐
Hadoop分布式文件系统的模型分析,Hadoop 分布式文件系统是遵循Google 文件系统原理进行开发和实现的,受到了业界极大关注,并 已被广泛应用。 鉴于当前缺乏从系统设计理论的角度对其开展的相关研究,本文从 Hadoop ...
(1)局域网的Hadoop分布式文件系统对象图: 本机 socket big file small files (2)界面运行情况: 1·点击file进行文件选择, 选择需要上传的文件, 如下 2·点击upload, 将所选择的文件上传, 上传...
hadoop的默认配置文件,下载记得关注我哦
在Hadoop的分布式文件系统下,对文件的读写和列出文件的相关属性和目录中的内容
基于django的hadoop文件管理系统-期末实训项目,仿百度网盘。主要是通过python的第三方库pyhdfs进行对hadoop文件系统的增删改查操作。
Hadoop分布式文件系统翻译
Hadoop分布式文件系统使用指南Hadoop分布式文件系统使用指南Hadoop分布式文件系统使用指南Hadoop分布式文件系统使用指南Hadoop分布式文件系统使用指南Hadoop分布式文件系统使用指南Hadoop分布式文件系统使用指南...
第三章 分布式文件系统HDFS3 Hadoop存储系统HDFS的文件是分块存储,每个文件块默认大小为32MB。 T F 评测结果:答案正确(5 分) 1-2 HDFS系统采用NameNode定期向DataNode发送心跳消息,用于检测系统是否正常运行...
通过工具类脚本执行从ftp下载文件上传到Hadoop分布式文件系统
Hadoop分布式文件系统使用指南.pdf
基于Hadoop的文件存储系统是一个私有的专用网盘系统,具有强大和简单易用的文件管理、协同办公、部门或虚拟团队级文件共享等丰富功能。与免费的个人网盘相比,具有更强的团队协同功能,在组织架构、共享权限上能适应...
西电版的Hadoop文件系统源代码,是鲍亮教授的,很有用的啊
Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错...
基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题报告.pdf基于Hadoop的在线文件管理系统-开题...
完整的Hadoop分布式文件系统架构,以及源码分析报告
Hadoop可以配置为使用BeeGFS作为其分布式文件系统,作为比使用HDFS更方便,更快捷的替 代方案。本页介绍了如何实现和测试此类配置。
第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件...