码迷,mamicode.com
首页 > 其他好文 > 详细

大数据开发面试题详解:Hadoop的运行原理

时间:2019-01-03 19:25:12      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:asc   内存   安全模式   shuf   技术分享   cte   drag   art   不可   

hadoop的核心思想是MapReduce,但shuffle又是MapReduce的核心。shuffle的主要工作是从Map结束到Reduce开始之间的过程。

Hadoop不仅仅是大数据技术的核心重点,还是我们面试官面试的时候经常会问道的问题,本文将详细介绍Hadoop的运行原理。

技术分享图片技术分享图片?

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+迭代器形式的数据,再进行处理。

以上是对大数据技术面试题的详细解析,当然了,既然是面试题不可能只有一道,小编还在积极预测备选中,针对大数据技术的重点内容进行详细讲解和阶段测试,让同学们真正掌握大数据技术,通过一周一小测,一个月一大测的培训原则,给学生外界的学习推力。更多精彩,欢迎持续关注~

大数据开发面试题详解:Hadoop的运行原理

标签:asc   内存   安全模式   shuf   技术分享   cte   drag   art   不可   

原文地址:https://www.cnblogs.com/qf-dd/p/10215932.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!