网络计算答案版.doc

上传人:坚持 文档编号:3567806 上传时间:2019-06-06 格式:DOC 页数:14 大小:791.45KB
下载 相关 举报
网络计算答案版.doc_第1页
第1页 / 共14页
网络计算答案版.doc_第2页
第2页 / 共14页
网络计算答案版.doc_第3页
第3页 / 共14页
网络计算答案版.doc_第4页
第4页 / 共14页
网络计算答案版.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、学生的课程总评成绩由平时成绩(占 50%)和期末考试成绩(50% )两部分构成。1、 平时成绩依据课上小测验 2 次,每次占 10%;2、 提交创新性报告 2 份,每份 10%;3、 提交 1 次小论文,占 10%。4、 最后的开卷考试,成绩占 50%。网络计算基本概念分布式对象计算Web 计算XMLWeb Services无线与移动计算云计算大数据及分析要求:1、请同学们提交 2 份创新报告,每份不少于 800 字,打印签名及学号。内容以上面 8 个主题为目标,自选题目。2、请同学们提交 1 份小论文,字数不少于 1500 字,打印签名及学号。内容以上面 8 个主题为目标,自选题目,不要与创

2、新报告内容重复。3、按时参加考试,注意考试时间与地点,考试当天每人交来 3 份报告(打印、签名及学号)。开卷考试,自带资料,要求字迹工整,内容详实,认真书写。一:将会从以下简述题中选择部分。1、 阐述分布式核心技术中的分布式计算、并行计算、云计算的基本概念,以及各自的技术核心特点?概念:(1 ) 分布式计算:将需要巨大计算能力的问题分成许多小部分分布到多台计算机进行处理,最后综合结果。(2 ) 并行计算:同时使用多种计算资源解决计算问题的过程。(3 ) 云计算:云计算是一种商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。核心特

3、点:(1) 分布式计算:需要多台联网的分布在各处的计算机协同处理。并行的主体是计算机(2) 并行计算:一般而言,指时间或者空间上并行。如流水线技术或强调单计算机多核处理。并行的主体是处理器。(3) 云计算:云计算是上述两种计算的商业发展。关键在能够对云内的基础设施等资源(资源池)进行动态按需分配与管理。2、 阐述移动计算的基本概念与技术特点?移动计算与分布式计算有何区别?概念:移动计算是使得人们可以在任何时间地点以任何方式接入网络服务的技术集。它使计算机或其它信息智能终端设备在无线环境下实现数据传输及资源共享,它的作用是将有用、准确、及时的信息提供给任何时间地点的任何客户。区别:与分布计算相比

4、,移动计算具有以下一些主要特点:(1)移动性:移动计算机在移动过程中可以通过所在无线单元与固定网络的节点或其他移动计算机连接。(2)网络条件多样性:移动计算机在移动过程中所使用的网络一般是变化的。 (3)频繁断接性:由于受电源、无线通信费用、网络条件等因素的限制,移动计算机是主动或被动地间连、断接。(4)网络通信的非对称性:移动节点的发送能力较弱。因此,下行链路和上行链路的通信带宽和代价相差较大。(5)移动计算机的电源能力有限(6)可靠性低:这与无线网络本身的可靠性及移动计算环境的易受干扰和不安全等因素有关。3、 阐述 Google 云计算原理中的 Chubby 的设计目标是什么?Chubby

5、 是 Google 设计的提供粗粒度锁服务的一个文件系统,它基于松耦合分布式系统,解决了分布的一致性问题。设计目标如下:(1) 高可用性和高可靠性;首要目标,在保证这一目标的基础上再考虑系统的吞吐量和存储能力;(2) 高扩展性;将数据存储在价格较为低廉的 RAM,支持大规模用户访问文件 (3) 支持粗粒度的建议性锁服务;提供这种服务的根本目的是提高系统的性能 (4) 服务信息的直接存储;可直接存储包括元数据、系统参数在内的有关服务信息(5) 支持通报机制;客户可以及时地了解到事件发生 (6) 支持缓存机制;通过一致性缓存将常用信息保存在客户端,避免了频繁地访问主服务器 4、 阐述 Paxos

6、算法在 Chubby 中起什么作用?简述 Paxos 算法的原理?作用:Chubby 设计者借鉴了 Paxos 的两种解决机制:给协调者指派序号或限制协调者可以选择的值。原理:1、选择一副本为协调者。2、协调者从客户提交的值中选择一个, accept 消息广播给所有的副本,其他的副本收到广播后,选择接受或者拒绝这个值,并将决定结果反馈。3、协调者收到大多数副本接受信息后,认为达到了一致性,接着向相关副本发送一个 commit 消息 。5、 阐述 Google 云计算原理中的 Bigtable 数据模型和系统架构? 数据模型 Bigtable 是一个分布式多维映射表,表中的数据通过一个行关键字(

7、Row Key) 、一个列关键字(Column Key )以及一个时间戳(Time Stamp)进行索引 Bigtable 对存储在其中的数据不做任何解析,一律看做字符串 Bigtable 的存储逻辑可以表示为: (row:string, column:string, time:int64)string “内 容 : ” 锚 点 : cnsi.om” “锚 点 : my.lok.ca” “com.nw” tl CN.co “CN t3 5t6 t8 t9 系统架构B i g t a b l e 主服务器B i g t a b l e 客户端B i g t a b l e 客户端程序库B i g

8、 t a b l e 子表服务器 B i g t a b l e 子表服务器 B i g t a b l e 子表服务器处理数据 处理数据处理数据G o o g l e W o r k Q u e u e G F S C h u b b y执行 O p e n ( )操作负责故障处理及监控 保存子表数据及日志负责元数据存储及主服务器的选择执行元数据操作及负载平衡Bigtable 主要由三个部分组成:客户端程序库、一个主服务器和多个子表服务器 客户访问 Bigtable 服务时,首先要利用其库函数执行 Open()操作来打开一个锁(实际上就是获取了文件目录) ,锁打开以后客户端就可以和子表服务器

9、进行通信 和许多具有单个主节点分布式系统一样,客户端主要与子表服务器通信,几乎不和主服务器进行通信,这使得主服务器的负载大大降低 主服务主要进行一些元数据操作以及子表服务器之间负载调度问题,实际数据是存储在子表服务器上 6、阐述 Google 云计算原理中的分布式存储系统 Megastore 的核心技术是什么?核心技术是复制。简述如下:Megastore 的数据复制是通过 paxos 进行同步复制的,也就是如果更新一个数据,所有机房都会进行同步更新,因为使用 paxos 进行复制, 所以不同机房针对同一条数据的更新 复制到所有机房的更新顺序都是一致的,同步复制保证数据的实时可见性,采用 pax

10、os 算法则保证了所有机房更新的一致 性,所以个人认为 megastore 的更新可能会比较慢,而所有读都是实时读(对于不同机房是一致的 ),因为部署有多个机房,并且数据总是最新。7、阐述 Google 云计算原理中大规模分布式系统的监控基础架构 Dapper 关键技术是什么?关键技术是实现应用级的透明。对于应用的程序员来说,是不需要知道有跟踪系统这回事的。如果一个跟踪系统想生效,就必须需要依赖应用的开发者主动配合,那么这个跟踪系统也太脆弱了,往往由于跟踪系统在应用中植入代码的 bug 或疏忽导致应用出问题,这样才是无法满足对跟踪系统“无所不在的部署”这个需求。 (这一段可以不要)做到这一点需

11、要实现 轻量级的核心功能库和二次抽样技术。轻量级核心功能库:将 Dapper 的核心监控实现限制在一个由通用线程(Ubiquitous Threading) 、控制流( Control Flow)和 RPC 代码库(RPC Library Code)组成的小规模库基础上。二次抽样技术:第一次抽样实践中,设计人员发现当抽样率低至 1/1024 时也能够产生足够多的有效监控数据,即在 1024 个请求中抽取 1 个进行监控也是可行的,从而可以捕获有效数据第二次抽样发生在数据写入 Bigtable 前,具体方法是将监控 id 散列成一个标量z(0z1) ,如果某个区间的 z 小于事先定义好的汇总抽样

12、系数,则保留这个区间并将它写入 Bigtable,否则丢弃 8、阐述 Google App Engine 提供了哪些服务?Google App Engine 的沙盒对开发人员进行哪些限制?服务:网址获取、邮件服务、Memcache 服务、图片操作、python 程序框架、数据库服务、用户管理服务等等。限制:(1)用户应用程序只能通过 Google App Engine 提供的网址抓取 API 和电子邮件服务API 来访问互联网中其他计算机;只能在标准接口上通过 HTTP 或 HTTPS 来进行 (2)应用程序无法对 Google App Engine 的文件系统进行写入操作,只能读取应用程序代

13、码上的文件,并且该应用程序必须使用 Data Store 数据库来存储应用程序运行期间持续存在的数据 (3)应用程序只有在响应网络请求时才运行,且响应时间必须极短(几秒之内完成) 。同时,请求处理的程序不能在自己的响应发送后产生子进程或执行代码 9、阐述当前主流分布式文件系统有哪些?各有什么优缺点?Google 文件系统 GFS 特点体现在哪?第一问:目前几个主流的分布式文件系统除 GPFS 外,还有 Hadoop HDFS、Lustre、FastDFS等。第二问:1.Hadoop HDFS优点: 适合大数据处理(支持 GB,TB,PB 级别的数据存储,支持百万规模以上的文件数量)- 适合批处

14、理(支持离线的批量数据处理,支持高吞吐率)- 高容错性(以数据块存储,可以保存多个副本,容易实现负载均衡)缺点: - 小文件存取(占用 namenode 大量内存,浪费磁盘空间)- 不支持并发写入(同一时刻只能有一个进程写入,不支持随机修改)2.Lustre优点:是一个基于对象存储的分布式文件系统,比较成熟,适合大型集群,支持动态扩展。缺点:它只有两个元数据管理节点 ,当系统达到一定的规模之后,管理节点会成为 Lustre 系统中的瓶颈。3.FastDFS优点:以文件为基本存储单位,解决了大容量存储的问题。特别适合以文件为载体的在线服务,简化文件的存取功能。缺点:难以并行化处理(一个节点只能处

15、理一个文件,无法同时处理一个文件);-难以实现负载均衡(文件大小不同,无法实现负载均衡,用户需要自己控制文件大小)第三问:GPFS 的主要优点有以下三点:1)使用分布式锁管理和大数据块策略支持更大规模的集群系统,文件系统的令牌管理器为块、inode、属性和目录项建立细粒度的锁,第一个获得锁的客户将负责维护相应共享对象的一致性管理,这减少了元数据服务器的负担;2)拥有多个元数据服务器,元数据也是分布式 ,使得元数据的管理不再是系统瓶颈;3)令牌管理以字节作为锁的最小单位,也就是说除非两个请求访问的是同一文件的同一字节数据,对于数据的访问请求永远不会冲突.10、阐述 MapReduce 与传统的分

16、布式程序设计相比有何优点? 例举传统分布式程序设计的优缺点?(真心找不到,当然我也没怎么理解,感觉传统的分布式应该改为传统的集中式,知道答案的补充一下)(1 )通过 MapReduce 这个分布式处理框架,能用于处理大规模数据。(2 )能将很多繁琐的细节隐藏起来,容错率高。比如自动并行化、负载均衡和灾备管理等,这样将极大地简化程序员的开发工作;(3 ) MapReduce 的伸缩性非常好;也就是说每增加一台服务器,其就能将差不多的计算能力接入到集群中,传统的在伸缩性方面都与 MapReduce 相差甚远。二:将会从以下叙述题中选择题目解答。1、参照以下 MapReduce 操作执行流程图,请叙

17、述 MapReduce 操作过程?(1 )输入文件分成 M 块,每块大概 16M64MB(可以通过参数决定) ,接着在集群的机器上执行分派处理程序(2 ) M 个 Map 任务和 R 个 Reduce 任务需要分派,Master 选择空闲 Worker 来分配这些Map 或 Reduce 任务(3 ) Worker 读取并处理相关输入块,Map 函数产生的中间结果对暂时缓冲到内存 (4 )中间结果定时写到本地硬盘,分区函数将其分成 R 个区。中间结果在本地硬盘的位置信息将被发送回 Master,然后 Master 负责把这些位置信息传送给 Reduce Worker(5 )当 Master 通

18、知执行 Reduce 的 Worker 关于中间对的位置时,它调用远程过程,从 Map Worker 的本地硬盘上读取缓冲的中间数据。当 Reduce Worker 读到所有的中间数据,它就使用中间 key 进行排序,这样可使相同 key 的值都在一起。(6 ) Reduce Worker 根据每一个唯一中间 key 来遍历所有的排序后的中间数据,并且把key 和相关的中间结果值集合传递给用户定义的 Reduce 函数。Reduce 函数的结果写到一个最终的输出文件(7 )当所有的 Map 任务和 Reduce 任务都完成的时候,Master 激活用户程序。此时MapReduce 返回用户程序

19、的调用点2、请参照以下“云计算仿真器 cloudsim”的体系结构,叙述其技术实现及使用方法?技术实现:1) BwProvisioner用于模拟虚拟机的带宽分配策略。可以通过扩展这个类反映其应用需求的变化,实现自己的策略(基于优先级或服务质量)2) CloudCoordinator整合了云数据中心,负责周期性地监控数据中心资源的内部状态和执行动态负载均衡的决策 3) Cloudlet模拟了云应用服务(如内容分发、社区网络和业务工作流等) 。每一个应用服务都会拥有一个预分配的指令长度和其生命周期内所需的数据传输开销4) CloudletScheduler扩展实现了多种策略,用于决定虚拟机内的应用

20、服务如何共享处理器能力。支持两种调度策略:空间共享(CloudletSchedulerSpaceShared)和时间共享(CloudletSchedulerTimeShared)策略 7) DatacenterCharacteristics包含了数据中心资源的配置信息8) Host模拟如计算机、存储服务器等物理资源。它封装了一些重要信息,如内存/存储器的容量、处理器内核列表及类型(多核机器) 、虚拟机之间共享处理能力的分配策略、为虚拟机分配内存和带宽的策略等9) NetworkTopology包含模拟网络行为(延时)的信息。它里面保存了网络拓扑信息,该信息由 BRITE 拓扑生成器生成10)

21、RamProvisioner代表为虚拟机分配主存的策略11) SanStorage模拟了云数据中心的存储区域网,主要用于存储大量数据,类似于 Amazon S3、Azure blob storage 等 12) Sensor该接口的实现必须通过实例化一个能够被云协调器使用的传感器组件,用于监控特定的性能参数(能量消耗、资源利用) 。该接口定义了如下方法:(1 )为性能参数设置最小值和最大值。(2 )周期性地更新测量值。(3 )该类能够用于模拟由主流云提供商提供的真实服务 13) Vm模拟由主机组件托管和管理的虚拟机 14) VmAllocationPolicy代表虚拟机监视器使用的调度策略,该

22、策略用于将虚拟机分配给主机 15) VmSheduler由一个主机组件实现,模拟为虚拟机分配处理核所用的策略(空间共享和时间共享) 使用方法:(1 )初始化 CloudSim 包(2 )创建数据中心(3 )创建数据中心代理数据中心代理负责在云计算中根据用户的 QoS 要求协调用户及服务供应商和部署服务任务(4 )创建虚拟机对虚拟机的参数进行设置,主要包括 ID、用户 ID、MIPS、CPU 数量、内存、带宽、外存、虚拟机监控器、调度策略,并提交给任务代理(5 )创建云任务创建指定参数的云任务,设定任务的用户 ID,并提交给任务代理。在这一步可以设置需要创建的云任务数量以及任务长度等信息(6 )在这一步调用自定义的任务调度策略,分配任务到虚拟机(7 )启动仿真(8 )在仿真结束后统计结果 3、技术应用题:假设有一批海量的数据,每个数据都是由 26 个字母组成的字符串,原始的数据集合是完全无序的,怎样通过 MapReduce 完成排序工作,使其有序(字典序)呢? 解答:对原始的数据进行分割(Split) ,得到 N 个不同的数据分块, (做题画最终的图就好,三张图可以融合画)每一个数据分块都启动一个 Map 进行处理。采用桶排序的方法,每个 Map 中按照首字母将字符串分配到 26 个不同的桶中,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 参考答案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。