论文部分内容阅读
随着移动互联网、物联网、云计算的高速发展,数据量也在突飞猛进的增长之中,这不仅为数据存储行业带来了巨大的市场空间,同时也对海量数据的高效存储和管理能力提出了前所未有的挑战。面对这海量的数据,如何根据数据的不同特性对数据进行分层存储是本文的研究重点。本文的研究目标是实现一个高性能低功耗分布式存储系统,为了完成本文目标,本文经历了以下研究阶段。首先,本文调研了国内外的存储方案,综合对比了它们的优缺点,并学习了它们的存储架构。伴随着数据量的剧增,数据的存储和访问策略也开始分化。本文接着根据数据被访问的频率将数据划分为热数据和冷数据并分别采用不同的冗余策略进行存储。在综合调研学习了多种冗余策略后,本文最终选择使用副本复制冗余策略存储热数据,选择纠删码冗余策略存储冷数据。本文将系统分成热数据层和冷数据层并分别实现。在实现冷数据层的过程中面临着低功耗、高存储空间利用率等诸多要求。本文选择定制化的存储服务器以及普通硬盘来存储数据,并对每个硬盘进行电源控制,大大降低了功耗。在实验对比了使用不同参数的纠删码的性能后,本文最终采用了原始数据块为12块,校验块为4块的纠删码方式,存储空间利用率为0.75,大大提高了存储空间利用率。在实现热数据层的过程中面临着高性能的要求,本文采用三副本复制的策略进行存储。热数据层采用一致性哈希算法进行数据分布并实现了对象存储,之后又在对象存储的基础上实现了FUSE接口,提供了完整的文件系统。通过将访问量逐渐减少的数据由热数据层转储到冷数据层来达到分层存储的目的,本文实现的分布式存储系统具有高性能、高可靠性、高可用、低功耗等特点。