多个连续top-k关键词查询结果更新方法、系统、存储介质及终端技术方案

技术编号:20797016 阅读:49 留言:0更新日期:2019-04-06 10:37
本发明专利技术提供一种多个连续top‑k关键词查询结果更新方法、系统、存储介质及终端,包括以下步骤:将每个关键词基于关系数据库在先元组查询的备选网络表示为一个以新元组为根节点的网络树;通过自上向下合并近似边的方式将所有的网络树合并为一个以新元组为根节点的根树;自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top‑k关键词基于新元组的查询结果。本发明专利技术的多个连续top‑k关键词查询结果更新方法、系统、存储介质及终端有效地提高了关系数据库中多个连续top‑k关键词搜索的效率;降低了搜索处理过程中对关系数据库的频繁访问;降低了搜索处理过程中的服务器内存消耗。

Updating Method, System, Storage Media and Terminal of Multiple Continuous Top-k Keyword Query Results

The invention provides a method, a system, a storage medium and a terminal for updating the results of multiple continuous top_k keyword queries, including the following steps: representing an alternative network for each keyword queries based on relational databases in a primitive group as a network tree with a new tuple as its root node; and merging all network trees into a new tuple by merging approximate edges from top to bottom. The root tree of the root node calculates the connections in the root tree layer by layer from top to bottom, and merges the queries according to the similarities between the connections to obtain the query results based on new tuples for multiple consecutive top_k keywords. The multi-continuous top_k keyword query result updating method, system, storage medium and terminal of the invention effectively improve the efficiency of multi-continuous top_k keyword search in relational database, reduce frequent access to relational database in search processing, and reduce the memory consumption of server in search processing.

【技术实现步骤摘要】
多个连续top-k关键词查询结果更新方法、系统、存储介质及终端
本专利技术涉及信息处理的
,特别是涉及一种多个连续top-k关键词查询结果更新方法、系统、存储介质及终端。
技术介绍
关系数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。标准数据查询语言SQL就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。随着关系数据库中存储的文本数据的增加,简单高效地从数据库中查询文本数据变得越来越重要。但是,传统的结构化查询方法要求用户掌握一定的结构化查询语言和数据库模式的知识,从而极大地限制了其使用范围。随着互联网的发展,越来越多的普通用户需要访问在线数据库,这些用户通常不具备结构化查询语言和数据库模式的知识。随着网络搜索引擎的兴起,关键词查询(KeywordSearch)因为其简单方便的特点得到了广泛的使用。因此,在关系型数据库中进行关键词搜索就成为一个很自然的需求。通过在关系数据库中引入关键词搜索,不仅使得更多的用户可以在关系数据库中查询数据,而且使得在互联网上发布数据库内容变得简单易行,因而有着重大的理论意义与现实价值。近年来,关系数据库中的关键词搜索研究获得了广泛的关注,成为数据库领域的研究热点。关系数据库中关键词搜索的结果是一组元组连接树(JoinedTupleTree,JTT)。JTT为数据库中包含了关键词的元组根据主外键引用关系连接起来的一个无环、无多重边、无特定根节点的一个无向树。每一个元组连接树(JTT)都是一个关系代数表达式(RelationalAlgebraExpression)的结果。这种代数表达式被称为备选网络(CandidateNetwork,CN)。图1所示即为一些备选网络的示例。备选网络的生成与关系数据库模式以及关键词在关系表中的实际分布有关,关系数据库中top-k关键词搜索的效率取决于如果快速有效地执行这些生成的备选网络从而找到关联度最大的k的JTT作为搜索结果。现有关系数据库上的关键词搜索系统主要包括基于数据图(DataGraphbased)的方法和基于模式图(SchemaGraph-based)的方法。基于数据图的方法的基本思想是在由数据库中所有元组根据外键引用关系构造的数据图上寻找包含关键词的子图。基于模式图的方法首先根据数据库的模式将关键词查询“翻译”为一系列的关系表的连接(Join)表达式,然后生成结构化查询语句交给关系数据库管理系统去执行生成查询结果。当数据库被更新以后,如何高效地维护top-k查询结果是一个非常有挑战性的工作。因为数据库更新不仅会导致新的查询结果被生成和已有的查询结果被删除,而且已有查询结果的关联度也会被改变。若数据库被持续更新时需要同时维护多个关键词查询的top-k结果,则面临更大的挑战。连续top-k关键词搜索的处理过程分为以下两个步骤:(1)在关键词查询提交到系统时为其计算初始的top-k结果,并保存计算结果后的CN的元组处理状态。(2)当数据库被改变以后更新top-k查询结果。每一个CN都是一个关系数据库表的连接表达式:其中表示一个关系表Ri的元组集合,为Ri中包含关键词查询中的关键词的元组,则为Ri中不包含关键词的所有元组,表示自然连接。在查询处理过程中中的元组会根据其关联度的大小从高到低依次处理以寻找查询结果。若中的某一个元组可构成的查询结果的关联度不足以构成top-k结果,则其不会被处理。因此,为连续top-k关键词查询计算好初始查询结果以后,每一个中的元组都有一部分或全部元组被处理并被保存下来。数据库的改变主要包括元组的删除和新增。元组的删除的处理比较直接,若构成top-k结果的元组被删除,则需要重启top-k结果的计算过程。对于新增加的元组,则需要判断其是否可以和每一个CN中已处理的元组构成top-k结果。在上述两种情况下,都需要解决的关键问题即是如何高效的计算一组形如的连接表达式的结果。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种多个连续top-k关键词查询结果更新方法、系统、存储介质及终端,用于解决现有技术中当关系数据库更新时多个连续top-k关键词查询结果的快速更新问题。为实现上述目的及其他相关目的,本专利技术提供一种关系数据库中多个连续top-k关键词查询结果更新方法,包括以下步骤:将每个关键词基于关系数据库在先元组查询的备选网络表示为一个以新元组为根节点的网络树;通过自上向下合并近似边的方式将所有的网络树合并为一个以新元组为根节点的根树;自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top-k关键词基于新元组的查询结果。于本专利技术一实施例中,所述近似边是指父节点和子节点的关系表相同的两个边。于本专利技术一实施例中,自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top-k关键词基于新元组的查询结果包括以下步骤:对于根树的每一层的每一类相似连接合并查询能够与所有父节点中的元组相连接的元组集合;计算每一类相似连接中每一个连接的子节点的已处理元组集合与所述元组集合的交集;计算交集中每个元组与新元组可共同构成的查询结果的关联度上限,并删除关联度上限小于预设查询阈值的元组;所述预设查询阈值为对应top-k关键词查询的当前查询结果的最小关联度;若每一个连接的子节点中的元组集合变为空集,则从根树中删除该连接所属的备选网络的所有节点。于本专利技术一实施例中,对于交集中的每一个元组t,t和新元组可共同构成的查询结果的关联度的上限为其中表示t所在的备选网络CN(t)中不同于t所在的元组集合R(t)的其他元组集合中的元组的最大关联度,t.tscore表示单个元组t的关联度,size(CN(t))表示t所在的元组CN(t)的大小,即其含有的元组的个数。相应地,本专利技术还提供一种关系数据库中多个连续top-k关键词查询结果更新系统,包括表示模块、合并模块和查询模块;所述表示模块用于将每个关键词基于关系数据库在先元组查询的备选网络表示为一个以新元组为根节点的网络树;所述合并模块用于通过自上向下合并近似边的方式将所有的网络树合并为一个以新元组为根节点的根树;所述查询模块用于自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top-k关键词基于新元组的查询结果。于本专利技术一实施例中,所述近似边是指父节点和子节点的关系表相同的两个边。于本专利技术一实施例中,所述查询模块自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top-k关键词基于新元组的查询结果执行以下步骤:对于根树的每一层的每一类相似连接合并查询能够与所有父节点中的元组相连接的元组集合;计算每一类相似连接中每一个连接的子节点的已处理元组集合与所述元组集合的交集;计算交集中每个元组与新元组可共同构成的查询结果的关联度上限,并删除关联度上限小于预设查询阈值的元组;所述预设查询阈值为对应top-k关键词查询的当前查询结果的最小关联度;若每一个连接的子节点中的元本文档来自技高网
...

【技术保护点】
1.一种关系数据库中多个连续top‑k关键词查询结果更新方法,其特征在于,包括以下步骤:将每个关键词基于关系数据库在先元组查询的备选网络表示为一个以新元组为根节点的网络树;通过自上向下合并近似边的方式将所有的网络树合并为一个以新元组为根节点的根树;自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top‑k关键词基于新元组的查询结果。

【技术特征摘要】
1.一种关系数据库中多个连续top-k关键词查询结果更新方法,其特征在于,包括以下步骤:将每个关键词基于关系数据库在先元组查询的备选网络表示为一个以新元组为根节点的网络树;通过自上向下合并近似边的方式将所有的网络树合并为一个以新元组为根节点的根树;自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top-k关键词基于新元组的查询结果。2.根据权利要求1所述的关系数据库中多个连续top-k关键词查询结果更新方法,其特征在于,所述近似边是指父节点和子节点的关系表相同的两个边。3.根据权利要求1所述的关系数据库中多个连续top-k关键词查询结果更新方法,其特征在于,自上向下逐层计算所述根树中的连接,并根据连接之间的相似性进行合并查询,以获取多个连续top-k关键词基于新元组的查询结果包括以下步骤:对于根树的每一层的每一类相似连接合并查询能够与所有父节点中的元组相连接的元组集合;计算每一类相似连接中每一个连接的子节点的已处理元组集合与所述元组集合的交集;计算交集中每个元组与新元组可共同构成的查询结果的关联度上限,并删除关联度上限小于预设查询阈值的元组;所述预设查询阈值为对应top-k关键词查询的当前查询结果的最小关联度;若每一个连接的子节点中的元组集合变为空集,则从根树中删除该连接所属的备选网络的所有节点。4.根据权利要求3所述的关系数据库中多个连续top-k关键词查询结果更新方法,其特征在于,对于交集中的每一个元组t,t和新元组可共同构成的查询结果的关联度的上限为其中表示t所在的备选网络CN(t)中不同于t所在的元组集合R(t)的其他元组集合中的元组的最大关联度,t.tscore表示单个元组t的关联度,size(CN(t))表示t所在的元组CN(t)的大小,即其含有的元组的个数。5.一种关系数据库中多个连续top-k关键词查询结果更新系统,其特征在于,包括表示模块、合并模块和查询模块;所述表示模块用于将每个关键词基于关系数据库在先元组查询的备选网络表示为一个以新元组为根节点的网络树;所述合并模块用于通过自...

【专利技术属性】
技术研发人员:许延伟
申请(专利权)人:上海宽带技术及应用工程研究中心
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1