摘要 | 第5-7页 |
ABSTRACT | 第7-8页 |
符号对照表 | 第12-13页 |
缩略语对照表 | 第13-17页 |
第一章 绪论 | 第17-21页 |
1.1 课题研究背景及意义 | 第17-18页 |
1.2 国内外研究现状 | 第18页 |
1.3 主要研究内容 | 第18-19页 |
1.4 论文结构安排 | 第19-21页 |
第二章 相关技术 | 第21-29页 |
2.1 Symphony | 第21-22页 |
2.1.1 EGO | 第21-22页 |
2.2 Spark | 第22-25页 |
2.2.1 简介 | 第22-23页 |
2.2.2 生态系统 | 第23-24页 |
2.2.3 工作机制 | 第24-25页 |
2.3 Zookeeper | 第25-29页 |
2.3.1 数据模型 | 第26页 |
2.3.2 Watcher | 第26-27页 |
2.3.3 典型应用场景 | 第27-29页 |
第三章 需求分析 | 第29-35页 |
3.1 项目背景 | 第29-32页 |
3.1.1 Symphony | 第29-31页 |
3.1.2 Spark On Ego | 第31-32页 |
3.2 需求分析 | 第32-35页 |
3.2.1 总体目标 | 第32页 |
3.2.2 需求分解 | 第32-33页 |
3.2.3 本章小结 | 第33-35页 |
第四章 开源社区中Spark Master节点高可用性的分析 | 第35-49页 |
4.1 Spark相关机制简介 | 第35-40页 |
4.1.1 整体架构 | 第35-36页 |
4.1.2 Master的启动过程 | 第36页 |
4.1.3 消息传递机制 | 第36-40页 |
4.2 开源Spark Master节点高可用性的配置及功能描述 | 第40-43页 |
4.2.1 基于文件系统的解决方案 | 第41-42页 |
4.2.2 基于ZooKeeper的解决方案 | 第42-43页 |
4.3 开源Spark Master节点高可用性的内部机制详述 | 第43-46页 |
4.3.1 故障恢复模式 | 第43-44页 |
4.3.2 zookeeperLeaderElectionAgent的实现 | 第44-45页 |
4.3.3 数据恢复流程 | 第45-46页 |
4.4 本章小结 | 第46-49页 |
第五章 基于EGO的Spark Master节点高可用性的设计与实现 | 第49-67页 |
5.1 Master高可用特性的总体流程概述 | 第49-50页 |
5.2 Master进程重启及Leader Master选举过程的设计与实现 | 第50-51页 |
5.2.1 Master进程的启动 | 第50页 |
5.2.2 故障恢复策略的选择 | 第50-51页 |
5.2.3 元数据信息的存储和Leader Master的选举 | 第51页 |
5.3 数据获取过程的设计与实现 | 第51-56页 |
5.3.1 元数据信息的获取 | 第52页 |
5.3.2 Ego端资源信息的获取 | 第52-54页 |
5.3.3 Driver端信息的获取 | 第54-56页 |
5.4 数据同步过程的设计与实现 | 第56-64页 |
5.4.1 Master端类的结构 | 第57-59页 |
5.4.2 元数据信息获取后的同步过程 | 第59-60页 |
5.4.3 Ego端资源信息获取后的同步过程 | 第60-61页 |
5.4.4 Driver端任务调度信息获取后的同步过程 | 第61-64页 |
5.5 Master高可用特性总体流程的设计与实现 | 第64-67页 |
第六章 测试 | 第67-79页 |
6.1 项目功能描述 | 第67页 |
6.2 测试环境 | 第67页 |
6.3 测试用例 | 第67-79页 |
6.3.1 ZOOKEEPER模式相关的测试用例 | 第67-71页 |
6.3.2 FILESYSTEM模式相关的测试用例 | 第71-75页 |
6.3.3 配置参数相关的测试用例 | 第75-77页 |
6.3.4 极端情况测试用例 | 第77-79页 |
第七章 结束语 | 第79-81页 |
7.1 总结 | 第79页 |
7.2 展望 | 第79-81页 |
附录 | 第81-83页 |
参考文献 | 第83-87页 |
致谢 | 第87-89页 |
作者简介 | 第89页 |