在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
HDFS即Hadoop分布式文件系统。它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。那大数据中HDFS 存储的机制怎样的呢?
HDFS的存储机制主要从它的三个实体来说!
数据块
每个磁盘都有默认的数据块大小,这是磁盘进行读写的基本单位。构建于单个磁盘之上的文件系统通过磁盘块来管理该文件系统中的块。该文件系统中的块一般为磁盘块的整数倍。磁盘块一般为 512 字节。HDFS 也有块的概念,默认为64MB(一个map处理的数据大小)。HDFS上的文件也被划分为块大小的多个分块,与其他文件系统不同的是,HDFS 中小于一个块大小的文件不会占据整个块的空间。
HDFS用块存储带来的第一个明显的好处一个文件的大小可以大于网络中任意一个磁盘的容量,数据块可以利用磁盘中任意一个磁盘进行存储。第二个简化了系统的设计,将控制单元设置为块,可简化存储管理,计算单个磁盘能存储多少块就相对容易。同时也消除了对元数据的顾虑,如权限信息,可以由其他系统单独管理。
DataNode 节点
DataNode 是 HDFS 文件系统的工作节点,它们根据需要存储并检索数据块,受NameNode节点调度。并且定期向 NameNode 发送它们所存储的块的列表。
NameNode 节点
NameNode 管理 HDFS 文件系统的命名空间,它维护着文件系统树及整棵树的所有的文件及目录。这些文件以两个文件形式永久保存在本地磁盘上(命名空间镜像文件和编辑日志文件).NameNode 记录着每个文件中各个块所在的数据节点信息但并不永久保存这些块的位置信息,因为这些信息在系统启动时由数据节点重建。
没有 NameNode,文件系统将无法使用。如提供 NameNode 服务的机器损坏,文件系统上的所有文件丢失,我们就不能根据 DataNode 的块来重建文件。因此,对 NameNode 的容错非常重要。第一种机制,备份那些组成文件系统元数据持久状态的文件。通过配置使 NameNode在多个文件系统上保存元数据的持久状态或将数据写入本地磁盘的同时,写入一个远程挂载的网络文件系统。当然这些操作都是原子操作。第二种机制是运行一个辅助的 NameNode,它会保存合并后的命名空间镜像的副本,并在Name/Node发生故障时启用。但是辅助NameNode保存。态总是滞后于主力节点,所以在主节点全部失效后难免丢失数据。在这种情况下,一般把存储在远程挂载的网络文件系统的数据复制到辅助NameNode并作为新的主NameNode 运行。
大数据Hadoop中HDFS 存储的机制?就和大家介绍到这里。如果想了解更多大数据相关知识,可以持续关注博学谷,或者通过博学谷大数据课程进行学习。我们会持续分享更多关于大数据的知识。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
大数据优化在SEO公司中的应用
大数据优化在SEO公司中的应用,搜索引擎优化可以通过浏览企业网站了解搜索引擎优化以及其业务需求。搜索引擎优化公司可能会更好地了解市场,并了解需要采取哪些措施以获得曝光率。企业可以保持领先于竞争对手的唯一方法是了解其目标市场以及他们的沟通方式。
7008
2019-05-13 12:06:20
揭秘 数据分析究竟在企业经营中有什么实际作用?
在企业经营中中,我们都了解数据分析的重要性,但是很少有人能说清,数据分析究竟在企业营业中有什么实际作用。其实简单来说,数据分析的目的是把隐藏在数据背后的信息集中和提炼出来,总结出所研究对象的内在规律,帮助管理者进行有效的判断和决策。下面是数据分析在企业经营中的三大作用
8455
2019-07-12 13:11:30
大数据培训班是骗局吗?大数据培训班到底坑不坑?
近些年,大数据的概念火热,就业前景广阔,相信很多人都因此想要学习大数据。但是由于自学效率低不适合大部分人,所以很多人考虑到参加大数据培训班。但是想要参加大数据培训班的同学不免担心,大数据培训班是骗局吗?其实问题答案很简单,大数据培训班当然不是骗局,大数据培训班到底坑不坑?那就要看你怎么选择培训机构了。
38691
2019-08-08 17:27:28
大数据岗位Spark面试题整理附答案
众所周知,Spark作为一个集群计算平台和内存计算系统,它是专门为速度和通用目标设计的。从事大数据岗位的工作者,像是ETL工程师、Spark工程师、Hbase工程师、用户画像系统工程师都需要熟练掌握Spark相关知识点,因此Spark也是常常会出现的必考面试题。下面我整理了一些Spark面试题,并附上了答案,一起来看看做一做吧!
7898
2020-04-01 17:52:24
缓存如何分类?有什么区别?
缓存分类按照系统划分为应用级缓存和系统级别缓存;按照设计分本地缓存、分布式缓存、多级缓存。在技术界“缓存为王”,从浏览器到应用前端、应用后端、数据库,每一层都能通过缓存来提高系统的扩展能力,改善系统的响应能力同时减少系统的负担。
4419
2022-04-07 15:59:17