论文部分内容阅读
大数据是当前计算机领域研究的热点问题之一。企业通过大数据分析消费者行为,部门销售数据等指标,能得出对企业增加市场竞争力产生重要作用的情报数据。随着大数据对企业发展带来积极的影响,越来越多的企业将利用大数据,以及寻求适用于大数据的数据存储解决方案。HDFS是一个开源的分布式文件系统,因其较低的成本,良好的可靠性等特点而成为企业与科研院所首选的海量数据存储解决方案。HDFS适用于采用流式数据访问和存储超大文件,在存储大数据研究过程中产生的海量小文件时,则表现出存储空间不足,读写效率低下等问题。如何使HDFS高效存储小文件,是一个十分有意义的研究方向。针对HDFS在存储小文件时表现出的效率低下等问题,本文从磁盘、网络通信和元数据等因素详细分析小文件问题产生原因,并提出包含管理节点与工作节点的小文件存储模型以优化HDFS上的小文件问题。论文主要工作如下:(1)提出小文件存储模型架构。存储模型是一个基于HDFS的应用。它通过采用小文件优化存储策略,代替HDFS处理客户端的读写小文件请求,达到优化小文件存储的目的。(2)小文件合并存储。即多个客户端上传的小文件共同保存在一个HDFS文件中,该方法能有效减少HDFS中系统元数据的数目,并降低HDFS读取小文件数据的磁盘寻道时间。(3)小文件索引管理。索引管理主要包括:创建、序列化与反序列化小文件索引。每个工作节点在内存中保存与其相关的小文件集合的索引信息。通过查询索引表实现工作节点快速定位小文件数据在HDFS文件中的偏移地址。(4)小文件缓存管理。本文在工作节点的内存和磁盘上构建小文件缓存区,保存最近写入的和访问频率的小文件。缓存管理内置多种常用缓存置换算法,有效减少工作节点与HDFS交互次数,提高客户端访问小文件的效率。(5)通过部署多节点实验平台,对小文件存储模型进行了读写性能测试。测试结果与HDFS读写文件性能对比发现:小文件存储模型方案具有可行性,且表现出良好的小文件读写性能。