摘要 | 第5-6页 |
abstract | 第6-7页 |
第一章 绪论 | 第11-15页 |
1.1 背景及意义 | 第11-12页 |
1.2 国内外研究现状和发展态势 | 第12页 |
1.3 研究内容及主要工作 | 第12-13页 |
1.4 章节安排 | 第13-15页 |
第二章 相关技术和基础理论介绍 | 第15-30页 |
2.1 内存索引 | 第15-20页 |
2.1.1 索引概述 | 第15页 |
2.1.2 常见树形索引总览 | 第15-16页 |
2.1.3 B+树 | 第16页 |
2.1.4 Masstree | 第16-18页 |
2.1.5 Adaptive radix tree | 第18-20页 |
2.2 InfiniBand | 第20-23页 |
2.2.1 InfiniBand的拓扑结构 | 第20-21页 |
2.2.2 InfiniBand的分层架构 | 第21-22页 |
2.2.3 RDMA技术 | 第22-23页 |
2.3 一致性协议 | 第23-27页 |
2.3.1 分布式系统中CAP理论 | 第23-25页 |
2.3.2 两阶段提交协议 | 第25-26页 |
2.3.3 Paxos协议 | 第26-27页 |
2.4 事务提交关键技术 | 第27-29页 |
2.4.1 VoltDB中分布式事务 | 第27-29页 |
2.4.2 Spanner中的分布式事务 | 第29页 |
2.5 本章小结 | 第29-30页 |
第三章 行式数据引擎的总体设计 | 第30-54页 |
3.1 系统背景 | 第30-32页 |
3.2 需求分析 | 第32-34页 |
3.2.1 功能性需求 | 第32-34页 |
3.2.2 非功能性需求 | 第34页 |
3.3 行式事务引擎设计 | 第34-49页 |
3.3.1 数据引擎总体说明 | 第34-35页 |
3.3.2 行式数据引擎架构设计 | 第35-36页 |
3.3.3 分布式事务的设计 | 第36-46页 |
3.3.3.1 写类事务的流程 | 第36-38页 |
3.3.3.2 Paxos Group的设计 | 第38-41页 |
3.3.3.3 事务序号器的设计 | 第41-42页 |
3.3.3.4 事务执行器的设计 | 第42-44页 |
3.3.3.5 事务的并发控制设计 | 第44-46页 |
3.3.4 容错与恢复 | 第46-48页 |
3.3.4.1 检查点的建立与恢复 | 第46-48页 |
3.3.5 数据存储与索引 | 第48-49页 |
3.3.5.1 对表中数据操作的存储 | 第48-49页 |
3.3.5.2 整行数据追加至表末尾的存储 | 第49页 |
3.4 对其他子系统的接口 | 第49-53页 |
3.4.1 对OLAP子系统读取最新数据的支持 | 第49-51页 |
3.4.2 数据的迁移流程 | 第51-53页 |
3.5 本章小结 | 第53-54页 |
第四章 行式数据引擎的实现 | 第54-77页 |
4.1 基于InfiniBand RDMA的网络通信模块 | 第54-61页 |
4.1.1 链接的建立 | 第54-56页 |
4.1.2 消息的收发 | 第56-57页 |
4.1.3 网络通信库的封装 | 第57-61页 |
4.1.3.1 基础协议类型 | 第57-58页 |
4.1.3.2 网络通信库的实现 | 第58-61页 |
4.2 协议适配模块 | 第61-64页 |
4.2.1 协议的设计 | 第61-63页 |
4.2.2 协议回调 | 第63-64页 |
4.3 事务序号器的实现 | 第64-67页 |
4.4 事务执行器的实现 | 第67-71页 |
4.4.1 事务上下文 | 第68-69页 |
4.4.2 确定性锁 | 第69-71页 |
4.5 PaxosGroup的实现 | 第71-72页 |
4.6 数据管理的实现 | 第72-74页 |
4.6.1 静态数据存储的实现 | 第72-73页 |
4.6.2 索引的实现 | 第73-74页 |
4.7 任务管理的实现 | 第74-76页 |
4.7.1 数据沉降任务的实现 | 第74-75页 |
4.7.2 OLAP子系统查询任务的实现 | 第75-76页 |
4.8 本章小结 | 第76-77页 |
第五章 系统测试 | 第77-89页 |
5.1 测试环境 | 第77-78页 |
5.2 功能测试 | 第78-83页 |
5.2.0 查询任务执行DAG生成测试 | 第79-80页 |
5.2.1 数据查询测试 | 第80页 |
5.2.2 数据插入测试 | 第80-81页 |
5.2.3 数据修改测试 | 第81-82页 |
5.2.4 数据删除测试 | 第82-83页 |
5.2.5 数据沉降测试 | 第83页 |
5.3 性能测试 | 第83-88页 |
5.3.1 事务性能测试 | 第84-88页 |
5.4 本章小结 | 第88-89页 |
第六章 总结与展望 | 第89-90页 |
致谢 | 第90-91页 |
参考文献 | 第91-94页 |
攻硕期间取得的研究成果 | 第94-95页 |