upfilesfiles5_基于Hadoop的云编程.ppt.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
upfilesfiles5_基于Hadoop的云编程.ppt.ppt

第五章 基于Hadoop的云编程 郝卫东 内容 5.1 并行计算概述 5.2 Hadoop概述 5.3 HDFS(Hadoop Distributed File System) 5.4 MapReduce 5.5 HBase 5.6 Zookeeper 5.7 Hadoop的程序实例运行与分析 5.1 并行计算概述 5.1.1 并行计算定义 5.1.2并行计算的体系结构 5.1.3 集群计算 5.1.4并行计算的进程模型 5.1.5并行编程模型 5.1.6 并行计算发展阶段 5.1.1 并行计算定义 并行计算是相对于串行计算而言的,它的基本思路是用多个处理器来同时协调求解一个问题,即将需要求解的问题分解成若干个部分,各部分分配给一个独立的处理机来进行并行计算。 在分类上可分为时间上的并行和空间上的并行。 时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。 并行计算的研究得益于科学计算问题,但目前以MapReduce为代表的分割数据型并行计算在商业领域也得到广泛应用。 5.1.2并行计算的体系结构 目前,主要的并行计算体系结构有以下四种: 对称多处理(SMP:Symmetrical Multi-Processing):它由处理单元、高速缓存、总线或交叉开关、共享内存以及 I/0等组成。 大规模并行处理(MPP:Massively Parallel Processing):它是并行计算机发展过程中的主力,现在已经发展到由上万个处理机构成一个系统。 分布式共享存储多处理(DSM:Distributed Shared-Memory):它较好地改善了 SMP 的可扩展能力,是目前高性能计算机的主流发展方向之一。 集群(Cluster):Linux 平台的集群系统己成为最流行的高性能计算平台,在高性能计算机中占有越来越大的比重,系统规模可从单机、少数几台联网的微机直到包括上千个节点的大规模并行系统,既可作为廉价的并行程序调试环境,也可设计成真正的高性能计算机。 SMP系统与MPP系统比较 SMP系统与MPP系统比较 理想的共享存储多处理器 基于总线的DSM 多处理器结构 5.1.4并行计算的进程模型 主从模式(Master-slave):有一个主进程,其它为从进程。在这种模式中,主进程一般负责整个并行程序的数据控制,从进程负责对数据的处理和计算任务,当然,主进程也可以参与对数据的处理和计算。一般情况下,从进程之间不需要发生数据交换,数据的交换过程是通过主进程来完成的。 对等模式:在这种编程模式中,没有哪个进程是主进程,每个进程的地位是相同的。对等模式即参与运算的各进程地位相同,计算程序一致,只是处理的数据不同。然而,在并行实现过程中,我们总是要在这些进程中选择一个进行输入输出的进程,它扮演的角色和主进程类似。 5.1.5并行编程模型 并行编程模型是并行算法和并行计算机硬件结构间的桥梁,它用并行编程接口的形式提供给程序开发员,程序开发员通过这种并行编程接口编写并行程序,从而实现并行算法。 并行编程模型 并行编程模型比较流行的是消息传递模型 MPI(Message Passing Interface),共享存储模型OpenMP以及数据并行模型。 共享存储模式:以OpenMP为代表,主要是利用添加并行化指令到串行程序中,由编译器完成自动并行化。 消息传递模式:以MPI为代表,PVM(并行虚拟机,Parallel Virtual Machine Computing )是消息传递模式的一个变种。 数据并行模式:MapReduce是数据并行计算模型的典范,在云计算领域被广泛采用。 并行编程模型 可以这样打比方: 作并行计算好比是盖楼房,你有了MPI就好比是有了砂石,水泥和钢材,你可以盖最美的房子,但你必须使用最原始状态的原材料,付出可观的智力劳动; 你有了OpenMP就好比是有了预制板和各种预制件,可以非常快速地造房子,事半功倍; 你有了数据并行环境,可以比作你有了包工头,很多事情您就可以完全依靠他了。 也许比喻方式不是很恰当,但是三种编程模式的优劣、效率是很有差别的,可以不夸张地说OpenMP比MPI要容易很多倍。 MPI MPI(Message Passing Interface)是消息传递并行程序设计的标准之一. MPI正成为并行程序设计事实上的工业标准。 MPI的实现包括MPICH、LAM、IBM MPL等多个版本,最常用和稳定的是MPICH,曙光天潮系列的MPI以MPICH为基础进行了定制和优化。 然而,MPI同样存在着一些不足。由于进程的唯一性和显式消息传递的特点,加上MPI标准繁琐,从而使得基于其开发并行程序也相当复杂。在通信上也会造成很大的开销 OpenMP OpenMP提供了对并

您可能关注的文档

文档评论(0)

zhongshanmen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档