欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Hadoop 架构简介

最编程 2024-04-21 12:44:59
...
武汉源创会回归,4月20聊聊大模型”

打一个俗气稍微那么形象一点的比喻,Hadoop是一个帮派,这个帮派是通过接任务维持整个帮派生存的,这个帮派有一个大哥(namenode),有一个二哥(secandarynamenode),三个小弟(datanode),大哥有一个管家(resourcemaneger),小弟有一个小管家(nodemanager),客户有任务直接联系大哥,请求大哥做事,大哥就是大哥肯定不会自己动手,就派给了管家,管家有管家头脑,合理的分配了任务给小弟(不是天才凭空想的,是根据小弟的小管家,小管家会说哪个小弟闲哪个小弟忙),小弟任务可以反馈给客户

namenode

  • 主要接受客户端的读写服务
  • 保存metadate(元数据)信息(除了文件内容以外的所有属性都叫元数据),元数据都包含:文件owership(创建人,和创建人所在的组)和permission(rwx);文件包含哪些块(fat32),(128 MB);block保存在哪个dataNode(由DataNode上报)
  • Metadata信息在启动后会加载到内存,存储到磁盘的文件名为”fsimage”,block的位置信息不会保存到fsimage,edis记录是元数据的操作信息

secandarynamenode

  • 它不是NameNode的备份(但是可以做备份),它的主要工作是帮助NN合并edislog,减少NN启动时间
  • SNN执行合并时机
  • 只存在于hadoop1.x中,在2.x已经被ha(高可用)替换了

DataNode

  • 存储数据
  • 启动datanode线程的时候会向namenode汇报block信息
  • 通过向NN发送心跳保持与其联系(3秒一次),如果NN10钟木有收到DN的心跳,则认是已经lost,并copy其上的block到其它的DN

block的副本放置策略

  • 第一个副本:放置在上传文件的DN,如果是集群外提交,则随机挑选一台磁盘不太满,CPU不太忙的节点
  • 第二个副本:放置在于第一个副本不同的机架的节点上
  • 第三个副本:与第二个副本相同的机架的节点

  • 更多副本:随机节点