致谢 | 第5-6页 |
摘要 | 第6-7页 |
ABSTRACT | 第7-8页 |
1 引言 | 第12-18页 |
1.1 研究背景 | 第12-13页 |
1.2 研究现状 | 第13-15页 |
1.2.1 Spark SQL国内外研究现状 | 第13-14页 |
1.2.2 Spark Join国内外研究现状 | 第14-15页 |
1.3 研究内容与意义 | 第15-17页 |
1.4 本文组织结构 | 第17页 |
1.5 本章小结 | 第17-18页 |
2 相关技术简介 | 第18-30页 |
2.1 SQL查询优化概念和技术 | 第18页 |
2.2 分布式文件系统HDFS | 第18-21页 |
2.2.1 HDFS系统架构 | 第19-20页 |
2.2.2 HDFS关键问题 | 第20-21页 |
2.3 Spark计算框架 | 第21-24页 |
2.3.1 弹性分布式数据集RDD | 第22-23页 |
2.3.2 Spark生态系统 | 第23-24页 |
2.4 Spark SQL | 第24-28页 |
2.4.1 分布式数据集DataFrame | 第24-26页 |
2.4.2 优化器Catalyst | 第26-27页 |
2.4.3 Spark Join分析 | 第27-28页 |
2.5 Partial Bloom Filter数据结构 | 第28-29页 |
2.6 本章小节 | 第29-30页 |
3 优化器Catalyst的深入研究 | 第30-49页 |
3.1 Catalyst数据类型 | 第30-32页 |
3.2 Catalyst数据操作 | 第32-33页 |
3.3 Catalyst优化流程 | 第33-37页 |
3.3.1 Analysis阶段 | 第34页 |
3.3.2 Logical Optimization阶段 | 第34-35页 |
3.3.3 Physical Planning阶段 | 第35-36页 |
3.3.4 Code Generation阶段 | 第36-37页 |
3.4 实验平台上进行的查询优化实验及实验分析 | 第37-48页 |
3.4.1 常用的操作 | 第37-40页 |
3.4.2 不同数据源的操作 | 第40-42页 |
3.4.3 不同查询的实验操作 | 第42-45页 |
3.4.4 查询的优化操作 | 第45-48页 |
3.5 本章小节 | 第48-49页 |
4 基于Partial Bloom Filter的Spark大表间关联优化 | 第49-60页 |
4.1 Spark SQL 中的Join操作 | 第49-50页 |
4.2 PBF Join算法描述 | 第50-52页 |
4.3 PBF Join算法实现 | 第52-55页 |
4.3.1 位数组生成 | 第52-55页 |
4.3.2 过滤与连接 | 第55页 |
4.4 PBF Join算法理论分析 | 第55-59页 |
4.4.1 实现代价分析 | 第55-58页 |
4.4.2 应用场景分析 | 第58-59页 |
4.5 本章小节 | 第59-60页 |
5 实验测试与分析 | 第60-70页 |
5.1 实验环境 | 第60-63页 |
5.1.1 Hadoop平台搭建 | 第60-63页 |
5.1.2 Spark平台搭建 | 第63页 |
5.2 测试设计与准备 | 第63-64页 |
5.2.1 实验设计 | 第63页 |
5.2.2 测试数据 | 第63-64页 |
5.3 对比测试及分析 | 第64-69页 |
5.3.1 等值连接测试 | 第64-68页 |
5.3.2 计算框架测试 | 第68-69页 |
5.4 本章小节 | 第69-70页 |
6 总结与展望 | 第70-72页 |
6.1 工作总结 | 第70-71页 |
6.2 研究展望 | 第71-72页 |
参考文献 | 第72-74页 |
作者简历及攻读硕士学位期间取得的研究成果 | 第74-76页 |
学位论文数据集 | 第76页 |