HDFS设计目标

1)硬件错误是常态,数据保存需要冗余。

2)数据批量读取,Hadoop擅长数据分析而不是事务处理。

3)大规模数据集。

4)简单一致醒模型,降低系统复杂度,文件一次写入多次读取,

5)“数据就近”原则分配数据节点。

HDFS体系结构

NameNode

DataNode

SecondayNameNode

事务日志

映像文件

NameNode

文件系统命名空间

记录每个文件系统数据块在各个DataNode上的位置和副本信息。

协调Client对文件的访问

记录命名空间内的改动

NameNode使用事务日志记录HDFS元数据的变化。使用映像文件存储文件系统的命名空间,文件映射,文件属性等。

DataNode

负责物理节点的存储管理

一次写入,多次读取(不修改)。

文件由数据块(block)组成默认为64MB。

Block应尽量分配在不同的物理节点上。

HDFS读取流程

Client要访问HDFS上的一个文件

1)从NN获取组成这个文件的block位置列表。

2)更具列表知道存储数据快的dn。

3)访问dn获取数据。

4)NN并不参与数据实际传输。

HDFS如何保证集群当中的数据存储可靠性

1)冗余副本

2)机架策略

3)心跳机制

4)安全模式

5) 快照机制

冗余副本

Hdfs默认每个block三个副本(不足三分制动),dn启动时,向nn汇报各数据快信息。

机架策略

集群一般放在不同机架上,

HDFS“机架感知”

一般第一个副本存放在上穿文价的本机架上,如果是本集群外提交,则随机挑选磁盘不太满,cpu不太忙的节点存储。

第二个副本放在与第一个机架不同的节点上,

第三个副本放在与第二个副本相同的节点上。

更多副本:随机。

心跳机制

NN周期从dn接收心跳信息和block报告(3秒一次)

NN根据block报告验证元数据

没按时发送心跳(10分钟)的dn则认为已经lost,并copy其上的block到其他DN。

安全模式

NN启动时会经过“安全模式”阶段

安全模式阶段不会产生写操作,只执行写操作

次阶段NN收集NN的报告,当block达到最小副本数以上时,会被认

为是“安全”的, 当block未达到最小副本数时,该块会被复制知道达到安全。

回收站

删除文件时,将文件放入回收站。

回收站里文件可以快速恢复。

当达到一定阀值时,就被彻底删除,释放占用block。

快照

支持某一时间点的映像,需要时是数据重返这个时间点。

HDFS分布式文件系统设计思想的更多相关文章

  1. Hadoop HDFS分布式文件系统设计要点与架构

      Hadoop HDFS分布式文件系统设计要点与架构     Hadoop简介:一个分布式系统基础架构,由Apache基金会开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群 ...

  2. Hadoop HDFS分布式文件系统设计要点与架构(转摘)

    Hadoop简介:一个分布式系统基础架构,由Apache基金会开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力高速运算和存储.Hadoop实现了一个分布式文件系统(Ha ...

  3. 吴裕雄--天生自然HADOOP操作实验学习笔记:hdfs分布式文件系统安装

    实验目的 复习安装jdk 学习免密码登录 掌握安装配置hdfs集群的方法 掌握hdfs集群的简单使用和检查其工作状态 实验原理 1.hdfs是什么 hadoop安装的第一部分是安装hdfs,hdfs是 ...

  4. FastDFS分布式文件系统设计原理

    转载自http://blog.chinaunix.net/uid-20196318-id-4058561.html FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker ser ...

  5. HDFS分布式文件系统资源管理器开发总结

      HDFS,全称Hadoop分布式文件系统,作为Hadoop生态技术圈底层的关键技术之一,被设计成适合运行在通用硬件上的分布式文件系统.它和现有的分布式文件系统有很多共同点,但同时,它和其他的分布式 ...

  6. 我理解中的Hadoop HDFS分布式文件系统

    一,什么是分布式文件系统,分布式文件系统能干什么 在学习一个文件系统时,首先我先想到的是,学习它能为我们提供什么样的服务,它的价值在哪里,为什么要去学它.以这样的方式去理解它之后在日后的深入学习中才能 ...

  7. Hadoop HDFS概念学习系列之分布式文件管理系统(二十五)

    数据量越来越多,在一个操作系统管辖的范围存在不了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来 管理多台机器上的文件,这就是分布式文件管理系统. 是一种允许文件 ...

  8. 一图看懂hadoop分布式文件存储系统HDFS工作原理

    一图看懂hadoop分布式文件存储系统HDFS工作原理

  9. 分布式文件管理系统HDFS

    Hadoop 分布式文件管理系统HDFS可以部署在廉价硬件之上,能够高容错. 可靠地存储海量数据(可以达到TB甚至PB级),它还可以和Yam中的MapReduce 编程模型很好地结合,为应用程序提供高 ...

随机推荐

  1. Android:设计之屏幕适配

    据统计目前市场Android手机的分辨率有是10余种,分辨率如此广泛使得我们在处理分辨率适应方便遇到不少难题,本文就此难点记录设计与实际布局中的解决技巧. 以320x480为蓝本设计布局 因为Andr ...

  2. linux内核下载

    01最新版:https://www.kernel.org/ 02老旧版:https://www.kernel.org/pub/linux/kernel/v3.x/ ------------------ ...

  3. Xml文件保存值不能及时更新

    今天在Xml文件中修改了一个值,调试时,发现读取的不是最新值.经过各种调试,还是不能解决.只好把文件项目给编译了一遍,在调试时,把在及时窗口,把变量值给改了一下啊,就是可以读到最新配置了.停止程序,在 ...

  4. Android中常见的MVC模式

    MVC模式的简要介绍 MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller). MVC模式的目的就是实现Web系统的职能分工. Model层实现系统中的业务 ...

  5. ExtJs自学教程(1):一切从API开始

    题 记 该系列文章不侧重全方位的去介绍ExtJs的使用,只是侧重于解决ExtJs问题的思考方法.写的人不用长篇大论,学的人则能够自立更生.l  学习的人只要有一些CSS的javascript的基础知识 ...

  6. IEDA常用设置

    安装插件步骤省略,暂时不需要 IDEA菜单详解:基本有对应的快捷键或者是图标Help系列:Find Action:作用:快速新建文件,Ctrl + Shift + AHelp Topics:作用:帮助 ...

  7. 【Todo】淘宝十年产品事-读书笔记

    书籍位置: /Users/baidu/Documents/Data/Interview/业界/淘宝十年产品事.pdf

  8. hdu 3359 Kind of a Blur (高斯消元 浮点型)

    题目链接 题意: H * W (W,H <= 10) 的矩阵A的某个元素A[i][j],从它出发到其他点的曼哈顿距离小于等于D的所有值的和S[i][j]除上可达点的数目,构成了矩阵B.给定矩阵B ...

  9. bzoj2823

    最小圆覆盖 有个东西叫作随机增量法,具体可以baidu 这里来说说怎么求三点共圆 这其实就是求两条线段的交点 在编程中,我们解方程是比较麻烦的一个比较好的方法是利用相似三角形 设线段AB,CD交P,则 ...

  10. 终极解决方案:windows10资源管理器假死

    想解决这个问题有以下几点: 1,不要相信所谓的powershell里面输命令可以重装系统自带应用从而解决假死问题! 2,不要相信烂大街的“自启动User Manager”服务可以解决假死问题! 3,不 ...