论文部分内容阅读
大数据时代的到来,一方面我们需要安全有效地存储海量数据信息,存储系统的容量亟待增大;另一方面大数据量也对数据处理能力提出了新的要求,存储系统的性能亟需提升。重复数据删除技术为应对大数据环境下,存储容量的增长远落后于数据爆炸式增长的现状,提供了一种有效的数据存储手段,但是轮循式的数据分配方式并不能有效地利用节点间的并行性,导致负载不均衡的问题。本文针对该问题,通过改进和优化数据分配策略,以提升系统的吞吐率和读性能。论文的主要研究内容和创新点包含以下几个方面:首先,针对重复数据删除技术进行了系统全面的研究。先从基本原理出发详细介绍重复数据删除的具体过程,随后对重复数据删除的分类进行了说明,然后重点阐述了重复数据删除所涉及的重要技术,包括数据分块、性能优化、可靠性和可扩展性等方面,并结合现有的实例进行了分析,最后总结当前面临的问题和挑战,并提出本文将要改进和优化的方面。其次,针对当前重复数据删除后,数据块顺序放置不能有效地利用节点间的并发性而导致读吞吐率和读性能不高的问题进行了改进和优化。对于分布式的存储节点,设计并实现了一种基于文件感知的重复数据删除策略(File-Aware De-duplication,FA-Dedupe),该策略在保持系统重删效率的前提下,以数据块互斥为原则,尽可能地均匀分布数据块,充分利用节点间的并发性提升访问效率。再次,针对文件感知分配策略产生的存储空洞问题进行了优化。在综合考虑感知策略的有效性、存储效率和性能提升等方面后,设计了两种空洞减少机制,一种“缓和”的方式在保证感知策略有效的前提下,在数据存放的过程中缓慢的调整分配方案减少空洞,该方法兼顾文件感知策略的有效性但是效率较低;另一种是“暴力”的方式,通过检查阈值,当超过时就忽略文件感知策略直接填充空洞最多的节点,该方法效率较高但是对性能带来一定的损失。最后,分别实现了传统的B-Dedupe和改进的FA-Dedupe的模拟程序,并对优化前后重删率和读写性能进行了测试。实验结果表明本文设计的策略在保证系统重删效率的情况下,以牺牲少量写性能为代价,换取了更低延迟的读性能,同时减少了存储空洞保证了空间利用率的均衡性。