致谢 | 第5-6页 |
摘要 | 第6-7页 |
ABSTRACT | 第7-8页 |
目录 | 第9-12页 |
1 引言 | 第12-16页 |
1.1 论文背景及意义 | 第12-14页 |
1.2 主要研究内容 | 第14页 |
1.3 论文结构 | 第14-16页 |
2 相关技术研究 | 第16-25页 |
2.1 HBASE相关介绍 | 第16-17页 |
2.2 事务日志写入方法 | 第17-19页 |
2.2.1 预写式日志 | 第18页 |
2.2.2 BookKeeper日志流记录系统 | 第18-19页 |
2.3 并发控制数据锁定方法 | 第19-20页 |
2.3.1 悲观锁 | 第19页 |
2.3.3 乐观锁 | 第19-20页 |
2.4 分布式事务提交算法 | 第20-22页 |
2.4.1 二阶段提交协议 | 第20-22页 |
2.4.2 三阶段提交协议 | 第22页 |
2.5 快照隔离 | 第22-23页 |
2.6 本章小结 | 第23-25页 |
3 HBASE长事务实现方法分析 | 第25-44页 |
3.1 基于分布式的快照方法 | 第26-33页 |
3.1.1 Percolator谷歌海量数据的增量更新 | 第26-29页 |
3.1.2 Haeinsa简单的低成本HBase事务框架 | 第29-33页 |
3.1.3 分布式快照方法优缺点分析 | 第33页 |
3.2 集中的快照方法 | 第33-42页 |
3.2.1 HBaseSI全局队列的HBase事务框架 | 第34-37页 |
3.2.2 Omid无锁HBase事务支持框架 | 第37-42页 |
3.2.3 集中的快照方法优缺点分析 | 第42页 |
3.3 本章小结 | 第42-44页 |
4 一种基于前置冲突校验的非侵入式HBASE长事务实现方法 | 第44-64页 |
4.1 并发控制思想选择 | 第44-45页 |
4.2 长事务隔离级别选择 | 第45页 |
4.3 长事务算法设计 | 第45-52页 |
4.3.1 思想来源 | 第45-46页 |
4.3.2 长事务预提交算法 | 第46-49页 |
4.3.3 长事务提交处理算法 | 第49-51页 |
4.3.4 长事务快照获取算法 | 第51-52页 |
4.4 事务元数据存储内容设计 | 第52-54页 |
4.5 事务完整流程设计 | 第54-56页 |
4.6 故障恢复处理机制设计 | 第56-57页 |
4.6.1 事务元数据服务器故障恢复 | 第56-57页 |
4.6.2 客户端及数据节点故障恢复 | 第57页 |
4.7 基于冲突检测的超时机制设计 | 第57-58页 |
4.8 方法事务性验证 | 第58-62页 |
4.8.1 原子性设计 | 第59页 |
4.8.2 一致性设计 | 第59-60页 |
4.8.3 隔离性设计 | 第60-62页 |
4.8.4 持久性设计 | 第62页 |
4.9 本章小结 | 第62-64页 |
5 方法实现及实验结果分析 | 第64-78页 |
5.1 长事务方法实现 | 第64-67页 |
5.2 长事务方法验证 | 第67-70页 |
5.2.1 完整性验证 | 第68-69页 |
5.2.2 一致性验证 | 第69-70页 |
5.3 方法性能分析 | 第70-77页 |
5.3.1 每秒服务器端发送相关元数据大小 | 第70-72页 |
5.3.2 快照获取处理延迟 | 第72-73页 |
5.3.3 每秒处理读写事务量 | 第73-74页 |
5.3.4 每秒数据回滚量 | 第74-76页 |
5.3.5 TO服务器平均故障恢复时间 | 第76-77页 |
5.4 本章小结 | 第77-78页 |
6 结论 | 第78-80页 |
6.1 论文总结 | 第78-79页 |
6.2 研究展望 | 第79-80页 |
参考文献 | 第80-83页 |
作者简历及攻读硕士学位期间取得的研究成果 | 第83-85页 |
学位论文数据集 | 第85页 |