jcliaoyb

hadoop运行原理

包括HDFS和Mapreduce两部分。

  1)HDFS自动保存多个副本,移动计算。缺点是小文件存取占用namenode内存,写入只支持追加,不能随机修改。

  它存储的逻辑空间称为block,文件的权限类似linux。整体架构分三种节点,NN,SNN,DN

  NN 负责读写操作保存metadata(Ownership Permission blockinfo)

  SNN 负责辅助NN合并fsimage和edits,减少nn启动时间

  DN 负责存数据,每个数据(文件)分割成若干block,每个block默认3个副本。启动后像NN发送心跳保持联系

  NN保存的metadata在hdfs启动后加载到计算机内存,除block位置信息的metadata保存在OS文件系统中的fsimage文件中,对metadata的操作日志保存在OS文件系统中的edits文件中。block位置信息是hdfs启动后由DN上报NN再加载到内存的。

  HDFS的安全模式:直到NN完全加载完metadata之前的这段时间。期间不能写入文件,DN检查各个block完整性,并修复。

  2)MapReduce

  离线计算框架,过程分为split map shuffle reduce四个过程

  架构节点有:Jobtracker TaskTracker

  Split将文件分割,传输到mapper,mapper接收KV形式的数据,经过处理,再传到shuffle过程。

  Shuffle先进行HashPartition或者自定义的partition,会有数据倾斜和reduce的负载均衡问题;再进行排序,默认按字典排序;为减少mapper输出数据,再根据key进行合并,相同key的数据value会被合并;最后分组形成(key,value{})形式的数据,输出到下一阶段

  Reduce输入的数据就变成了,key+迭代器形式的数据,再进行处理。

 

发表于 2020-04-27 10:03  南北极星  阅读(240)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2021-04-01
  • 2021-11-22
  • 2021-11-20
  • 2021-11-20
  • 2021-09-08
  • 2021-11-20
猜你喜欢
  • 2021-08-07
  • 2021-09-12
  • 2021-04-28
  • 2021-05-31
  • 2021-09-04
  • 2021-06-24
相关资源
相似解决方案