论文部分内容阅读
目前,混合云中存储的数据普遍具有数据量大、类型多样和价值密度低的特点。分布式存储技术是混合云平台的技术基础。在存储数据的时候,由于节点容量有限且文件数据量巨大,通常会采用分块且分布式存储的机制。同时,为了提高系统容错能力,数据块的备份机制被广泛应用。在混合云的商务服务器集群中,即使某个节点失效,用户仍然可以从其它正常数据节点中获得副本,但存储空间花费会随着副本数量的增加而增加。并且,由于兴趣差异,用户仅关注部分文件或文件的部分数据块,所以目前GFS(Google File System)和HDFS(Hadoop Distributed File System)等分布式文件存储系统中采用的静态副本创建策略会造成存储资源的巨大浪费。因此,在混合云环境下,如何根据用户访问文件的规律以及文件数据块的热度变化,实现高可靠低成本的数据副本动态创建成为亟待解决问题。此外,混合云中数据副本分布于数据中心的多个节点上,多用户共享数据资源。副本随时可能动态创建和删除,用户可能会同时对数据资源进行读取或修改,这样会导致混合云中各个副本的不一致性。因此混合云中高效保持数据的一致性也成为一个关键的问题。针对以上存在的问题,本文从以下三个方面展开研究:(1)为了保证存储数据的可靠性,本文首先对存储文件副本数量进行初始化。由于用户对不同文件的可靠性要求不同,所以文件副本的初始值是有差异的。其次,即使是同一文件或者同一文件的不同数据块,在不同的时间段內,由于用户兴趣差异,文件的读写频率也是不同的,所以结合节点的负载情况,以私有云有限的存储容量以及公有云和私有云间通信代价为约束条件,以实现最大可靠性和最小费用的目标,本研究提出基于数据块热度和节点负载的动态副本创建策略。最后,利用人工免疫算法求解近似最优数据块副本数,实现可靠性和代价的联合优化。(2)针对混合云环境下节点动态加入或删除以及多用户同时修改同一数据而产生数据不一致的问题,本文提出了基于fast-paxos算法的数据一致性策略。在fast-paxos算法的Leader选举过程中,本策略将节点间的传输速度、节点CPU处理能力、节点内存可用空间以及节点的读性能等指标考虑在内,计算节点权重。在此过程中,针对层次分析法中判断矩阵受人为影响较大的问题,利用模糊综合评价机制对判断矩阵进行修正,然后采用加速遗传算法对判断矩阵进行一致性检验。同时,根据各节点的权重,本研究设计了基于优先级的节点选票消息队列,提出了基于节点权重的Leader节点选举算法,提高Leader节点的处理性能,实现高效的数据一致性维护。(3)对上面所提出的优化方法进行实验验证。将本文的基于数据块热度和节点负载的动态副本创建算法与HDFS默认算法和Aurora副本创建算法进行对比,实验结果表明本算法有效的减少了数据块副本占用的磁盘存储空间,并在平均响应时间代价和平均支付费用代价上取得了较为满意的结果。同时将本文所提的基于Leader选举的fast-paxos算法与ZooKeeper中的ZAB算法以及S-Paxos算法在不同请求个数、不同节点规模以及节点失效情况等方面进行性能对比分析,结果表明本文所提算法在一致性维护时间以及节点吞吐量两方面优于其它两个算法。