论文部分内容阅读
传统上,数据库技术和信息检索技术两者独立发展。数据库技术处理结构化数据,采用结构化查询语言,查询结果是精确的完全的并且被同等对待。信息检索技术处理非结构化数据,采用非结构化查询语言,查询结果不精确不完全,根据相关性进行返回。把信息搜索技术应用到数据库关键词的搜索中提高了数据库系统的易用性,用户无需知道数据的存储结构和SQL语法规则,可以使用简单的关键词自由的检索数据库,挖掘其中的信息和知识,信息资源的利用效率得到很大提高。因此,8010教研室在数字有机体数据库系统基础上,以数据库信息的灵活检索为根本出发点,开发了数据库信息检索系统。信息检索系统可分为预处理阶段和查询阶段。查询阶段首先对用户检索请求进行语法分析,然后通过检索策略获得检索结果。在用户未指定检索关键字所在属性的情况下,检索策略的设计是研究的一个重点,检索结果必须满足完整性和非冗余性。本课题充分分析现有数据库关键字检索系统和MySQL数据库。在数字有机体数据库系统的基础上,设计和实现了基于数字有机体数据库信息检索系统的检索策略。此部分主要分为四个阶段:索引查询、生成数据图、获得结果树和SQL语句的生成、执行。索引查询和生成数据图在同一模块中实现,数据图由关键字所在位置和数据库结构生成,体现了数据库中包含检索关键字的关系以及关系之间的联系。通过采用双层结构,充分利用数据库结构属性和查询类型特点对索引信息进行精炼,减少数据图中无用数据的产生。遍历数据图,可获得所有满足用户请求的子图(结果树)。在结果树生成算法中,在保证结果树完整性的同时,对遍历起始节点的有效选择减少了在遍历时产生的冗余子树。结果树包含检索请求的所有关键字,指明了关系中的选择操作和关系之间的连接条件,通过构造相应的SQL查询语句,最终获得满足检索结果。系统通过模块化和层次化设计使各模块算法具有良好的扩张性,并且采用ODBC接口与数据库服务器进行交互,确保了整个信息检索模块的独立性。最后对系统进行功能和性能测试,指出不同参数对数据库关键字检索的影响。