论文部分内容阅读
随着互联网和智能设备的大力发展,数据量的增长加剧,促进了云存储技术的蓬勃发展。云存储技术中很重要的一部分就是数据的机密性,目前解决用户数据机密性主流的方案是通过数据加密,但加密和解密数据带来的性能消耗是无法避免的,特别是当数据量较大和客户端的处理能力不足时这样的性能消耗是无法接受的。本文提出的基于元数据与文件数据分离的多云存储模型是对现有存储方案的一种改进和补充,区别于传统的加密手段来保护用户数据隐私,该模型既能保证数据的机密性,又能够确保文件存取的效率。根据实际的存储系统需求以及本文提出的存储模型,本文进行了系统的设计与实现。本文以功能模块为单元进行分析、设计和实现,系统的功能模块主要包括用户管理、元数据管理、文件碎片化和上传、文件下载和还原、多云分发与授权。本文的主要工作内容如下:1.研究文件雕刻技术,分析当前碎片文件还原技术,设计并实现了适合于本系统的文件碎片化策略,该策略包括文件头部的处理和不均匀碎片化。2.根据碎片化功能的需求,设计了元数据的数据结构,该结构反应了用户在系统中已存储文件的层次结构和包含了原始文件与碎片之间的对应关系。在客户端实现了使用SQLite管理元数据的功能。3.在七牛、金山、百度云存储提供的云存储服务和自建云存储系统的基础上实现了基于多个节点的云存储功能,为用户提供文件存取功能。其中包括客户端实现文件的上传、下载、删除操作和逻辑服务器端的消息回调等功能。4.针对多云存储模型的文件上传目的地选择问题,实现了多云分发算法。该算法是在现有的负载均衡的算法基础上改进而来,为了实现考虑价格和速度因素的负载均衡。5.对于一个完整的存储系统,还实现了用户管理和数据统计等功能模块。这些功能模块主要用于进入系统的授权、文件传输和操作的权限管理等方面。6.通过文件雕刻技术测试了碎片化算法的可行性,以及采用实验和数据统计的方式分析了多云分发算法的合理性。同时,测试了各个功能模块的功能以满足需求,并通过性能测试来分析系统的实际运行效果。