Hadoop学习--深入理解HDFS

本文介绍了HDFS的文件存储机制,包括分块、副本和namenode、datanode的角色。详细阐述了namenode如何存储元信息,以及SecondaryNamenode的作用。同时,解释了HDFS中的数据流,特别是文件读取过程中客户端如何获取分块信息并从datanode读取数据。
摘要由CSDN通过智能技术生成

1.概述

HDFS(Hadoop Distributed FileSystem)为Hadoop自带的一个分布式文件系统,其实它和许多其他的本地文件系统很相似,文件都是通过分级目录来进行管理,只不过HDFS中的文件是分布式存储的。特别是对于用户的使用来说,并没有太多差别,HDFS也是通过路径去获取系统中的文件,它的前缀为:hdfs://


2.HDFS中的文件存储

对于一个文件系统,我们首先需要知道的就是文件在HDFS中是如何进行存储的。

HDFS会将文件划分为多个分块,每个分块单独进行存储,通常每个分块存储在不同的节点上,默认一个块的大小为128M。分块的一个好处就是可以由多台机器去共同存储超大的文件。文件是分块存储的,那么在读取文件的时候HDFS也会准确的找到这些分块(通过namenode,后面会讲)并组合起来返回给客户端,而这些对于客户端来说都是透明的,客户端只需要给出一个路径,HDFS就可以找到指定文件。

为了提高HDFS的数据容错能力,HDFS还会将文件的每一个分块进行复制(默认为3个),并将其分散存储在相互独立的不同物理机上,这样可以确保发生故障后数据不会丢失,如果发现一个块不可用,系统会从其他机器上读取另一个副本。

下面是一个HDFS的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值