一个集成桌面搜索的数据库文件系统的研究与实现

一个集成桌面搜索的数据库文件系统的研究与实现

论文摘要

传统文件系统的结构基础是建立在30年以前的应用背景之上,并且大都是基于目录和多级文件系统来管理文件和数据,人们已经习惯于这样的文件访问和存储工作。然而随着硬件性能和磁盘存储容量的不断提高,当前传统的基于目录和文件的文件系统面临着诸多挑战,比如桌面搜索的效率、元数据的信息量等。另外,传统文件系统的层次目录结构虽然提供了存放文件的方便性和易修改性,但却带来了访问文件时定位文件和目录的困难。数据库系统拥有比文件系统更好的数据管理特性,更提供了增加元数据的便捷方法,拥有更加丰富的元数据将大大提高文件系统对各种新应用的支持能力。桌面搜索能够帮助用户高效的查询个人计算机上的各种数据和文件。文件系统如果能够拥有像桌面搜索那样的高效查询能力,将大大提高文件查找效率。桌面搜索已经引起了包括Google、百度和Yahoo这样的搜索引擎巨头的重视,并已开始推出了桌面搜索工具和产品,一些主流操作系统也开始集成桌面搜索工具。可以看出,桌面搜索技术对于提高文件查找效率至关重要。然而,桌面搜索软件调用操作系统函数也会导致不小的效率损失。本论文正是将数据库技术与桌面搜索技术引入到文件系统当中,来解决传统文件系统遇到的上述问题。针对数据库技术和桌面搜索技术不断向文件系统渗透这一特点,本文在分析传统文件系统设计理论及桌面搜索理论的基础上,提出了一个集成桌面搜索的数据库文件系统(XFS)的设计框架及实现策略。XFS采用核心态的基于现有数据库系统的设计模式,通过比较各种成熟的数据库产品,选择Berkeley DB作为底层数据库,并根据其存储模式的特点,设计并实现了XFS文件系统的结构模式;在索引结构与搜索算法设计中,通过对倒排索引和布尔查询算法进行改进,重新设计了XFS的索引模式、索引存储方案及搜索算法,提高了文件查找的效率;并兼容VFS上原有的API接口。最后对XFS文件系统进行搜索功能及性能的测试,测试结果表明XFS文件系统设计合理,达到了预期的设计目标。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 课题背景和目的
  • 1.2 研究现状
  • 1.3 本文工作主要工作和内容安排
  • 第二章 文件系统基础
  • 2.1 传统文件系统基础
  • 2.1.1 传统文件系统的功能和组织
  • 2.1.2 文件系统的核心要素
  • 2.2 LINUX 文件系统结构
  • 2.2.1 Linux 文件系统介绍
  • 2.2.2 Linux 虚拟文件系统
  • 2.3 索引技术
  • 2.3.1 倒排索引(Inverted Index)
  • 2.3.2 Suffix 数组索引
  • 2.3.3 签名文件(Signature Files)索引
  • 2.4 本章小结
  • 第三章 XFS 的设计模式及策略
  • 3.1 内核结构与XFS 的设计
  • 3.1.1 内核结构
  • 3.1.2 XFS 的设计
  • 3.2 XFS 底层数据库的选择
  • 3.3 嵌入式数据库BERKELEY DB 的原理与应用
  • 3.3.1 Berkeley DB 的技术特性
  • 3.3.2 Berkeley DB 的结构
  • 3.3.3 Berkeley DB 的编程方法
  • 3.3.4 Berkeley DB 的存储模式
  • 3.3.5 Berkeley DB 总结
  • 3.4 XFS 的系统结构
  • 3.4.1 XFS 的系统结构
  • 3.4.2 XFS 的底层数据库设计
  • 3.5 XFS 桌面搜索模块索引设计
  • 3.5.1 XFS 支持的索引类型
  • 3.5.2 索引模块设计
  • 3.5.3 索引的建立方法
  • 3.5.4 索引存储方案设计
  • 3.5.5 搜索算法设计方案
  • 3.6 本章小结
  • 第四章 XFS 的实现
  • 4.1 BERKELEY DB 到XFS 内核的移植
  • 4.1.1 移植前的工作
  • 4.1.2 移植后Berkeley DB 的数据结构
  • 4.1.3 XFS 的内存数据结构
  • 4.2 XFS 支持VFS 操作的实现
  • 4.2.1 系统注册与安装
  • 4.2.2 XFS 基本元素的实现
  • 4.2.3 基本操作的实现
  • 4.3 XFS 接口功能实现
  • 4.3.1 接口说明
  • 4.3.2 基于内容的访问接口
  • 4.4 XFS 桌面搜索模块的实现
  • 4.4.1 数据库文件扫描函数
  • 4.4.2 索引部分主要函数实现
  • 4.4.3 搜索部分主要函数实现
  • 4.5 本章小结
  • 第五章 XFS 文件系统测试
  • 5.1 XFS 的基本性能测试
  • 5.1.1 桌面搜索功能测试
  • 5.1.2 桌面搜索性能测试
  • 5.2 测试结果分析
  • 第六章 结束语
  • 6.1 工作总结
  • 6.2 工作展望
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 相关论文文献

    标签:;  ;  ;  

    一个集成桌面搜索的数据库文件系统的研究与实现
    下载Doc文档

    猜你喜欢