大数据分析相关技术,软件工程硕士论文.docx
《大数据分析相关技术,软件工程硕士论文.docx》由会员分享,可在线阅读,更多相关《大数据分析相关技术,软件工程硕士论文.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、大数据分析相关技术,软件工程硕士论文本篇论文目录导航:【题目】【文章里 hadoop可能会出现 n 屡次,那么 map 输出文件冗余就会很多,因而在 reduce 计算前对一样的 key 做一个合并操作,那么文件会变小,这样就提高了宽带的传输效率,毕竟 hadoop 计算力宽带资源往往是计算的瓶颈也是最为难得珍贵的资源,但是 combiner 操作是有风险的,使用它的原则是combiner 的输入不会影响到 reduce 计算的最终输入,例如:在求总数,最大值,最小值时能够使用 combiner,但是做平均值计算使用 combiner 的话,最终的 reduce 计算结果就会出错。 dshuf
2、fle 阶段: shuffle 就是将 map 的输出结果作为 reduce 的输入的数据的经过,这个是 mapreduce 优化的重点地方。这里我不讲怎么优化 shuffle 阶段,说说 shuffle 阶段的原理,由于大部分的书籍里都没讲清楚 shuffle 阶段。Shuffle 一开场就是 map 阶段做输出操作, mapreduce 计算的一般都是海量的数据,map 在输出时并不能将所有的文件都放到内存中进行操作,所以 map 写入磁盘的经过特别的复杂,更何况 map 输出时候要对结果进行排序,内存在开销方面花费是宏大的,map 在做输出时候,map 会在内存中打开一个类似环状内存缓冲
3、区,该缓冲区是专门用来做数据输出的,默认大小是 100mb,这个缓冲区在配置文件里被设定了一个默认是 0.80阀值,这个大小和阀值都是能够在配置文件里进行配置的,同时 map 也会启动守护线程在输出操作时,当缓冲区的内存到达了阀值 80%,那么守护线程就会在磁盘上写入内容,我们称这个操作经过叫 spill,其他磁盘的数据能够写进其他 20%内存,写入磁盘和内存这两个操作是互不干扰的,假如撑满了缓存区,那么写入内存的操作就会被 map 阻塞,让写入磁盘操作完成后再继续执行写入内存操作,前面我说到写入磁盘之前有一个排序操作,这个操作在是在写入磁盘时候进行,而不是在读入内存时候进行的,假如我们当时定
4、义了一个 combiner函数,那么 combiner 操作就会在排序前执行。 spill 操作就是在写入磁盘操作时候,写一个溢出文件。这个经过里还会有一个 Partitioner操作,对于这个操作很多人都很迷糊,其实 Partitioner 操作和 map 阶段的输入分片Input split很像,一个 Partitioner 对应一个 reduce,假设 mapreduce 只要一个 reduce 操作,那么 Partitioner就只要一个,假如我们有多个 reduce 操作,那么 Partitioner 对应的就会有多个,Partitioner 因而就是 reduce 的输入分片,这个
5、程序员能够编程控制,是根据 key 和 value 的值,根据实际业务或者更好的 reduce 负载平衡要求而进行,这也是提高 reduce 效率的关键。reduce 阶段一般合并 map 输出的文件,相对应的 map 输出文件会被 Partitioner 找到,接着进行复制操作,几个复制线程也会在复制操作时开启,这些线程通常默认是 5 个,复制线程的个数可以以被程序员在配置文件时更改,它的复制经过和 map 写入磁盘经过类似,也有阀值和内存大小,可以以在配置文件里配置阈值文件,能够直接使用 reduce 中的 tasktracker 的内存大小作为内存大小,合并文件和排序操作也会在 redu
6、ce 时进行,reduce 操作也会在这些操作结束后进行。 ereduce 阶段:和 map 函数一样也是程序员编写的,最终结果是存储在 hdfs 上的。 2HDFS 分布式文件系统。 hadoop 的分布式文件系统 hdfs 是一个用于在多个节点之间存储大型数据集的框架。HDFS主要由三个主要部分组成,namenode,datanodes 和 client.Namenode 存储 metadata 比方数据块的地址和文件的名字。Datanode 存储实际的数据。Client 是用来连接文件系统的。 3YARN:集群的管理和资源调度YARNYet Another Resource Negoti
7、ator,另一种资源协调者是一种新的 Hadoop 资源管理器,它是一个可为上层应用提供统一资源管理调度的通用资源管理系统,它的引入为集群在利用率、资源统一管理和数据分享等方面带来了宏大好处。Yarn 主要由下面几个部分组成: Client:资源管理的接口,用来提交 mapreduce 程序到集群。 Resource manager:管理资源。 Node manager:管理单节点的资源。 Application manager:管理但应用的任务。 Container:单节点的资源收集器。 同时,Hadoop 框架也存在着很大的缺点,对于低延迟数据访问无法适应、对同时存储大量小文件也无法做到、
8、对多用户写入和修改文件也不支持30.围绕 Hadoop 而开发的开源项目为了弥补 Hadoop 这些方面存在的缺陷正在逐步兴起,例如: Hive: 是一种按列式存储的分布式数据仓库,这种数据仓库能够管理存储在 HDFS 中的数据,并提供基于类似于 SQL 查询语言用来查询数据; Zookeeper:使一种可用性高的分布式的协调服务,它能够提供分布式锁之类的基本服务,这种服务能够用于构建分布式应用31; HBase:它是一个分布式按列存储数据库,HDFS 作为它的底层存储,同时也支持MapReduce 的批量计算与点查询。 2.3.2 SPARK 集群。 1简介。 Spark 使 UC berk
9、eley AMP lab 所开发的类似于 hadoop 的 mapreduce 的分布式通用计算框架。Spark 拥有所有 mapreduce 的优点,但是有一点不同的是 spark 的中间计算结果能够保存在内存中,所以不需要从 hdfs 中读写文件,所以 spark 对于机器学习和数据挖掘等迭代式的算法效率非常高32. Spark 能够很容易与 yarn 结合,并且能够直接从 hdfs,hbase 等文件系统中读取数据,它同时可以以架设在 hadoop 之上,近年来,spark 技术发展特别迅猛,而且这种计算框架也比hadoop 愈加灵敏方面,它一方面建设了数据处理的延时,另一方面提高了性能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文化交流
限制150内