首页> 中文学位 >基于MapReduce的分布式编程框架的设计与实现
【6h】

基于MapReduce的分布式编程框架的设计与实现

代理获取

目录

摘 要

Abstract

第1章 绪 论

1.1 课题背景及研究的目的和意义

1.2 MapReduce及其相关理论的发展概况

1.2.1 MapReduce研究综述

1.2.2 并行计算研究综述

1.3 本文的主要研究内容

第2章 系统需求分析与概要设计

2.1 应用背景分析

2.2 业务流程分析

2.3 体系结构与功能结构

2.2.1 作业控制模块

2.2.2 Master任务调度模块

2.2.3 Map工作节点

2.2.4 Reduce工作节点

2.4 用户接口

2.5 关键技术

2.5.1 容错

2.5.2 中间结果分类

2.6 与其它MapReduce的框架实现的差异

2.7 本章小结

第3章 系统详细设计与实现

3.1 引言

3.2 作业控制模块

3.2.1 配置输入与文件校验

3.2.2 初始化输入数据

3.2.3 启动工作节点

3.2.4 分发程序与数据

3.3 Master任务调度

3.3.1 任务调度中的关键策略

3.3.2 Master节点详细设计

3.4 Map工作节点

3.5 Reduce工作节点

3.6 本章小结

第4章 系统测试

4.1 系统功能测试

4.1.1 作业控制模块启动作业

4.1.2 Master任务调度

4.1.3 计算结果

4.2 系统性能测试

4.2.1 性能测试指标

4.2.2 性能测试程序

4.2.3 性能测试结果

4.2.4 性能问题与优化

4.3 本章小结

结 论

参考文献

哈尔滨工业大学学位论文原创性声明及使用授权说明

致 谢

个人简历

展开▼

摘要

作为一个拥有广大用户群的桌面产品,腾讯公司QQ电脑管家每天都会产生海量的用户数据。后台中心对于用户数据的处理与分析对于改进产品具有重大的意义。公司数据平台部的计算资源需要支持核心业务因而申请成本高,所以搭建一个灵活有效的分布式计算框架,利用空闲的开发机计算资源来完成日常统计与数据处理工作具有较高的实际意义。
  MapReduce作为一个海量数据处理的架构被广泛用于各大领域之中。本文通过对于MapReduce架构的研究,进而提出并设计实现了一种基于MapReduce的分布式编程框架来简化对于日常海量数据处理的编程工作,以满足管家后台的数据处理需求。在设计与实现过程中,重点放在了此编程框架的任务调度与容错功能上面,以期待获得良好的错误恢复能力。在功能测试方面,本文使用一个QQ加速状态上报的词频统计程序来进行测试,并人工对一个处理节点施加障碍以验证容错机制是否可以探查到落后任务的产生。在性能测试方面,本文使用了词频统计程序与记录排序程序来模拟日常需求中的统计与数据处理问题。基于这两个测试程序对本框架的任务响应时间,总机器时间与加速比进行了分析,以证明本编程框架的确具备处理海量数据的能力。
  通过以上完成的工作,本框架可以搭建在后台中心的开发机群上以完成管家日常统计工作与数据处理工作的计算任务,并具有良好的计算能力、容错性与可扩展性。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号