论文部分内容阅读
Hadoop分布式文件系统(Hadoop Distributed File System,HDFS)作为新一代企业级存储架构的核心,是云计算和大数据时代应对存储容量压力、I/O性能瓶颈、存储成本危机等诸多挑战的重要支撑技术。HDFS将大数据进行分块存储并按照一定的数据放置策略分布存储到各个数据节点,来提升数据中心的存储和处理效率,从而达到整个云平台的高可用性和高可靠性等目标。然而,随着云计算应用的不断拓展和数据中心模式的不断演化,上层大数据应用所产生的业务数据呈现出越来越明显的“冷”、“热”属性,给HDFS的数据管理带来了新的挑战:一方面,对于存储占比较大且访问频率较低的冷数据,如果仍采用HDFS默认的三副本冗余策略,将会给数据中心带来巨大的存储代价;另一方面,数据量的剧增使得数据中心不断扩容,节点异构性愈发突显,HDFS机架感知的数据放置策略由于忽略了节点及数据热度的异构性,导致节点负载和数据资源分配不均,从而降低了存储系统的整体性能。为了解决以上问题,本硕士论文针对数据热度划分和数据放置优化两个关键技术,研究相关的机制和算法,期望在保证数据可靠性的同时,能够减少存储代价并提高系统整体性能。具体地,本论文从以下三个方面开展研究工作:首先,研究基于时间序列的数据热度划分方法。针对现有HDFS三副本冗余策略忽略了数据热度导致存储成本过高的问题,提出了热度感知划分算法,即得到用户对于数据访问频率的时间序列,计算出时间序列的DTW距离,然后通过K-means聚类算法,将时间序列转化为数据的热度属性,为后面数据放置策略提供基础。其次,研究热度敏感的数据放置优化策略。针对HDFS数据放置过程中忽视了节点异构性导致系统性能下降的问题,对于冷、热数据分别提出了相应的放置优化策略:对于访问频率高的热数据,提出了一个动态副本感知的数据放置方法,用以提高存储系统的整体性能;对于访问频率低的冷数据,提出了一个基于纠删码冗余的数据放置机制,在保证数据可用性的前提下,降低存储成本。最后,基于上述理论研究成果,设计并开发面向HDFS的数据放置优化系统KittyTwinkle。通过增加数据统计模块并修改数据放置过程等,实现HDFS中数据放置的优化管理,并部署于东南大学云计算中心环境中进行应用验证。实验结果表明,本文所提基于时间序列的数据热度划分方法和热度敏感的数据放置优化策略,在保证数据可用性的同时,能够显著地减少数据中心的存储代价,并能有效提升存储系统的性能,为大数据的存储和管理提供了行之有效的解决方案。