一、HDFS 的设计思路

 1)思路

  • 切分数据,并进行多副本存储;

 2)如果文件只以多副本进行存储,而不进行切分,会有什么问题

  • 缺点

  1. 不管文件多大,都存储在一个节点上,在进行数据处理的时候很难进行并行处理,节点可能成为网络瓶颈,很难进行大数据的处理;
  2. 存储负载很难均衡,每个节点的利用率很低;

二、HDFS 的设计目标

  • Hadoop Distributed File System(HDFS):源于Google 的 GFS 论文;
  • 设计目标

  1. 分布式存储:根据需要,水平横向增加节点;
  2. 运行在普通廉价的硬件上
  3. 易扩展、为用户提供性能不错的(如果廉价的硬件损坏,不会给用户带来严重损失)文件存储服务;

三、HDFS架构

  • 一般一个 HDFS 的集群,由一个 NameNode(NN) 和 多个 DataNodes(DN) 组成;一般 NameNode 和 DataNodes 部署在不同的节点上;
  • NameNode

  • 管理文件系统的 namespace,以及客户端对文件的访问;
  • 功能:

  1. 负责客户端请求的响应;
  2. 负责元数据(文件的名称、副本系数、Block存放的DataNode)的管理;
  • DataNodes

  • 操作bolck的;一般每个节点有一个 DataNodes(集群上有几个节点,就对应有几个DataNodes,也一个节点也可以运行多DataNodes,不过一般不采用,使用一对一),管理文件应该存储到哪个节点上;
  • 功能:

  1. 存储用户的文件对应的数据块(Block);
  2. 定期向NameNode发送本身及其所有的block信息,健康状况;
  • Blocks 是根据blocksize进行切分的;(blocksize=128M,130M==>128M + 2M)
  • namespaces:操作文件的;打开、关闭、重命名文件,或者重命名目录;
  • 四、HDFS 的副本机制

  • HDFS 支持多层级文件存储(文件夹里有其它文件夹),
  • 对文件系统命名空间做的任何操作,都会被记录到 NameNode 中;
  • 一个文件的所有 Block,除了最后一个Bolck,其它所有Block的大小都是一样的(与 Blocksize 相同);

  • 五、HDFS 的副本存放策略

  • 一般默认存放 3 份副本:也是容错安全考虑
  • 第一个副本默认存放在当前操作的节点上;
  • 第二个副本存放在不同与当前节点所在机架的某一个节点上;
  • 第三个副本存放在与第二个副本相同机架的不同节点上;

大数据:Hadoop(HDFS 的设计思路、设计目标、架构、副本机制、副本存放策略)的更多相关文章

  1. 我要进大厂之大数据Hadoop HDFS知识点(1)

    01 我们一起学大数据 老刘今天开始了大数据Hadoop知识点的复习,Hadoop包含三个模块,这次先分享出Hadoop中的HDFS模块的基础知识点,也算是对今天复习的内容进行一次总结,希望能够给想学 ...

  2. 我要进大厂之大数据Hadoop HDFS知识点(2)

    01 我们一起学大数据 老刘继续分享出Hadoop中的HDFS模块的一些高级知识点,也算是对今天复习的HDFS内容进行一次总结,希望能够给想学大数据的同学一点帮助,也希望能够得到大佬们的批评和指点! ...

  3. 大数据 - hadoop - HDFS+Zookeeper实现高可用

    高可用(Hign Availability,HA) 一.概念 作用:用于解决负载均衡和故障转移(Failover)问题. 问题描述:一个NameNode挂掉,如何启动另一个NameNode.怎样让两个 ...

  4. 大数据Hadoop——HDFS Shell操作

    一.查询目录下的文件 1.查询根目录下的文件 Hadoop fs -ls / 2.查询文件夹下的文件 Hadoop fs -ls /input 二.创建文件夹 hadoop fs -mkdir /文件 ...

  5. 云计算分布式大数据Hadoop实战高手之路第七讲Hadoop图文训练课程:通过HDFS的心跳来测试replication具体的工作机制和流程

    这一讲主要深入使用HDFS命令行工具操作Hadoop分布式集群,主要是通过实验的配置hdfs-site.xml文件的心跳来测试replication具体的工作和流程. 通过HDFS的心跳来测试repl ...

  6. 14周事情总结-机器人-大数据hadoop

    14周随着考试的进行,其他该准备的事情也在并行的处理着,考试内容这里不赘述了 首先说下,关于机器人大赛的事情,受益颇多,机器人的制作需要机械和电控两方面 昨天参与舵机的测试,遇到的问题:舵机不动 排查 ...

  7. 成都大数据Hadoop与Spark技术培训班

    成都大数据Hadoop与Spark技术培训班   中国信息化培训中心特推出了大数据技术架构及应用实战课程培训班,通过专业的大数据Hadoop与Spark技术架构体系与业界真实案例来全面提升大数据工程师 ...

  8. [转帖]大数据hadoop与spark的区别

    大数据hadoop与spark的区别 https://www.cnblogs.com/adnb34g/p/9233906.html Posted on 2018-06-27 14:43 左手中倒影 阅 ...

  9. 王家林的“云计算分布式大数据Hadoop实战高手之路---从零开始”的第十一讲Hadoop图文训练课程:MapReduce的原理机制和流程图剖析

    这一讲我们主要剖析MapReduce的原理机制和流程. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发 ...

随机推荐

  1. 深入js系列-类型(对象)

    开篇 值的传递方式 1.值传递 表示传递过程中复制了值 2.引用传递 表示传递过程中传递的是值的引用 js的传递方式 值传递 看下面的例子 // 这里值传递很容易理解 var a = 1 var b ...

  2. Computer-Hunters——项目需求分析

    Computer-Hunters--项目需求分析 前言 本次作业属于2019秋福大软件工程实践Z班 本次作业要求 团队名称: Computer-Hunters 本次作业目标:撰写一份针对团队项目的需求 ...

  3. 几句话总结一个算法之Q-Learning与Sarsa

    与Policy Gradients的不同之处在于,这两个算法评估某个状态s执行某个动作a的期望奖励,即Q(s,a) Q(s,a) 有两种方法计算方法,第一种直接查表或者模型预估,Q(s, a) = c ...

  4. 一张MGR切换的图,不解释

  5. jquery设置bootstrap-table的当前选中页码的获取与设置

    一.获取当前table分页的页码 有两种方式可以获得当前选中的页码: 1.通过table的onPageChange方法 $('#agentTable').bootstrapTable({ data: ...

  6. 京东联盟开发(6)——推广链接解析SKUID

    1.从推广方案中分析出价格及推广码 $keyword = " [京东]长虹(CHANGHONG) L3 老人手机 移动/联通2G 老年机 双卡双待 咖啡 原价:168.00元 券后价:163 ...

  7. 终于有人把elasticsearch原理讲通了

    转自 小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 随着央视诗词大会的热播,小史开始对诗词感兴趣,最喜欢的就是飞花令的环节. 但是由于小史很 ...

  8. Leetcode 初刷(1)

    1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样 ...

  9. pod install 的历程

    公司项目拉下来执行有报错,建议执行pod install.这个是IOS的xcode第一次用的时候是需要的步骤 1.首先对于pod的命令你想执行,需要安装CocoaPods OS X 10.11以前,在 ...

  10. [转帖]Linux日志文件utmp、wtmp、lastlog、messages

    Linux日志文件utmp.wtmp.lastlog.messages https://www.cnblogs.com/zhuiluoyu/p/6874255.html 1.有关当前登录用户的信息记录 ...