admin 管理员组

文章数量: 1087139


2024年4月24日发(作者:导航栏logo代码)

HDFS(Hadoop Distributed File System)是Hadoop项目的核心子项

目,是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文

件的需求而开发的,可以运行于廉价的商用服务器上。它所具有的高容错、高可

靠性、高可扩展性、高获得性、高吞吐率等特征为海量数据提供了不怕故障的存

储,为超大数据集(Large Data Set)的应用处理带来了很多便利。

Hadoop整合了众多文件系统,在其中有一个综合性的文件系统抽象,它提

供了文件系统实现的各类接口,HDFS只是这个抽象文件系统的一个实例。提供

了一个高层的文件系统抽象类stem,这个抽象

类展示了一个分布式文件系统,并有几个具体实现,如下表1-1所示。

表1-1 Hadoop的文件系统

URI方

Java实现

()

文件系统

定义

支持有客户端校验和本地文

件系统。带有校验和的本地系

Local

file

ileSystem

现。

文件在

alFileSystem中实

HDFS

hdfs

butionFileSystem

Hadoop的分布式文件系统。

支持通过HTTP方式以只读

HFTP

hftp

leSystem

的方式访问HDFS,distcp经常

用在不同的HDFS集群间复制

数据。

HSFTP

hsftp

ileSystem

支持通过HTTPS方式以只读

的方式访问HDFS。

构建在Hadoop文件系统之上,

HAR

har

eSystem

对文件进行归档。Hadoop归档

文件主要用来减少NameNode

的内存使用。

KFS

kfs

FileSystem

Cloudstore(其前身是Kosmos

文件系统)文件系统是类似于

HDFS和Google的GFS文件

系统,使用C++编写。

FTP

ftp

eSystem

由FTP服务器支持的文件系

统。

S3(本地)

s3n

S3FileSystem

基于Amazon S3的文件系统。

S3(基于

块)

基于Amazon S3的文件系统,

s3

S3FileSystem

以块格式存储解决了S3的

5GB文件大小的限制。

Hadoop提供了许多文件系统的接口,用户可以使用URI方案选取合适的

文件系统来实现交互。

2.

2.1数据块

HDFS(Hadoop Distributed File System)默认的最基本的存储单位是64M的

数据块。

和普通文件系统相同的是,HDFS中的文件是被分成64M一块的数据块存储的。

不同于普通文件系统的是,HDFS中,如果一个文件小于一个数据块的大小,并

不占用整个数据块存储空间。

2.2namenode 和datanode

HDFS体系结构中有两类节点,一类是NameNode,又叫"元数据节点";另

一类是DataNode,又叫"数据节点"。这两类节点分别承担Master和Worker

具体任务的执行节点。

1)元数据节点用来管理文件系统的命名空间

其将所有的文件和文件夹的元数据保存在一个文件系统树中。

这些信息也会在硬盘上保存成以下文件:命名空间镜像(namespace image)

及修改日志(edit log)

其还保存了一个文件包括哪些数据块,分布在哪些数据节点上。然而这些信息并

不存储在硬盘上,而是在系统启动的时候从数据节点收集而成的。

2)数据节点是文件系统中真正存储数据的地方。


本文标签: 数据 文件 节点 使用 导航