Hadoop之浅析HDFS

HDFS全称是Hadoop Distribute File System,它是源于Google的GFS思想演变而来,官网是这样介绍的:


image.png

总结一下就是以下两点:
1.HDFS有很高的容错率,并且能够运行在低价或者配置低的硬件之上。
2.HDFS提供了高吞吐量的访问,很适合一些大规模数据上的应用。
在其官网有一张以下图片:

hdfsarchitecture.png

上述图片就是文件的读写流程,在介绍读写流程之前,我先介绍一下上述出现的几个名词。
1.NameNode:它是HDFS上一个主要服务,通俗的称为HDFS中的老大,主要管理文件系统的命名空间以及客户端读写文件的操作规则。官网介绍每个HDFS只有一个Namenode,但是现在可以实现多个。
2.Rack:机架,每个机架上面会有多个Datanode。
3.Datanode:它是集群中的每个节点,换句话说,它就是用来存储文件的。
4.Block:块。通常情况下,一个文件会被分成很多个块,这些块有可能存储在不同的Datanode中。它主要执行文件系统命名空间的操作,如打开、关闭以及重命名文件等等。
5.Metadata:上面说Namenode是负责客户端文件的操作规则,其实他是间接完成的,而直接完成的是Metadata,Metadata就是Namenode的小弟。

文件写的流程:
1.客户端先打开文件分布式文件操作系统,并且告诉Namenode要操作哪些文件。
2.Namenode通过Metadata查询可用的块,并返回一个元素为Datanode的数组。
3.客户端打开文件输出流,向Namenode返回的Datanode中写入数据,在写的同时,默认会同时再多写两个副本,为了提高容错率。
4.写完之后会向客户端返回一个ack标记,用来判断写入成功还是失败。
5.关闭输入输出流。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前言 本篇文章翻译了Hadoop系列下的HDFS Architecture,原文最初经过笔者翻译后大概有600...
    time刺痛你的眼阅读 4,545评论 0 4
  • hdfs是什么? 问题: 1. hdfs是基于什么样的原理将文件分块存储到分布式环境中的各个设备上的? 2. h...
    4762d2980c91阅读 10,211评论 0 6
  • 认识HDFS HDFS的特点: 高容错性高吞吐量故障的检测和自动快速恢复流式的数据访问大数据集一次写入,多次读写 ...
    Bloo_m阅读 8,540评论 6 8
  • 昨天又没有记日记,因为大晚上去吃了超辣超爽的麻辣串,确实不卫生,确实也好吃。好吧,这还是借口。坚持一件事情确实不容...
    可爱的小小宏阅读 1,630评论 0 0
  • 我的第一次… 我的第一次很多,我只记得提起笔写这篇文章的时候,这是我的第一次随笔!说实话写到这里我都没想好写...
    知道你会来所以我等你阅读 3,411评论 7 17

友情链接更多精彩内容