课程复习提纲_第1页
课程复习提纲_第2页
课程复习提纲_第3页
课程复习提纲_第4页
课程复习提纲_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

复习大纲MapReduce海量数据并行处理南京大学计算机科学与技术系主讲人:黄宜华2011年春季学期鸣谢:本课程得到Google公司(北京)中国大学合作部精品课程计划资助Ch.1.并行计算技术简介1.为什么需要并行计算?提高计算机性能有哪些基本技术手段提高字长,流水线微体系结构技术,提高集成度,提升主频迫切需要发展并行计算技术的主要原因单处理器性能提升达到极限爆炸性增长的大规模数据量超大的计算量/计算复杂度2.并行计算技术的分类有哪些主要的并行计算分类方法?按数据和指令处理结构:弗林(Flynn)分类按并行类型按存储访问构架按系统类型按计算特征按并行程序设计模型/方法Ch.1.并行计算技术简介3.并行计算的主要技术问题并行计算有哪些方面的主要技术问题?多核/多处理器网络互连结构技术存储访问体系结构分布式数据与文件管理并行计算任务分解与算法设计并行程序设计模型和方法数据同步访问和通信控制可靠性设计与容错技术并行计算软件框架平台系统性能评价和程序并行度评估如何评估程序的可并行度(Amdahl定律)Ch.1.并行计算技术简介4.MPI并行程序设计MPI功能与特点MPI程序结构MPI基本编程接口MPI编程实例5.为什么需要大规模数据并行处理?处理数据的能力大幅落后于数据增长海量数据隐含着更准确的事实什么是MapReduce?基于集群的高性能并行计算平台(ClusterInfrastructure)并行程序开发与运行框架(SoftwareFramework)并行程序设计模型与方法(ProgrammingModel&Methodology)为什么MapReduce如此重要?高效的大规模数据处理方法改变了大规模尺度上组织计算的方式第一个不同于冯诺依曼结构的、基于集群而非单机的计算方式的重大突破目前为止最为成功的基于大规模计算资源的并行计算抽象方法Ch.2.

MapReduce简介1.对付大数据处理-分而治之大数据分而治之的并行化计算大数据任务划分和并行计算模型

2.构建抽象模型-Map和Reduce主要设计思想:

为大数据处理过程中的两个主要处理操作提供一种抽象机制典型的流式大数据问题的特征Map和Reduce操作的抽象描述

提供一种抽象机制,把做什么和怎么做分开,程序员仅需要描述做什么,不需要关心怎么做基于Map和Reduce的并行计算模型和计算过程Ch.2.

MapReduce简介3.上升到构架-自动并行化并隐藏低层细节主要需求、目标和设计思想实现自动并行化计算为程序员隐藏系统层细节MapReduce提供统一的构架并完成以下的主要功能任务调度数据/代码互定位出错处理分布式数据存储与文件管理Combiner和Partitioner4.MapReduce的主要设计思想和特征向“外”横向扩展,而非向“上”纵向扩展失效被认为是常态把计算处理向数据迁移顺序处理数据、避免随机访问数据为应用开发者隐藏系统层细节平滑无缝的可扩展性Ch.3.GoogleMapReduce基本构架1.MapReduce的基本模型和处理思想2.GoogleMapReduce的基本工作原理GoogleMapReduce并行处理的基本过程失效处理带宽优化计算优化用数据分区解决数据相关性问题3.分布式文件系统GFS的基本工作原理GoogleGFS的基本设计原则廉价本地磁盘分布存储多数据自动备份解决可靠性为上层的MapReduce计算框架提供支撑GoogleGFS的基本构架和工作原理GFSMaster的主要作用GFSChunkServer的主要作用数据访问工作过程GFS的系统管理技术Ch.3.GoogleMapReduce基本构架4.分布式结构化数据表BigTableBigTable的基本作用和设计思想BigTable设计动机和目标需要存储多种数据海量的服务请求商用数据库无法适用BigTable数据模型—多维表一个行关键字(rowkey)一个列关键字(columnkey)一个时间戳(timestamp)BigTable基本构架子表服务器子表存储结构SSTable(对应于GFS数据块)子表数据格式子表寻址Ch.4.

HadoopMapReduce基本构架1.Hadoop分布式文件系统HDFSHDFS的基本特征HDFS基本构架NameNode的作用DataNode的作用HDFS数据分布设计HDFS可靠性与出错恢复HDFS的安装和启动HDFS文件系统操作命令2.HadoopMapReduce的基本工作原理Hadoop

MapReduce基本构架与工作过程JobTracker的作用TaskTracker的作用MapReduce作业执行过程Ch.4.

HadoopMapReduce基本构架2.HadoopMapReduce的基本工作原理Hadoop

MapReduce主要组件文件输入格式InputFormat输入数据分块InputSplits数据记录读入RecordReaderMapperCombinerPartitioner&ShuffleReducer文件输出格式OutputFormat容错处理与计算性能优化3.分布式结构化数据表HBaseHBase的逻辑模型HBase数据模型HBase物理存储格式HBase子表服务器HBase主服务器Ch.5.

Hadoop系统安装运行与程序开发1.Hadoop安装方式单机方式单机伪分布方式集群分布模式2.单机Hadoop系统安装基本步骤3.集群Hadoop系统安装基本步骤4.Hadoop集群远程作业提交与执行程序开发与提交作业基本过程集群分布方式下远程提交作业5.HadoopMapReduce程序开发实验1:安装单机Hadoop系统Ch.6.

MapReduce算法设计1.MapReduce可解决哪些算法问题?基本算法复杂算法或应用2.回顾:MapReduce流水线3.MapReduce排序算法4.MapReduce单词同现分析算法5.MapReduce文档倒排索引算法6.实验2:莎士比亚文集WordCount实验实验3:莎士比亚文集倒排索引实验7.专利文献数据分析Ch.7.

高级MapReduce编程技术1.复合键值对的使用用复合键让系统完成排序把小的键值对合并成大的键值对2.用户自定义数据类型Hadoop内置的数据类型用户自定义数据类型需要实现Writable接口作为key或者需要比较大小时则需要实现WritableComparable接口3.用户自定义输入输出格式Hadoop内置的文件输入格式TextInputFormatKeyValueTextInputFormatHadoop内置的RecordReaderLineRecordReaderKeyValueLineRecordReaderCh.7.

高级MapReduce编程技术3.用户自定义输入输出格式用户自定义InputFormat和RecordReader的方法NewInputFormatextendsFileInputFormat<Text,Text>NewRecordReaderextendsRecordReader<Text,Text>job.setInputFormatClass(NewInputFormat.class)Hadoop内置的文件输出格式TextOutputFormatKeyValueTextOutputFormatHadoop内置的RecordWriterLineRecordWriter用户自定义OutputFormat和RecordWriter的方法NewOutputFormatextendsFileOutputFormat<Text,Text>NewRecordWriterextendsRecordWriter<Text,Text>job.setOutputFormatClass(NewOutputFormat.class)Ch.7.

高级MapReduce编程技术4.用户自定义Partitioner和Combiner定制PartitionerClassNewPartitionerextendsHashPartitioner<K,V>{//overridethemethodgetPartition(K

key,V

value,int

numReduceTasks)

{……}}Job.setPartitionerClass(NewPartitioner)定制CombinerpublicstaticclassNewCombinerextendsReducer<Text,IntWritable,Text,IntWritable>{//

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论