第一部分 相关研究 1
1 绪论 1
1.1 研究意义 1
1.2 研究现状 2
1.2.1 MapReduce作业资源分配 2
1.2.2 MapReduce作业数据放置 3
1.2.3 MapReduce作业调度算法 5
1.3 本章小结 8
2 相关技术 9
2.1 Hadoop系统架构 9
2.2 分布式文件系统 10
2.3 MapReduce编程模型 12
2.3.1 MapReduce并行编程模型的系统框架 12
2.3.2 MapReduce作业执行过程 13
2.3.3 MapReduce作业执行示例 14
2.4 本章小结 16
第二部分 MapReduce作业动态资源分配方法 17
3 MapReduce作业动态资源分配框架 17
3.1 MapReduce作业动态资源分配问题 17
3.2 MapReduce作业动态资源分配框架描述 19
3.3 本章小结 22
4 MapReduce作业动态资源分配算法 23
4.1 作业资源需求变化事件感知 23
4.2 MapReduce作业Slot资源需求量计算 26
4.3 MapReduce作业动态资源分配数学模型及求解 30
4.4 实验对比及分析 34
4.4.1 实验环境 34
4.4.2 实验方案及对比 35
4.5 本章小结 38
第三部分 关联感知的MapReduce作业数据放置方法 39
5 基于数据块间作业访问关联性的数据放置算法 39
5.1 问题定义 39
5.2 算法模型 41
.5.2.1 数据块间作业访问关联关系表示模型构建 41
5.2.2 作业访问关联数据块放置算法 45
5.3 实验分析 50
5.3.1 实验环境 50
5.3.2 实验方案及结果 51
5.4 本章小结 53
6 基于join访问关联性的多输入文件数据放置算法 54
6.1 问题定义 54
6.2 算法模型 56
6.2.1 数据块间join访问关联关系表示模型构建 56
6.2.2 具有join访问关联关系的数据块放置问题数学模型及求解算法 57
6.3 实验分析 59
6.4 本章小结 60
第四部分 多MapReduce作业合并调度方法 61
7 合并调度框架 61
7.1 问题描述 61
7.2 框架描述 65
7.3 本章小结 69
8 面向共享读的多MapReduce作业合并算法 70
8.1 问题定义 70
8.2 算法模型 76
8.3 实验分析 80
8.3.1 实验环境 80
8.3.2 实验方案及结果 82
8.4 本章小结 85
9 面向共享Map输出的多MapReduce作业合并算法 86
9.1 MapReduce作业数据处理流程 86
9.2 面向共享Map输出的多MapReduce作业合并问题描述 88
9.3 面向共享Map输出的中间数据量估计 90
9.4 算法模型 91
9.5 实验分析 93
9.6 本章小结 95
第五部分 考虑虚拟机间性能互扰的MapReduce作业调度方法 96
10 考虑虚拟机间性能互扰的MapReduce作业调度框架 96
10.1 目前主流的MapReduce作业调度方法分析 96
10.1.1 FIFO调度 96
10.1.2 HOD调度 97
10.1.3 公平调度 97
10.1.4 计算能力调度 98
10.2 虚拟机环境MapReduce作业调度面临的问题 99
10.3 考虑虚拟机间性能互扰的MapReduce作业调度方法框架描述 102
10.4 本章小结 104
11 虚拟机间性能互扰度量方法 105
11.1 虚拟机间性能互扰度量模型构建 105
11.2 实验分析 110
11.3 本章小结 113
12 考虑虚拟机间性能互扰的MapReduce作业调度机制 114
12.1 下一时间间隔空闲槽计算算法 115
12.1.1 MapReduce作业调度心跳机制 115
12.1.2 基于任务执行进度的任务剩余执行时间估计 116
12.1.3 基于任务剩余执行时间的下一时间间隔空闲槽计算算法 117
12.2 MapReduce作业全局优化调度算法 118
12.2.1 问题描述 119
12.2.2 算法描述 120
12.3 实验分析 121
12.4 本章小结 123
参考文献 124