




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Ch. 1. Ch. 1. 并行计算技术简介并行计算技术简介n提高计算机性能有哪些基本技术手段提高字长,流水线微体系结构技术,提高集成度,提升主频n迫切需要发展并行计算技术的主要原因单处理器性能提升达到极限爆炸性增长的大规模数据量超大的计算量/计算复杂度n有哪些主要的并行计算分类方法?按数据和指令处理结构:弗林(Flynn)分类按并行类型按存储访问构架按系统类型按计算特征按并行程序设计模型/方法Ch. 1. Ch. 1. 并行计算技术简介并行计算技术简介n并行计算有哪些方面的主要技术问题?多核/多处理器网络互连结构技术存储访问体系结构分布式数据与文件管理并行计算任务分解与算法设计并行程序设计模
2、型和方法数据同步访问和通信控制可靠性设计与容错技术并行计算软件框架平台系统性能评价和程序并行度评估n如何评估程序的可并行度(Amdahl定律)Ch. 1. Ch. 1. 并行计算技术简介并行计算技术简介nMPI功能与特点nMPI程序结构nMPI基本编程接口nMPI编程实例处理数据的能力大幅落后于数据增长海量数据隐含着更准确的事实n什么是MapReduce?基于集群的高性能并行计算平台(Cluster Infrastructure)并行程序开发与运行框架(Software Framework)并行程序设计模型与方法(Programming Model & Methodology)n为什么MapR
3、educe如此重要?高效的大规模数据处理方法改变了大规模尺度上组织计算的方式第一个不同于冯诺依曼结构的、基于集群而非单机的计算方式的重大突破目前为止最为成功的基于大规模计算资源的并行计算抽象方法Ch.2.Ch.2. MapReduceMapReduce简介简介n大数据分而治之的并行化计算n大数据任务划分和并行计算模型 n主要设计思想:为大数据处理过程中的两个主要处理操作提供一种抽象机制n典型的流式大数据问题的特征nMap和Reduce操作的抽象描述提供一种抽象机制,把做什么和怎么做分开,程序员仅需要描述做什么,不需要关心怎么做n基于Map和Reduce的并行计算模型和计算过程Ch.2.Ch.2
4、. MapReduceMapReduce简介简介n主要需求、目标和设计思想实现自动并行化计算为程序员隐藏系统层细节nMapReduce提供统一的构架并完成以下的主要功能任务调度数据/代码互定位出错处理分布式数据存储与文件管理Combiner和Partitioner向“外”横向扩展,而非向“上”纵向扩展失效被认为是常态把计算处理向数据迁移顺序处理数据、避免随机访问数据为应用开发者隐藏系统层细节平滑无缝的可扩展性Ch.3. Google MapReduceCh.3. Google MapReduce基本构架基本构架nGoogle MapReduce并行处理的基本过程n失效处理n带宽优化n计算优化n
5、用数据分区解决数据相关性问题nGoogle GFS的基本设计原则廉价本地磁盘分布存储多数据自动备份解决可靠性为上层的MapReduce计算框架提供支撑nGoogle GFS的基本构架和工作原理GFS Master的主要作用GFS ChunkServer的主要作用数据访问工作过程GFS的系统管理技术Ch.3. Google MapReduceCh.3. Google MapReduce基本构架基本构架nBigTable的基本作用和设计思想nBigTable设计动机和目标需要存储多种数据海量的服务请求商用数据库无法适用nBigTable数据模型多维表一个行关键字(row key)一个列关键字(co
6、lumn key)一个时间戳(time stamp)nBigTable基本构架子表服务器子表存储结构SSTable(对应于GFS数据块)子表数据格式子表寻址nHDFS的基本特征nHDFS基本构架 NameNode的作用 DataNode的作用nHDFS数据分布设计nHDFS可靠性与出错恢复nHDFS的安装和启动nHDFS文件系统操作命令nHadoop MapReduce基本构架与工作过程 JobTracker的作用 TaskTracker的作用 MapReduce作业执行过程nHadoop MapReduce主要组件文件输入格式InputFormat输入数据分块InputSplits数据记录读
7、入RecordReaderMapperCombinerPartitioner & ShuffleReducer文件输出格式OutputFormatn容错处理与计算性能优化nHBase的逻辑模型nHBase数据模型nHBase物理存储格式nHBase子表服务器nHBase主服务器n单机方式n单机伪分布方式n集群分布模式n程序开发与提交作业基本过程n集群分布方式下远程提交作业n基本算法n复杂算法或应用n用复合键让系统完成排序n把小的键值对合并成大的键值对nHadoop内置的数据类型n用户自定义数据类型需要实现Writable接口作为key或者需要比较大小时则需要实现WritableComparab
8、le接口nHadoop内置的文件输入格式TextInputFormatKeyValueTextInputFormatnHadoop内置的RecordReaderLineRecordReaderKeyValueLineRecordReadern用户自定义InputFormat和RecordReader的方法NewInputFormat extends FileInputFormatNewRecordReader extends RecordReaderjob.setInputFormatClass(NewInputFormat.class)nHadoop内置的文件输出格式TextOutputFo
9、rmatKeyValueTextOutputFormatnHadoop内置的RecordWriterLineRecordWritern用户自定义OutputFormat和RecordWriter的方法NewOutputFormat extends FileOutputFormatNewRecordWriter extends RecordWriterjob.setOutputFormatClass(NewOutputFormat.class)n定制Partitionero Class NewPartitionerNewPartitioner extends HashPartitioner /
10、override the method getPartition getPartition(K key, V value, int numReduceTasks) o Job. setPartitionerClassJob. setPartitionerClass(NewPartitioner)n定制Combinero public static class NewCombinerNewCombiner extends Reducer / 实现reduce方法 public void reduce(Text key, Iterable values, Context context) thro
11、ws IOException, InterruptedException oJob. setCombinerClass(NewCombiner)Job. setCombinerClass(NewCombiner) nMapReduce子任务的顺序化执行n具有数据依赖关系的MapReduce子任务的执行nMapReduce前处理和后处理步骤的链式执行ChainMapper.addMapper()ChainReducer.addMapper()n用DataJoin类实现Reduce端Join连接主键GroupKey与记录标签TagDataJoinMapperBaseDataJoinReducerB
12、aseTaggedMapOutputMapper需要实现的抽象方法abstract Text generateInputTag(String inputFile)abstract TaggedMapOutput generateTaggedMapOutput(Object value)n用文件复制实现Map端Join 用distributed cache将一个或多个小数据量文件分布复制到所有节点上Job类中:public void addCacheFile(URI uri) 将一个文件放到distributed cache file中Mapper或Reducer的context类中: publ
13、ic Path getLocalCacheFiles() 获取设置在distributed cache files中的文件路径Replicated Joins方法的变化使用n带Map端过滤的Reduce端Joinn多数据源连接解决方法的限制n全局作业参数的传递Configuartion类专门提供以下用于保存和获取属性的方法mapper/reducer类初始化方法setup()从configuration对象中读出属性n全局数据文件的传递(见上distributed cache的使用)n查询任务相关信息n划分多个输出文件集合n输入输出到关系数据库n从数据库中输入数据 DBInputFormat:
14、提供从数据库读取数据的格式DBRecordReader:提供读取数据记录的接口n向数据库中输出计算结果 DBOutputFormat:提供向数据库输出数据的格式DBRecordWriter:提供向数据库写入数据记录的接口DBConfiguration提供数据库配置和创建连接的接口创建数据库连接:public static void configureDB(Job job, String driverClass, String dbUrl, String userName, String passwd)指定写入的数据表和字段: public static void setOutput(Job job, String tableName, String. fieldNames)n邻接矩阵n邻接表nPageRank的基本设计思想和设计原则nPageRank的简化模型及其缺陷nPageRank的随机浏览模型n随机浏览模型的PageRank公式n用MapReduce实现PageRankPhase1:GraphBuilderPhase2:PageRankIterPhase3:RankviewerPageRank迭代终止条件n单源最短路径nDijkst
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 邮储银行2025秦皇岛市秋招笔试英语题专练及答案
- 中国银行2025攀枝花市秋招群面模拟题及高分话术
- 2025行业数字化转型实施指南
- 2025行业创新驱动因素分析
- 建设银行2025盘锦市秋招笔试综合模拟题库及答案
- 交通银行2025宝鸡市信息科技岗笔试题及答案
- 交通银行2025绥化市金融科技岗笔试题及答案
- 交通银行2025运城市秋招笔试热点题型专练及答案
- 工商银行2025汕尾市秋招群面案例总结模板
- 工商银行2025数据分析师笔试题及答案黑龙江地区
- 政治学原理(第三版)课件 第1章 政治的性质与核心问题;第2章 政治学:研究方法与学科特点
- 开放北二期 有限空间作业专项方案 22.5.16
- 一年级行为好习惯养成教育课件
- 唐山市2024-2025学年度高三年级摸底演练 英语试卷(含答案)
- 2.1 认识自己 课件-2024-2025学年统编版道德与法治七年级上册
- 湖南省食品安全管理制度
- 城市道路与开放空间低影响开发雨水设施
- 装配式建筑装饰装修技术 课件 模块七 集成卫浴
- 人体解剖学(江西中医药大学)智慧树知到期末考试答案章节答案2024年江西中医药大学
- 数据挖掘与机器学习全套教学课件
- 高中物理必修三第九章《静电场及其应用》测试题(有答案解析)
评论
0/150
提交评论