● 摘要
随着信息社会的发展,越来越多的信息被数字化,尤其是伴随着Internet的发展,数字化的信息呈爆炸式增长。搜索引擎的出现为信息检索提供了便利,庞大的索引库和后台文件存储是搜索引擎的重要资源,如何有效地保存和访问这些数量庞大的数据成了搜索引擎必须解决的难点。未来几年内,如何存储和管理这些数据将成为搜索引擎关注的焦点。搜索引擎对于存储提出的最基本要求是稳定性、高性能和可扩展性,采用集中式存储方式简单易行、访问速度快,但一旦机器出现故障,将会中断系统服务,从而无法满足稳定性这一基本要求;另外随着访问量的剧增,因无法实现分布式并行调度,导致存储和访问的性能下降。为弥补集中式存储的不足,人们一直在探索新的存储方法。其中一个重要的发展方向是将多台高性能的PC服务器通过高速局域网连接,在分布式文件系统的协调管理下构成分布式文件服务器来存储数据,所以设计一个稳定、高效的分布式文件管理系统至关重要。本文研究的面向搜索引擎的分布式文件管理系统SDFS(Search Engine Oriented Distributed File Management System)是基于Linux的、为搜索引擎应用或相关应用而设计开发的数据存储系统。该系统可以管理搜索引擎后台服务器中的文件资源,并对数据的高可靠性提供了保障。本文重点研究如何提高分布式文件系统的文件创建吞吐率和如何提高数据可靠性。通过对项目搜索引擎和HDFS[11]结构、存储方式的详细分析,论文对分布式文件系统数据副本管理、名字节点失效、元数据结构作了深入研究,提出了对名字节点空间评估和优化设计的实现方案;另外还分析了数据副本对SDFS可靠性的影响,并对SDFS与HDFS在储存文件时的性能进行比较;论文最后给出了SDFS设计的总体逻辑结构和具体实现方案,通过介绍SDFS在实际项目中的应用情况,对分布式文件系统的发展趋势作了简要的展望。