什么是分布式文件系统?

百度百科:

分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点(可简单的理解为一台计算机)相连。分布式文件系统的设计基于客户机/服务器模式。一个典型的网络可能包括多个供多用户访问的服务器。另外,对等特性允许一些系统扮演客户机和服务器的双重角色。

意思就是,原本存在本地的资源现在通过计算机网络可以存在其他的计算机上。也不用管这文件到底被存在哪个节点了,反正当你需要它的时候,它就在那里。

主流分布式文件系统:① GFS: Google File System for Google's MapReduce;

② HDFS: Hadoop Distributed File System for Hadoop;

那分布式文件系统是咋工作的呢?

技术一:DFS复制

  • 文件数据依据 二进制 被拆分进 计算机网络 中的 blocks
  • block size是固定的,通常为128M;且,存满一个block 1 (128M),才会存下一个block 2 (128M),以此类推
  • 每一个block是重复存在(通常重复3次)于计算机网络中的不同计算机(DataNode),以支持容错

举个栗子:假设,计算机网络里有3个节点。一个200M的文件,会先被拆分进block 1(128M), block 2(72M)。然后每个block被复制3遍,我们得到6个blocks: block 1-1,block 1-2,block 1-3,block 2-1,block 2-2,block 2-3。接下来这6个blocks会被放进3个节点中,比如节点1分到 block 1-1,block 2-2;节点2分到block 1-3,block 2-1;节点3分到block 1-2,block 2-3。这种情况下,如果节点1的block 1-1出现failure, 用户还是可以访问到block 1-3和block 1-2。

技术二:DFS命名空间

通过上文我们知道了,一个文件通过DFS复制技术会拆分进多个且有重复性的blocks。但是咱本意只是想访问这个文件,如果还得要关心哪个block在哪个节点,怎么分的,那可就太累了。所以,为了跳过这些不重要的细节,只呈现出统一的集中的一个文件视图给用户,命名空间由此而生。

那命名空间是怎么工作的呢? ----->  将文件有逻辑的存储于文件系统树的不同层级中

DFS命名空间的管理者是NameNode,维护着文件系统树及整棵树内所有的文件和目录。

又出现新概念了,NameNode又是什么?

以HDFS为例,HDFS集群包含两类节点:NameNode(管理者头头) 和 DataNode(工作者)。管理者只能有一个,但是工作者可以有好多个。NameNode主要负责就是负责管理HDFS,比如上文提到的命名空间,还有管理block。而DataNode主要就是一个听NameNode命令来存储文件的‘工具Node’,在一个文件被分割成多个block之后,就会被存储在这些‘工具Node’上。

就是,当用户来读文件啦,然后这个文件被分割成blocks啦,然后被DataNode们存储啦,然后NameNode跟客户端说 “诺,这个block在这个DataNode,那个block在那个DataNode”,然后客户端就去找这些DataNode啦,然后文件就被读取啦。

如果,当用户来写入文件啦,然后客户端来找NameNode说要写文件啦,然后NameNode就在命名空间里创建新文件啦,然后拿着顺序单跟客户端说 “诺,这个block要写进这个DataNode,那个block要写进那个DataNode",然后客户端就去找第一个DataNode啦,然后DataNode们就按顺序一个一个写入啦,然后一个传一个最后告诉客户端“我写好啦”,所以文件就被写好啦。

这一整套的工作流程下来,NameNode看起来是特别重要的样子,所以让我们来围观一下管理者是咋工作的。

NameNode主要包含两类文件:

1. fsImage (filesystem image):把文件和目录的元数据信息持久化地存储到fsimage文件中,每次启动时从中将元数据加载到内存中构建目录结构树,之后的操作记录在edits log中

2.edits (edit log) :记录每次变化

通过调用FSImage和FSEditLog,可以从NameNode本地磁盘读取元数据信息和向本地磁盘写入元数据信息

这NameNode这么重要,那它要是凉了...岂不是gg...

备胎节点上线:Secondary NameNode

备胎必备品质:① 定时关心:定时对NameNode进行备份;② 崩溃时的依靠:NameNode崩溃后,将之前获得fsimage和edits重新合并之后发给NameNode

备胎不可少啊!!!

早上好啊。(๑•̀ㅂ•́)و✧ | Good Good Study | Day Day No Hair |

与大家共勉!

分布式文件系统之DFS复制、命名空间和NameNode相关推荐

  1. 部署分布式文件系统(DFS)

    部署分布式文件系统(DFS) 使用 DFS 命名空间,可以将位于不同服务器上的共享文件夹组合到一个或多个逻辑结构的命名空间.每个命名空间作为具有一系列子文件夹的单个共享文件夹显示给用户.但是,命名空间 ...

  2. Windows Server 2012 R2 分布式文件系统(DFS)-深博-专题视频课程

    Windows Server 2012 R2 分布式文件系统(DFS)-122人已学习 课程介绍         本套课程共15课时,分布式文件系统(Distributed File System,D ...

  3. 分布式文件系统虚拟目录及命名空间的实现方法

    分布式文件系统虚拟目录及命名空间的实现方法 http://www.doc88.com/p-717876372220.html 可以读一下,讲得还算清楚 转载于:https://www.cnblogs. ...

  4. 07-Hadoop HDFS之分布式文件系统、NameNode、DataNode和SecondaryNameNode的基础概念

    五.Hadoop-HDFS 5.1 Hadoop的历史 5.1.1Hadoop的进化史 Nutch Hadoop最早起源于Nutch. Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取. ...

  5. DFS分布式文件系统--管理篇

    DFS分布式文件系统--管理篇 参考文档: 浅谈DFS分布式文件系统 DFS 命名空间 和 DFS 复制概述 续DFS分布式文件系统--基础篇 DFS分布式文件系统--部署篇 添加命名空间服务器 (添 ...

  6. 网络学习(三十三)Windows Server 2003 DFS(分布式文件系统)

    Windows Server 2003 DFS(分布式文件系统) 分布式文件系统(DFS,Distributed File System)使用户更加容易访问和管理物理上跨网络分布的文件.DFS为文件系 ...

  7. Windows Server 2003 R2中的“分布式文件系统”案例应用

    "分布式文件系统(DFS)"是从Windows 2000 Server开始提供的服务,用于将企业网络中分散的多台服务器进行集中管理并对外提供统一的访问.启用DFS后,网络中的用户只 ...

  8. 【hadoop期末复习】第三章 分布式文件系统HDFS 超详细讲解(更新完毕)

    ** 本专栏的Hadoop复习计划文章内容主要包含以下几个部分: [简单]学习通习题 [进阶]课本课后练习 [操作]相关章节实验回顾 ** 使用教材:大数据技术原理与应用(第3版)林子雨 编著 ** ...

  9. GlusterFS如何解决分布式文件系统的难题?

    大数据/Java/Linux从零开始技术训练: 大数据技术训练舱:从零开始部署Hadoop3高可用集群(基于CentOS7) 大数据技术训练舱--从零开始安装.配置CentOS 7 很多人容易将分布式 ...

最新文章

  1. Java虚拟机:常见JVM参数配置和GC性能优化
  2. Vue「五」—— 动态组件、插槽、自定义指令
  3. 服务器 重启windows_安装Windows 计算机意外
  4. 5 句话,带你看准区块链和分布式账本最新趋势!
  5. 彩虹战队waf测试工具(测试数据)
  6. 解决问题--修改weblogic密码后无法启动以及如何解密weblogic的3DES密文
  7. pyqt5 窗口设置圆角_pyqt5-30. QWidget设置圆角,使用qss设置失败
  8. 医院耗材管理系统开发_14
  9. 局域网共享工具_还在用数据线?快来试试网页版局域网共享工具!
  10. 网络规划设计师考点总结
  11. SEO和SEM是什么?又有什么区别?
  12. CprimePlus 函数2
  13. 搜狗站长html标签验证,悦然建站分享:搜狗站长平台使用教程之添加网站
  14. 程序员的自我进化:共享经济新模式——共享员工
  15. 心知天气API如何调用与json数据如何显示
  16. LIS的O(nlogn)算法(二分)
  17. PTA——日K蜡烛图
  18. NOI 国家集训队论文集
  19. ZBrush的双十一来了,然鹅...
  20. 证券基金行业那些智能XX——智能客服

热门文章

  1. python微信登录失效_[基本解决]尝试去搞清楚微信网页授权后如何保持用户登录状态...
  2. Go语言进阶之路:并发爬虫,爬取空姐网所有相册图片
  3. 2015年蓝桥杯B组国赛题目---密文搜索
  4. 马斯克宣布将卸任推特CEO:转战技术岗位 ;王坚正式回归阿里云;科大讯飞否认星火大模型套壳ChatGPT|极客头条...
  5. 备胎的自我修养 |(3) 由零开始(下)
  6. RII K25A 语音空中飞鼠 红外学习步骤
  7. disabled计算机语言,jquery设置元素的readonly和disabled详解
  8. 2021年深圳杯A题火星探测器着陆控制方案
  9. 华为鸿蒙显示器,华为首次杀入显示器领域 劲爆新品为鸿蒙系统打头阵
  10. BES EQ调试讲解