摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第10-15页 |
1.1 研究工作的背景和意义 | 第10-11页 |
1.2 国内外研究历史及现状 | 第11-12页 |
1.3 本文的主要贡献与创新 | 第12-13页 |
1.4 本论文的结构安排 | 第13-15页 |
第二章 相关技术与系统 | 第15-26页 |
2.1 RDMA技术 | 第15-17页 |
2.2 通用内存分配器 | 第17-22页 |
2.2.1 TCMalloc | 第17-20页 |
2.2.2 jemalloc | 第20-22页 |
2.3 分布式数据库查询引擎 | 第22-25页 |
2.4 本章小结 | 第25-26页 |
第三章 基于RDMA的分布式内存数据库查询引擎总体设计 | 第26-41页 |
3.1 分布式内存数据库Goldfish架构 | 第26-28页 |
3.2 系统应用场景和设计目标 | 第28-29页 |
3.3 系统关键模块总体设计 | 第29-33页 |
3.3.1 分布式执行器总体设计 | 第29-32页 |
3.3.2 RMDA网络模块总体设计 | 第32-33页 |
3.4 系统主要流程设计 | 第33-39页 |
3.4.1 任务下发流程 | 第33-35页 |
3.4.2 任务执行流程 | 第35-36页 |
3.4.3 错误恢复流程 | 第36-37页 |
3.4.4 缓冲区内存池流程 | 第37-39页 |
3.5 本章小节 | 第39-41页 |
第四章 RDMA高性能网络框架关键技术 | 第41-56页 |
4.1 基于RDMA的高性能网络库 | 第41-47页 |
4.1.1 基本网络传输方式 | 第41-44页 |
4.1.2 基于RDMA的低延迟数据发送方式 | 第44-46页 |
4.1.3 基于RDMA的高吞吐数据发送方式 | 第46-47页 |
4.2 RDMA缓冲区内存池 | 第47-55页 |
4.2.1 内存池的多级缓存 | 第50-53页 |
4.2.2 基于Buddy算法的内存管理策略 | 第53-55页 |
4.3 本章小结 | 第55-56页 |
第五章 基于RDMA的分布式内存数据库查询引擎详细设计 | 第56-71页 |
5.1 RDMA网络模块的实现 | 第56-64页 |
5.1.1 Verbs API封装模块实现 | 第56-57页 |
5.1.2 连接管理模块实现 | 第57-58页 |
5.1.3 缓冲区内存池实现 | 第58-63页 |
5.1.4 RDMA网络总控模块实现 | 第63-64页 |
5.2 分布式执行器模块的实现 | 第64-69页 |
5.2.1 通用工具类的实现 | 第64-66页 |
5.2.2 执行器控制框架的实现 | 第66-68页 |
5.2.3 执行器任务框架的实现 | 第68-69页 |
5.3 本章小节 | 第69-71页 |
第六章 测试与分析 | 第71-83页 |
6.1 测试环境 | 第71-72页 |
6.1.1 硬件环境 | 第71页 |
6.1.2 系统部署 | 第71-72页 |
6.1.3 测试数据集 | 第72页 |
6.2 RDMA高性能网络库测试 | 第72-73页 |
6.3 Goldfish功能测试 | 第73-75页 |
6.3.1 Scan功能测试 | 第73-74页 |
6.3.2 Join功能测试 | 第74-75页 |
6.4 Goldfish性能测试 | 第75-82页 |
6.4.1 Scan性能测试 | 第76-79页 |
6.4.2 Join性能测试 | 第79-82页 |
6.5 本章小结 | 第82-83页 |
第七章 总结与展望 | 第83-84页 |
致谢 | 第84-85页 |
参考文献 | 第85-88页 |
攻硕期间取得的研究成果 | 第88页 |