大数据原理与技术(四):分布式文件系统HDFS

本文详细介绍了Hadoop的分布式文件系统HDFS,包括分布式文件系统的基本概念、HDFS的核心概念如块、名称节点和数据节点,以及HDFS的体系结构、存储原理和容错机制。HDFS设计目标是兼容廉价硬件,支持大数据流式读写,但存在低延迟访问不足等问题。HDFS通过多副本策略确保数据可靠性,并采用第二名称节点减少名称节点的压力。
摘要由CSDN通过智能技术生成

大数据时代海量数据的存储对文件系统的存储容量、数据吞吐率提出了很高的要求。Hadoop分布式文件系统(Hadoop Distributed File System,HDFS)是Hadoop的核心组件,可以将数据分布式地存储在由通用X86服务器组成的计算机集群中。HDFS具有很好的容错能力,并且兼容廉价的硬件设备,因此可以以较低的成本利用现有的机器实现大数据量的读写。

一、分布式文件系统

传统文件系统构建于单台物理计算机上,随着数据的增加,对于超过单台物理计算机存储能力的大型数据集,需要将其划分为若干部分分别存储在网络中的不同计算机中。

1.分布式文件系统的概念与作用

与传统的本地文件系统相比,分布式文件系统(Distributed File System)是一种通过网络实现文件在多台主机上进行分布式存储的文件系统。分布式文件系统的设计一般采用“ 客户机/服务器”(Client/Server)模式,客户端以特定的通信协议通过网络与服务器建立连接,提出文件访问请求,客户端和服务器可以通过设置访问权来限制请求方对底层数据存储块的访问。

2.分布式文件系统的结构

分布式文件系统在物理结构上是由计算机集群中的多个节点构成的,这些节点分为两类:一类叫主节点也称为名称节点,另一类叫从节点也称为数据节点。名称节点负责文件和目录的创建删除和重命名等,同时管理着数据节点和文件块的映射关系,因此客户端只有访问名称节点才能找到请求的文件块所在的位置,进而到相应位置读取文件块。数据节点负责数据的存储和读取,在存储时,由名称节点分配存储位置,然后由客户端把数据直接写入相应数据节点;在读取时客户端从名称节点获得数据节点和文件块的映射关系,然后就可以到相应位置访问文件块。
在这里插入图片描述

3.分布式文件系统的设计需求

分布式文件系统的设计目标主要包括透明性、并发控制、可伸缩性、容错以及安全需要等。
在这里插入图片描述

二、HDFS的相关概念

1.HDFS简介

HDFS支持流数据读取和处理超大规模文件,并能够运行在廉价的普通机器组成的集群上。HDFS在设计之初就充分考虑了实际应用环境的特点,硬件出错在普通服务器集群中是一种常态而不是异常。HDFS要实现以下目标:

  • 兼容廉价的硬件设备
  • 流数据读写
  • 大数据集
  • 简单的文件类型
  • 强大的跨平台兼容性

HDFS在实现上述优良特性的同时,也使得自身具有一些应用局限性,主要包括以下几个方面:

  • 不适合低延迟数据访问
  • 无法高效存储大量小文件
  • 不支持用户写入及任意修改文件

2.块

在传统的文件系统中,为提高磁盘读写效率,一般以数据块为单位,而不是以字节为单位。HDFS中同样采用了块的概念,默认块的大小为128 MB (HDFS2.0及以上版本),数据块存储的是真实的数据。我们所熟悉的普通文件系统的块一般只有几千字节,可以看出,HDFS在块的设计上明显大于普通文件系统。HDFS这么做

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

昊In

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值