林子雨大数据技术原理及应用第七章课后题答案(共8页).docx
《林子雨大数据技术原理及应用第七章课后题答案(共8页).docx》由会员分享,可在线阅读,更多相关《林子雨大数据技术原理及应用第七章课后题答案(共8页).docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上大数据技术第七章课后题答案黎狸1. 试述MapReduce和Hadoop的关系。谷歌公司最先提出了分布式并行编程模型MapReduce, Hadoop MapReduce是它的开源实现。谷歌的MapReduce运行在分布式文件系统GFS上,与谷歌类似,HadoopMapReduce运行在分布式文件系统HDFS上。相对而言,HadoopMapReduce要比谷歌MapReduce的使用门槛低很多,程序员即使没有任何分布式程序开发经验,也可以很轻松地开发出分布式程序并部署到计算机集群中。2. MapReduce 是处理大数据的有力工具,但不是每个任务都可以使用MapRed
2、uce来进行处理。试述适合用MapReduce来处理的任务或者数据集需满足怎样的要求。适合用MapReduce来处理的数据集,需要满足一个前提条件: 待处理的数据集可以分解成许多小的数据集,而且每一个小数据集都可以完全并行地进行处理。3. MapReduce 模型采用Master(JobTracker)-Slave(TaskTracker)结构, 试描述JobTracker 和TaskTracker的功能。MapReduce框架采用了Master/Slave架构,包括一个Master和若干个Slave。Master上运行JobTracker,Slave上运行TaskTrackero用户提交的每
3、个计算作业,会被划分成若千个任务。JobTracker负责作业和任务的调度,监控它们的执行,并重新调度已经失败的任务。TaskTracker负责执行由JobTracker指派的任务。4. TaskTracker 出现故障会有什么影响?该故障是如何处理的?5. MapReduce计算模型的核心是Map函数和Reduce函数,试述这两个函数各自的输人、输出以及处理过程。Map函数的输人是来自于分布式文件系统的文件块,这些文件块的格式是任意的,可以是文档,也可以是二进制格式。文件块是一系列元素的集合,这些元素是任意类型的,同一个元素不能跨文件块存储。Map函数将输人的元素转换成key,value形式
4、的键值对,键和值的类型也是任意的,其中,键不同于一般的标志属性,即键没有唯一性,不能作为输出的身份标识,即使是同一输人元素,也可通过一个Map任务生成具有相同键的多个。Reduce函数的任务就是将输人的一-系列具有相同键的键值对以某种方式组合起来,输出处理后的键值对,输出结果会合并成一个文件。用户可以指定Reduce任务的个数(如n个),并通知实现系统,然后主控进程通常会选择一个Hash函数,Map任务输出的每个键都会经过Hash函数计算,并根据哈希结果将该键值对输人相应的Reduce任务来处理。对于处理键为k的Reduce任务的输人形式为K,.,输出为。6. 试述MapReduce的工作流程
5、(需包括提交任务、Map、Shuffle、 Reduce的过程)。MapReduce框架使用InputFormat模块做Map前的预处理,比如,验证输入的格式是否符合输人定义;然后,将输入文件切分为逻辑上的多个InputSplit, InputSplit 是MapReduce对文件进行处理和运算的输人单位,只是一个逻辑概念, 每个InputSplit并没有对文件进行实际切割,只是记录了要处理的数据的位置和长度。因为InputSplit 是逻辑切分而非物理切分,所以,还需要通过RecordReader (RR)根据InputSplit中的信息来处理InputSplit中的具体记录,加载数据并转换
6、为适合Map任务读取的键值对,输入给Map任务。Map任务会根据用户自定义的映射规则,输出一系列的作为中间结果。为了让Reduce可以并行处理Map的结果,需要对Map的输出进行-一定的分区、排序(Sort)、合并( Combine)、归并( Merge)等操作,得到形式的中间结果, 再交给对应的Reduce进行处理,这个过程称为Shuffle。Reduce 以一系列中间结果作为输入, 执行用户定义的逻辑,输出结果给OutputFormat模块。OutputFormat 模块会验证输出目录是否已经存在以及输出结果类型是否符合配置文件中的配置类型,如果都满足,就输出Reduce的结果到分布式文件
7、系统。7. Shuffle 过程是MapReduce 工作流程的核心,也被称为奇迹发生的地方,试分析Shuffle过程的作用。Shufle,是指对Map输出结果进行分区、排序、合并等处理并交给Reduce的过程。Shuffle 过程分为Map端的操作和Reduce端的操作。 在Map端的Shuffle过程。Map的输出结果首先被写入缓存,当缓存满时,就启动溢写操作,把缓存中的数据写入磁盘文件,并清空缓存。当启动溢写操作时,首先需要把缓存中的数据进行分区,然后对每个分区的数据进行排序( Sort)和合并( Combine),之后再写入磁盘文件。每次溢写操作会生成-一个新的磁盘文件,随着Map任务
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 林子 数据 技术 原理 应用 第七 课后 答案
限制150内