云同步系统的设计与实现
发布时间:2017-04-05 01:18
本文关键词:云同步系统的设计与实现,,由笔耕文化传播整理发布。
【摘要】:随着云计算的到来,用户的数据会保存在多种不同的设备上,实现不同设备间的文件高效安全的同步是目前云存储研究的重点。为了实现云同步存储,目前国内出现了百度云盘,金山快盘,360云盘等提供云同步服务的产品。本文在重点研究了目前流行的几个云盘后,设计出了一款改进型的快速安全的云同步存储系统。本文的主要工作首先是对目前存在的云同步系统进行了系统的研究,对目前云盘存在的问题进行了分析。从文件监控开始入手,舍弃了传统的多轮轮询的查询方式,采用基于事件监控的jpathwatch库监控文件的新建,删除,重命名,修改,从而快速的检测到文件的变化。在检测到文件变化后,接下来将分析计算需要同步的文件块,根据分析结果判断是对文件重传还是只传输差异数据,以及如何快速高效的传输差异块。针对这个问题,本系统在计算出要传输的文件块以后,采用所设计的压缩模块对文件块数据进行压缩。该压缩模块采用java语言实现了哈夫曼压缩算法。为了对文件进行高效传输,在本系统中设计了多线程同步传输模块,使得文件块能够得到快速的传输。在传输后接下来需要在服务器端进行文件的重建和存储,本系统采用Hadoop下的HDFS分布式文件系统进行存储,并优化小文件的分散存储。系统设计实现过程中采用分层模块化的思想对各个模块进行编程,在第五章对系统的各个子模块进行了测试和分析,测试了系统的整体性能并和当前流行的云盘进行了比较,总结了系统的研究成果和需要改进的地方。在最后展望下一步的工作。
【关键词】:云同步 jpathwatch 两轮同步算法 分布式文件系统 哈夫曼编码
【学位授予单位】:杭州电子科技大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TP333
【目录】:
- 摘要5-6
- ABSTRACT6-11
- 第一章 绪论11-15
- 1.1 研究背景11
- 1.2 研究现状11-13
- 1.3 课题研究内容13-14
- 1.4 论文结构和章节安排14-15
- 第二章 云同步存储相关理论介绍和关键技术研究15-26
- 2.1 jpathwatch的简介15
- 2.2 jpatwatch的使用15-16
- 2.3 几种文件切块同步算法16-19
- 2.3.1 基于滑动快的同步算法16-17
- 2.3.2 基于固定大小切块的同步算法17
- 2.3.3 基于可变大小的切块同步算法17-18
- 2.3.4 MD5算法18-19
- 2.4 数据压缩算法19-20
- 2.4.1 行程长度压缩19
- 2.4.2 霍夫曼编码压缩19-20
- 2.4.3 算术压缩算法20
- 2.4.4 LZW压缩方法20
- 2.4.5 Rice压缩方法20
- 2.4.6 Lempel-Ziv (LZ77)压缩方法20
- 2.5 多线程编程20-22
- 2.6 Hadoop简介以及HDFS分布式文件系统使用22-26
- 第三章 云同步系统的设计26-39
- 3.1 需求分析26-27
- 3.2 系统的总体框架图27-28
- 3.3 客户端系统各个模块的设计28-34
- 3.3.1 用户登陆注册模块28-29
- 3.3.2 文件监控模块29-30
- 3.3.3 传输数据计算模块30-31
- 3.3.4 文件压缩模块31-32
- 3.3.5 数据传输模块32-33
- 3.3.6 系统控制模块33
- 3.3.7 异常处理模块33-34
- 3.4 服务器端系统的设计34-38
- 3.4.1 用户登录注册模块34-36
- 3.4.2 数据处理模块36
- 3.4.3 数据传输模块36-37
- 3.4.4 系统存储模块37
- 3.4.5 系统控制模块37
- 3.4.6 系统异常处理模块37-38
- 3.5 系统协议的设定38
- 3.6 本章小结38-39
- 第四章 云同步系统的实现39-53
- 4.1 开发的环境的介绍39
- 4.2 HADOOP环境的搭建39-44
- 4.2.1 各个节点的基本配置39-42
- 4.2.2 Hadoop环境的安装42-44
- 4.3 文件的两轮同步算法设计与实现44-47
- 4.3.1 Rsync的基本原理44
- 4.3.2 Rsync算法的性能分析与讨论44
- 4.3.3 两轮差异数据同步算法44-47
- 4.4 数据压缩和解压缩的实现47-48
- 4.4.1 压缩模块实现步骤47-48
- 4.4.2 解压缩过程48
- 4.5 系统文件监控的实现48-49
- 4.6 HDFS文件存储的实现49-52
- 4.6.1 配置环境的安装50
- 4.6.2 分布式文件处理存储用到的类和方法50-52
- 4.7 本章总结52-53
- 第五章 系统测试和分析53-59
- 5.1 文件登陆模块的测试53
- 5.2 系统文件监控模块的测试53-54
- 5.3 系统传输数据计算模块的测试54
- 5.4 系统压缩模块的测试54-56
- 5.5 系统传输模块的测试56-57
- 5.6 两轮同步算法和Rsync同步算法对比测试57
- 5.7 本系统和金山网盘同步速度测试对比57-58
- 5.8 本章小结58-59
- 第六章 总结和展望59-61
- 6.1 论文的主要工作与特点59-60
- 6.2 下一步的工作展望60-61
- 致谢61-62
- 参考文献62-64
【参考文献】
中国期刊全文数据库 前1条
1 董旭;高允翔;褚卫艳;;面向云计算的业务支撑系统数据架构实施策略[J];邮电设计技术;2014年01期
中国硕士学位论文全文数据库 前1条
1 李烨;云计算的发展研究[D];北京邮电大学;2011年
本文关键词:云同步系统的设计与实现,由笔耕文化传播整理发布。
本文编号:286240
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/286240.html