HDFS原理与应用| 青训营笔记

67 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第16天

概述

  • HDFS架构原理
  • HDFS关键设计
  • HDFS应用场景

基本概念

在Hadoop中,HDFS是存储层,YARN是调度层,MapReduce是应用层 HDFS是Hadoop分布式文件系统(Hadoop Distributed File System) 分布式文件系统有大容量、高可靠和低成本的特点。其中Client端通过协议访问层与Server端通讯 分布式存储系统有对象存储、文件存储、块存储和数据库

文件系统:单机文件系统非常普遍,从Windows NTFS到Linux的Ext4等,分布式文件系统是单机文件的延伸,概念术语是相通的,比如目录、文件、目录树等。

  • 单机文件系统:常见的如Windows NTFS,Linux的Ext4,虽然不同的操作系统和实现,但是本质都是一样的,解决相同的问题。
  • 分布式文件系统:本质上扩展、延伸了单机文件系统,提供了大容量、高可靠、低成本等功能特性;实现上一般也更为复杂。

分布式存储系统,了解分布式存储系统的分类,理解不同存储系统的使用场景。直观的区别是用户使用方式,本质是针对不同的使用场景提供高效合理的系统。

  • 对象存储:例如AWS的S3,阿里云的OSS,开源的Minio。
  • 块存储:例如AWS的EBS,开源社区也有Ceph等。
  • 文件系统:HDFS、GlusterFS、CubeFS等
  • 数据库:KV数据库比如Cassandra,关系型数据库如TiDB、OceanBase等

HDFS 的架构

  • HDFS 的主要服务端主要组件是 NameNode 和 DataNode,两者通过定时心跳通信。
  • NameNode(NN)负责维护目录树、文件和块的关系、各个块的副本放置位置等元信息。
  • DataNode(DN)负责维护数据副本,执行 NameNode 下发的副本迁移、副本删除等操作。
  • HDFS Client 属于是胖客户端(fat/rich client),客户端中实现了数据读写的容错等较为复杂的逻辑。


参考链接:juejin.cn/post/712494… 来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。