HDFS |Hadoop Distributed File System|分布式文件存储

常规

HDFS 全名 Hadoop Distributed File System,是业界使用最广泛的开源分布式文件系统。它有一定高度的容错性,而且提供了高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS 提供了一个高度容错性和高吞吐量的海量数据存储解决方案。
notion image

名词解释

参数名词
解释说明
NameNode
是整个文件系统的管理节点: • 它维护着整个文件系统的文件目录树,文件/目录的元信息和每个文件对应的数据块列表。 • 它用来接收用户的操作请求,比如文件的打开、关闭、重命名文件或者目录。 • 它负责确定文件到 block 的映射,以及 block 到具体 DataNode 的映射。
SecondaryNameNode
Hdfs HA 的一个解决方案,但不支持热备。 Hadoop 会维护一个 fsimage 文件,也就是 namenode 中 metedata 的镜像,但是 fsimage 不会随时与 namenode 内存中的 metedata 保持一致,而是每隔一段时间通过合并 edits 文件来更新内容。 Secondary namenode 就是用来合并 fsimage 和 edits 文件来更新 NameNode 的 metedata。
Client
客户端代表用户通过与 NameNode 和 DataNode 交互来访问整个文件系统,HDFS 对外开放文件命名空间并允许用户数据以文件形式存储。用户通过客户端(Client)与 HDFS 进行通讯交互。
DataNode
DataNode 是 HDFS 的实际数据存储节点,负责管理它所在节点的存储,客户端的读写请求。定期上报心跳 (Heartbeat) 和块的存储位置信息 (Blockreport) 。DataNode 在 NameNode 的指令下进行数据块的创建、删除、复制。
Block
HDFS 上一个大文件如果大于配置的 blocksize(默认是128MB),会被分成多个数据块 (block) 存储,这些数据块会分散存储在不同的 DataNode 上。
EditLog
在 HDFS 发起的创建、删除等操作其实是一个事务,NameNode 会使用事务日志 (EditLog) 来记录文件系统元数据的每一个变化。EditLog 持久化在 NameNode 的本地磁盘上。
FsImage
FsImage 是 NameNode 的元数据存储快照,持久化在 NameNode 的本地磁盘上。

基于对象存储|OSS TOS

基本云厂商有对象存储都会支持对象存储作为 HDFS 底层存储
notion image
通过OSS-HDFS服务,无需对现有的Hadoop、Spark大数据分析应用做任何修改。通过简单的配置即可像在原生HDFS中那样管理和访问数据,同时获得OSS无限容量、弹性扩展、更高的安全性、可靠性和可用性支撑。
作为云原生数据湖基础,OSS-HDFS在满足EB级数据分析、亿级文件管理服务、TB级吞吐量的同时,全面融合大数据存储生态,除提供对象存储扁平命名空间之外,还提供了分层命名空间服务。分层命名空间支持将对象组织到一个目录层次结构中进行管理,并能通过统一元数据管理能力进行内部自动转换。对Hadoop用户而言,无需做数据复制或转换就可以实现像访问本地HDFS一样高效的数据访问,极大提升整体作业性能,降低了维护成本。
Loading...
目录
文章列表
王小扬博客
产品
Think
Git
软件开发
计算机网络
CI
DB
设计
缓存
Docker
Node
操作系统
Java
大前端
Nestjs
其他
PHP