论文部分内容阅读
Hadoop作为优秀的基础云平台架构被广泛应用于云计算应用和大数据计算处理,其分布式文件系统HDFS为海量数据提供了基础存储服务。随着信息数据总量和类型的急剧增加,如何满足海量数据的高效访问和高可靠性存储成为Hadoop存储系统性能优化研究的关键问题。本文基于Hadoop集群中HDFS的文件存储及管理模式探讨了的文件访问性能优化技术,重点围绕HDFS小文件和冗余副本动态更新两个问题展开了深入研究。在展开研究工作前,首先深入研究并分析了Hadoop架构下分布式存储系统的原理及特点,并重点论述了已有的HDFS小文件访问性能优化和冗余副本优化技术,总结前人研究成果的优点和应用价值,结合访问负载特征和应用实际,指出其各自的局限性。本文主要的研究内容和贡献包括:一、针对HDFS的小文件问题,提出了基于历史数据的小文件预取方法,主要包含元数据推送和数据块预取两部分。元数据推送由NameNode进行,推送的依据为历史访问记录中所体现的数据访问的重复性和时间局部性特征,当历史数据中存在与当前读请求重复的访问记录时,即触发元数据推送。数据块预取由DataNode进行,客户端接收到推送的元数据后,将其存储到节点本地的元数据缓存,缓存能够为后续读请求提供更快速的元数据请求响应,并在后台触发预取模块,将缓存中元数据所指向的数据块提前预取到DataNode。实验结果证明,基于历史数据的小文件预取方法确实能够缩短大量小文件读请求的响应时间,满足存储系统访问性能的优化需求。二、针对冗余副本动态更新问题,提出了基于元数据缓存的动态副本多播算法,主要包含副本生长退化和元数据多播更新两部分。副本生长退化以文件访问热度为依据,元数据缓存实时记录本地客户端对文件及数据块的访问次数并结合时间周期计算热度,指导DataNode数据副本进行动态增减。元数据多播更新以产生副本变化的DataNode作为多播源,依据集群拓扑结构采用层次化的多播形式传递元数据更新消息,减轻NameNode负载,加快更新消息传递。实验结果证明,基于元数据缓存的动态副本多播方法能够适应数据访问负载变化,减少“冷数据”副本所占用的存储资源,为“热数据”提供更高效的数据访问性能。本文对HDFS的小文件访问性能和动态副本策略的优化进行了探索,研究成果对于完善Hadoop集群的存储架构和功能,尤其是HDFS在面向大规模数据存储和处理时的性能提升具有一定的理论价值和实践意义。