摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第13-19页 |
1.1 内存数据库 | 第13页 |
1.2 联机事务处理 | 第13-15页 |
1.3 GPU与数据库 | 第15-17页 |
1.4 论文工作及主要贡献 | 第17页 |
1.5 论文内容安排 | 第17-19页 |
第二章 相关技术 | 第19-27页 |
2.1 内存数据库原理 | 第19-20页 |
2.2 多核处理器上的联机事务处理数据库Silo | 第20-22页 |
2.3 基于GPU的内存键值缓存系统Mega-KV | 第22页 |
2.4 GPU体系结构 | 第22-24页 |
2.5 统一计算设备架构CUDA | 第24-26页 |
2.5.1 执行模型 | 第24-26页 |
2.5.2 内存模型 | 第26页 |
2.6 本章小结 | 第26-27页 |
第三章 GPUTx-DB数据库系统关键问题和系统框架 | 第27-39页 |
3.1 问题分析 | 第27-28页 |
3.2 事务并发控制 | 第28-36页 |
3.2.1 事务号 | 第29-31页 |
3.2.2 锁的实现和预防死锁 | 第31-34页 |
3.2.3 事务执行并发控制协议 | 第34-35页 |
3.2.4 只读事务 | 第35-36页 |
3.3 持久化机制 | 第36-37页 |
3.3.1 事务日志 | 第36页 |
3.3.2 快照 | 第36-37页 |
3.4 GPUTx-DB系统框架 | 第37-38页 |
3.5 本章小结 | 第38-39页 |
第四章 GPUTx-DB内存数据库系统的设计与实现 | 第39-55页 |
4.1 初始化模块 | 第39-40页 |
4.2 流水线调度模块 | 第40-44页 |
4.2.1 事务的三阶段执行模型 | 第40-41页 |
4.2.2 流水线调度的设计 | 第41-43页 |
4.2.3 网卡RDMA优化数据传输 | 第43-44页 |
4.3 GPU设备内存管理器 | 第44-49页 |
4.3.1 问题分析与设计 | 第44-46页 |
4.3.2 内存对象和快照指针 | 第46-47页 |
4.3.3 设备内存的申请和释放 | 第47-48页 |
4.3.4 GPU设备内存资源调配 | 第48-49页 |
4.4 无锁哈希索引 | 第49-53页 |
4.4.1 问题分析数据结构 | 第49-51页 |
4.4.2 哈希表的基本操作 | 第51-53页 |
4.5 垃圾回收 | 第53页 |
4.6 系统监督模块 | 第53-54页 |
4.7 本章小结 | 第54-55页 |
第五章 实验评估 | 第55-65页 |
5.1 实验平台搭建 | 第55-56页 |
5.1.1 实验平台 | 第55-56页 |
5.2 影响GPUTx-DB系统系能的因素 | 第56-59页 |
5.2.1 YCSB工作负载 | 第56页 |
5.2.2 线程数量对GPUTx-DB性能的影响 | 第56-57页 |
5.2.3 读写比例对GPUTx-DB性能的影响 | 第57-58页 |
5.2.4 数据访问的均匀性对GPUTx-DB性能的影响 | 第58-59页 |
5.3 只读事务的优化执行机制 | 第59-60页 |
5.4 GPUTx-DB处理复杂事务的能力 | 第60-63页 |
5.4.1 TPCC工作负载 | 第60页 |
5.4.2 单仓库下线程的数量的性能试验 | 第60-62页 |
5.4.3 多仓库下可扩展性实验 | 第62页 |
5.4.4 GPUTx-DB与Silo的性能对比 | 第62-63页 |
5.5 本章小结 | 第63-65页 |
第六章 结束语 | 第65-67页 |
6.1 论文总结 | 第65页 |
6.2 进一步的工作 | 第65-67页 |
参考文献 | 第67-71页 |
致谢 | 第71-73页 |
在读期间发表的学术论文与取得的研究成果 | 第73页 |