设为首页 收藏本站
查看: 610|回复: 0

[经验分享] hadoop之hdfs的理解

[复制链接]

尚未签到

发表于 2018-10-29 10:45:07 | 显示全部楼层 |阅读模式
  HDFS的存储原理是什么?
  HDFS是一个分布式文件系统,它将一个文件分成一个或多个块,每个块默认大小是64M,(当然也可以自己调整大小)存储在DataNode节点上。
  一个标准的HDFS集群有3个守护进程组成。
  Namenode:集群中的数目有1个,主要用来存储文件系统的元数据信息。
  元数据中包含的信息有:文件的ownship和permissions;文件包含那些快,以及备份;块保存    在那些datanode上(启动时后,datanode自己会上报)。Namenode其本身是一个jetty服务器,用来进行名称查询的。在启动时候,会首先加载元数据信息至内存中,存储在磁盘文件名为fsimage。
  但是block的位置信息不会保存到fsimage内。这样设计的好处是即便datanode的IP地址或者主机名发生了改变,也不影响文件系统中元数据的存储。管理员只需拆下硬盘,将它们插入新的机箱,然后启动新机器,这依然不会影响元数据的存储。
  fsimage:元数据镜像文件
  Editslog记录HDFS元数据的变化。
  DataNode:Slave节点,奴隶,干活的。负责存储client发来的数据块block;执行数据块的读写操作。
  SecondNameNode:是NameNode的冷备份;合并fsimage和fsedits然后再发给namenode。
  冷备份:b是a的冷备份,如果a坏掉。那么b不能马上代替a工作。但是b上存储a的一些信息,减少a坏掉之后的损失。
  热备份:b是a的热备份,如果a坏掉。那么b马上运行代替a的工作。
  namenode内存中存储的是=fsimage+edits。
  4.NameNode和SecondNode之间的关系?
  客户端进行HDFS文件操作(创建,修改,复制,删除)时,首先会把这个操作记录在日志文件中(EditsLog)中。在日志记录这个操作后,NameNode修改内存中的文件系统的元数据信息。这个操作成功之后,日志都会被同步到文件系统中去。fsimage文件(命名空间印象文件)是内存中元数据在硬盘上CheckPoint的结果,不能从硬盘上直接打开修改fsimage文件。SecondDataNode的作用就是帮助DataNode将内存中的元数据CheckPoint到硬盘上。
  CHeckPoint的过程如下。
  (1)SecondNameNode通知NameNode生成新的日志文件,以后的日志都会记录在新的日志文件中。
  (2)SecondNameNode用HTTP Get从NameNode节点获得fsimage文件及旧的日志文件。
  (3)SecondNameNode将fsimage加载到内存中,并执行日志文件中的所有操作,然后生成新的fsimage文件。
  (4)  SecondNameNode用HTTP Post将fsimage文件传送给NameNode。
  (5)NameNode这时候,就可以使用新的fsimage文件和新的日志文件,写入此次CheckPoint的时间。
  SecondNameNode周期性的合并,可以在配置文件中core-site.xml中进行设置。
  fs.checkpoint.period//时间周期    fs.checkpoint.size  //日志文件的大小。
  如果NameNode损坏,这时候就需要人工从NameNode恢复数据,会或多或少丢失一部分数据。
  所以尽量将其SecondNameNode和NameNode分开,放在不同的机器上。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-627897-1-1.html 上篇帖子: hadoop2.6.0 集群搭建 下篇帖子: hadoop之mapreduce原理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表