论文部分内容阅读
数据存储是各种应用的基础。随着数据量的增长和用户对存储的扩展性、安全性、可用性、可持续性等需求的提高,传统的存储技术已无法满足这些要求。近年来分布式存储技术将数据分布在整个网络上,可以消除单节点故障,提高了数据访问的带宽,受到了越来越多的重视,GFS、TFS、Swift、Ceph等分布式系统也在实践中被广泛应用。分布式存储系统主要的难点在于如何在不可靠的分布式网络中保持元数据、数据的一致性。如Ceph使用元数据服务器和存储服务器分离的方案,应用Paxos算法来实现一致性,这些方案对存储服务器的状态监测、维持提出了较高的要求。针对此问题,本文提出一种多策略的去中心化对象存储系统,其主要思想是应用分布式哈希表(DHT)技术构造一个基本的内容寻址的对象存储系统,该基本存储系统实现对授权用户的数据(对象)的存储、提取和删除等基本服务。在此基础上,用户可根据不同需要,选择多种存储策略来实现不同服务质量要求(QoS)的存储,如为了可靠性和高性能,可采用多副本存储策略,如为了安全性,可采用分块存储策略。这种方法的好处在于存储节点简单,只需要实现P2P网络和对象存储的基本功能,而可靠性、安全性以及数据的同步由使用者维护。本文的主要内容包括:(1)本文提出了一种基于P2P网络的分布式对象存储系统模型,系统的实现原理是分布式哈希表chord,节点与节点互联成P2P网络,提供路由查找的功能,节点提供对象存储,在节点里存放着一个个对象。(2)提出基于P2P网络的多种存储策略,在客户端页面设置存储策略选项,用户上传文件时,根据需要进行选择。存储策略有不分块无副本、三副本存储策略、二等分存储策略、二等分二副本策略、纠删码存储策略,用户选择相应的选项,系统选择对应的策略存储文件。这种设计不仅提高文件的可靠性和安全性,而且降低系统的复杂度。在不分块无副本基础之上,其他策略都应用了并行传输,多副本同时传输和文件块同时传输,有效提升了系统的性能。(3)最后设计了系统的原型,原型具有文件管理模块,用户管理模块,网络管理模块,节点管理模块。系统具有文件上传,文件下载,文件删除功能。对系统进行测试,测试系统性能,测算出不同策略的上传下载的时间,文件分块的传输速度比不分块快,文件副本的传输速度比无副本速度慢。系统可靠性测试,测算出不同策略的文件查找成功率,文件分块的成功率比不分块低,文件副本比无副本成功率高。