摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第12-20页 |
1.1 背景介绍 | 第12-13页 |
1.2 国内外研究现状 | 第13-17页 |
1.2.1 GFS | 第13-15页 |
1.2.2 HDFS | 第15-16页 |
1.2.3 TFS | 第16-17页 |
1.3 主要研究内容 | 第17-18页 |
1.4 论文组织 | 第18-20页 |
第二章 系统相关理论与技术支持 | 第20-29页 |
2.1 分布式文件系统 | 第20-25页 |
2.1.1 名字空间概述 | 第20-22页 |
2.1.1.1 基于文件系统的设计 | 第20-21页 |
2.1.1.2 基于全内存的分层设计 | 第21页 |
2.1.1.3 基于全内存的Hash设计 | 第21-22页 |
2.1.1.4 基于全内存的双重Hash设计 | 第22页 |
2.1.2 可用性 | 第22-23页 |
2.1.3 可扩展性 | 第23-24页 |
2.1.4 负载均衡 | 第24-25页 |
2.2 数据查找和定位的相关技术 | 第25-27页 |
2.2.1 分布式哈希表(Distributed Hash Table,DHT) | 第25-26页 |
2.2.1.1 一致性哈希 | 第25页 |
2.2.1.2 Chord | 第25-26页 |
2.2.2 CRUSH技术 | 第26-27页 |
2.3 其他理论技术简介 | 第27-28页 |
2.3.1 复制 | 第27页 |
2.3.2 重复数据删除(De-duplication) | 第27-28页 |
2.4 本章小结 | 第28-29页 |
第三章 分布式系统存储子模块总体设计 | 第29-44页 |
3.1 系统需求分析 | 第29-30页 |
3.2 设计方案 | 第30-34页 |
3.2.1 可扩展性 | 第30-31页 |
3.2.2 可靠性 | 第31页 |
3.2.3 重复数据删除 | 第31-33页 |
3.2.4 高性能 | 第33-34页 |
3.3 系统框架及各模块简介 | 第34-38页 |
3.3.1 客户端模块 | 第36页 |
3.3.2 元数据单元模块 | 第36-37页 |
3.3.3 配置和规则服务器模块 | 第37-38页 |
3.4 典型的系统初始化流程 | 第38-39页 |
3.5 规则的设计详解 | 第39-43页 |
3.5.1 规则的设计原理 | 第39-40页 |
3.5.2 资源查询与位置更新 | 第40页 |
3.5.3 规则的实现 | 第40-43页 |
3.5.3.1 重要数据结构 | 第41-42页 |
3.5.3.2 业务流程简介 | 第42-43页 |
3.6 本章小结 | 第43-44页 |
第四章 数据存储模块的设计 | 第44-54页 |
4.1 总体概要设计 | 第44-49页 |
4.1.1 序列号的设计 | 第46-47页 |
4.1.2 数据单元物理存储模型 | 第47-48页 |
4.1.3 负载均衡策略 | 第48-49页 |
4.2 桶的状态机设计 | 第49页 |
4.3 副本一致性维护策略 | 第49-50页 |
4.4 宕机恢复流程的设计 | 第50-51页 |
4.5 通信协议设计概要 | 第51-53页 |
4.6 本章小结 | 第53-54页 |
第五章 数据存储单元的实现 | 第54-65页 |
5.1 数据存储模块的实现框架图 | 第54-55页 |
5.2 网络通信模块的设计实现 | 第55-56页 |
5.3 定时器管理模块的设计实现 | 第56页 |
5.4 线程池模块的设计实现 | 第56-57页 |
5.5 客户端业务处理模块设计实现 | 第57-59页 |
5.6 CS业务模块设计实现 | 第59页 |
5.7 桶业务处理模块设计实现 | 第59-61页 |
5.8 典型业务流程举例 | 第61-64页 |
5.8.1 上传流程 | 第61-62页 |
5.8.2 恢复流程 | 第62-63页 |
5.8.3 桶迁移流程 | 第63-64页 |
5.9 本章小结 | 第64-65页 |
第六章 数据存储模块性能瓶颈分析与优化改进 | 第65-74页 |
6.1 原有程序框架以及流程 | 第65-66页 |
6.1.1 程序的总体框架 | 第65-66页 |
6.1.2 现有客户端业务处理流程 | 第66页 |
6.2 现有客户端与SU交互时存在的问题 | 第66-69页 |
6.2.1 在现有框架的基础上SU出现的问题 | 第66-67页 |
6.2.2 测试中客户端与SU交互问题的分析 | 第67-69页 |
6.3 修改方案 | 第69-73页 |
6.3.1 短连接到长连接的修改 | 第69-72页 |
6.3.2 修改为长连接之后的流控处理问题 | 第72-73页 |
6.4 本章小结 | 第73-74页 |
第七章 数据分析以及测试结果 | 第74-86页 |
7.1 测试前的相关环境准备 | 第74-75页 |
7.2 测试内容 | 第75页 |
7.3 测试结果 | 第75-85页 |
7.3.1 基本功能测试结果 | 第75-77页 |
7.3.1.1 上传 | 第75-76页 |
7.3.1.2 下载 | 第76页 |
7.3.1.3 查询 | 第76-77页 |
7.3.2 负载均衡流程测试 | 第77-80页 |
7.3.2.1 桶迁移流程测试 | 第77-78页 |
7.3.2.2 桶分裂流程测试 | 第78-80页 |
7.3.3 宕机恢复流程测试 | 第80-82页 |
7.3.4 性能测试 | 第82-85页 |
7.3.4.1 文件读写硬件性能测试 | 第82-83页 |
7.3.4.2 大文件读写测试 | 第83-84页 |
7.3.4.3 小文件读写测试 | 第84-85页 |
7.4 本章小结 | 第85-86页 |
第八章 结论与展望 | 第86-88页 |
致谢 | 第88-89页 |
参考文献 | 第89-91页 |
攻研期间的研究成果 | 第91-92页 |