论文部分内容阅读
随着互联网的快速发展和企业信息化程度的提高,越来越多的信息被存储在数据库中并供用户查询。但是传统的数据库系统是面向程序员和高级用户的,用户需要熟悉复杂的查询语句并且了解数据库的模式才能查询信息,这对一般用户而言比较困难。同时,由于数据库查询缺少对相关性排序的支持,用户难以有效地从成千上万的查询结果中发现所需要的信息。而信息检索中的相关技术能够解决目前数据库查询中存在的这些不足,因此如何将数据库技术与信息检索技术融合起来,为这些面向用户的数据库提供高效且易于使用的检索功能,成为一个普遍的需求。而数据库的关键词检索系统正是这种需求下的一个产物。本文首先介绍两类主要的数据库关键词检索算法:数据图算法和模式图算法,然后对这两类算法进行比较。由于模式图算法不需要维持数据库中所有元组构成的关系图,具有较小的系统开销。同时,当数据库的内容发生变化时,模式图检索算法能够更加快速地适应这些变化,并在检索结果中加以体现。因此,基于模式图的检索算法是目前数据库关键词检索研究的热点之一。但是,现有的模式图算法仍然存在着检索效率低下,查询准确率不高等问题。为了解决这些问题,本文对现有算法进行改进,改进后的算法包括以下四个部分:数据库预处理、精简查询模式构造、候选网络生成和候选网络执行。其中,数据库预处理是指根据数据库包含的关键词,生成预设查询模式以及对应的元候选网络,同时根据不同的更新条件,对元候选网络进行更新。精简查询模式构造是对用户输入的关键词进行组合,去除重复出现的元组,构造精简查询模式,通过这种方法有效地降低了元组集的规模。候选网络生成时,首先匹配用户的查询模式与预设查询模式,如果匹配成功,则选取预设模式对应的候选网络,如果匹配失败,则根据查询模式与数据库模式图动态生成候选网络。候选网络执行时,本文选取余弦向量公式来计算元组连接树与查询的相似度,并据此设计一个优化的元组连接树生成算法,同时还对SQL语句的生成与执行进行优化,进一步提高系统检索的效率。在前文改进算法研究的基础上,本文设计并实现一个基于改进算法的系统,与使用现有检索算法的系统进行比较。实验使用两个规模的数据集,通过对比使用不同优化算法的系统检索耗时来分析改进算法对系统检索效率的影响,并引入信息检索中的平均准确率与召回率来评价系统的检索性能。实验表明,使用改进算法的系统具有更高的检索性能和检索效率。