mapreduce海量数据并行处理 总结

mapreduce海量数据并行处理 总结

ID:8815427

大小:8.36 MB

页数:82页

时间:2018-04-08

mapreduce海量数据并行处理 总结_第1页
mapreduce海量数据并行处理 总结_第2页
mapreduce海量数据并行处理 总结_第3页
mapreduce海量数据并行处理 总结_第4页
mapreduce海量数据并行处理 总结_第5页
资源描述:

《mapreduce海量数据并行处理 总结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、MapReduce海量数据并行处理复习大纲Ch.1.并行计算技术简介1.为什么需要并行计算?提高计算机性能有哪些基本技术手段提高字长,流水线微体系结构技术,提高集成度,提升主频迫切需要发展并行计算技术的主要原因1)单处理器性能提升达到极限2)爆炸性增长的大规模数据量2)超大的计算量/计算复杂度2.并行计算技术的分类有哪些主要的并行计算分类方法?1)按数据和指令处理结构:弗林(Flynn)分类2)按并行类型3)按存储访问构架4)按系统类型5)按计算特征6)按并行程序设计模型/方法1)按数据和指令处理结构:弗林(Flynn)分类SISD:单指令单数据流传统的单处理器

2、串行处理SIMD:单指令多数据流向量机,信号处理系统MISD:多指令单数据流很少使用MIMD:多指令多数据流最常用,TOP500高性能计算机基本都属于MIMD类型2)按并行类型分类位级并行(Bit-LevelParallelism)指令级并行(ILP:Instruction-LevelParallelism)线程级并行(Thread-LevelParallelism)数据级并行:一个大的数据块划分为小块,分别由不同的处理器/线程处理任务级并行:一个大的计算任务划分为子任务分别由不同的处理器/线程来处理3)按存储访问结构分类A.共享内存(SharedMemory)

3、所有处理器通过总线共享内存多核处理器,SMP……也称为UMA结构(UniformMemoryAccess)B.分布共享存储体系结构各个处理器有本地存储器同时再共享一个全局的存储器C.分布式内存(DistributedMemory)各个处理器使用本地独立的存储器B和C也统称为NUMA结构(Non-UniformMemoryAccess)4)按系统类型分类多核/众核并行计算系统MC(Multicore/Manycore)或Chip-levelmultiprocessing,CMP对称多处理系统SMP(SymmetricMultiprocessing)多个相同类型处理

4、器通过总线连接并共享存储器大规模并行处理MPP(MassiveParallelProcessing)专用内联网连接一组处理器形成的一个计算系统集群(Cluster)网络连接的一组商品计算机构成的计算系统网格(Grid)用网络连接远距离分布的一组异构计算机构成的计算系统5)按并行程序设计模型/方法分类共享内存变量(SharedMemoryVariables)消息传递方式(MessagePassing)MapReduce方式3.并行计算的主要技术问题并行计算有哪些方面的主要技术问题?多核/多处理器网络互连结构技术存储访问体系结构分布式数据与文件管理并行计算任务分解与

5、算法设计并行程序设计模型和方法数据同步访问和通信控制可靠性设计与容错技术并行计算软件框架平台系统性能评价和程序并行度评估如何评估程序的可并行度(Amdahl定律)程序能得到多大并行加速依赖于该程序有多少可并行计算的比例。经典的程序并行加速评估公式Amdahl定律:其中,S是加速比,P是程序可并行比例,N是处理器数目根据Amdahl定律:一个并行程序可加速程度是有限制的,并非可无限加速,并非处理器越多越好并行比例vs加速比50%=>最大2倍75%=>最大4倍90%=>最大10倍95%=>最大20倍4.MPI并行程序设计MessagePassingInterface

6、,基于消息传递的高性能并行计算编程接口5.什么是MapReduce概念MapReduce是面向大规模数据并行处理的:(1)基于集群的高性能并行计算平台(ClusterInfrastructure),(硬件层)允许用市场上现成的普通PC或性能较高的刀架或机架式服务器,构成一个包含数千个节点的分布式并行计算集群(2)并行程序开发与运行框架(SoftwareFramework)(逻辑层)系统自动提供了一个庞大但设计精良的并行计算软件构架,能自动完成计算任务的并行化处理,自动划分计算数据和计算任务,在集群节点上自动分配和执行子任务以及收集计算结果,将数据分布存储、数据通

7、信、容错处理等并行计算中的很多复杂细节交由系统负责处理,大大减少了软件开发人员的负担(3)并行程序设计模型与方法(ProgrammingModel&Methodology)(用户层)借助于函数式Lisp语言中的设计思想,提供了一种简便的并行程序设计方法,用Map和Reduce两个函数编程实现基本的并行计算任务,提供了完整的并行编程接口,完成大规模数据处理6.为什么MapReduce如此重要?1)高效的大规模数据处理方法2)第一个不同于冯诺依曼结构的、基于集群而非单机的计算方式的重大突破3)目前为止最为成功的基于大规模计算资源的并行计算抽象方法CH.2.MapRe

8、duce简介1.MapR

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。