一种查询优化方法及装置的制造方法

文档序号:9750903阅读:244来源:国知局
一种查询优化方法及装置的制造方法
【技术领域】
[0001 ]本发明涉及数据查询技术领域,具体涉及一种查询优化方法及装置。
【背景技术】
[0002]资源描述框架(RDF)是一种用户描述web资源的标记语言,拥有非常大的包容性,社交网络、知识图谱等越来越多的领域使用RDF图数据库。SparQL是RDF图数据的标准查询语言,但与传统的关系型数据库的查询不同,SparQL查询的复杂性更高,同一查询,查询条件的组织顺序不同,检索效率相差很大。因此,为了提高检索效率需要进行优化处理。
[0003]现有的SparQL查询优化大多是从分布式并行查询方面来提高查询效率。虽然具有一定的成效,但是只从一个方面来提升查询效率,毕竟有限。

【发明内容】

[0004]因此,本发明要解决的技术问题在于现有的查询优化方法只从分布式并行查询方面提尚查询效率,提升的空间有限。
[0005]为此,本发明提供了如下技术方案:
[0006]—种查询优化方法,包括如下步骤:
[0007]获取检索词;
[0008]获取与检索词匹配的关键词及关键词的优先度;
[0009]根据关键词及其优先度执行检索;
[0010]检索完成后获取本次检索时间;
[0011 ]获取上一次利用关键词进行检索的检索时间;
[0012]判断本次检索时间是否大于上一次的检索时间,是则降低本次检索中的各个关键词的优先度;否则提高本次检索中的各个关键词的优先度。
[0013]优选地,获取检索词的步骤包括:
[0014]获取用户的查询请求语句;
[0015]利用分词法获取检索词。
[0016]优选地,获取与检索词匹配的关键词的步骤包括:
[0017]提取RDF图数据的全部关键词;
[0018]将检索词与RDF图数据的全部关键词分别进行匹配,获取匹配的关键词。
[0019]优选地,判断本次检索时间是否大于上一次的检索时间,是则降低本次检索中的各个关键词的优先度;否则提高本次检索中的各个关键词的优先度的步骤包括:
[0020]将关键词的优先度系数乘以大于I的系数,降低关键词的优先度;
[0021]将关键词的优先度系数乘以大于O小于I的系数,提高关键词的优先度。
[0022]优选地,还包括:
[0023 ]保存本次检索时间和修改后的关键词的优先度。
[0024]一种查询优化装置,包括:
[0025]第一获取单元,用于获取检索词;
[0026]第二获取单元,用于获取与检索词匹配的关键词及关键词的优先度;
[0027]检索单元,用于根据关键词及其优先度执行检索;
[0028]第三获取单元,用于检索完成后获取本次检索时间;
[0029]第四获取单元,用于获取上一次利用关键词进行检索的检索时间;
[0030]优先度调整单元,用于判断本次检索时间是否大于上一次的检索时间,是则降低本次检索中的各个关键词的优先度;否则提高本次检索中的各个关键词的优先度。
[0031]优选地,第一获取单元包括:
[0032]查询请求语句获取子单元,用于获取用户的查询请求语句;
[0033]检索词获取子单元,用于利用分词法获取检索词。
[0034]优选地,第二获取单元包括:
[0035]提取子单元,用于提取RDF图数据的全部关键词;
[0036]匹配子单元,用于将检索词与RDF图数据的全部关键词分别进行匹配,获取匹配的关键词。
[0037]优选地,优先度调整单元包括:
[0038]优先度降低子单元,用于将关键词的优先度系数乘以大于I的系数,降低关键词的优先度;
[0039]优先度提高子单元,用于将关键词的优先度系数乘以大于O小于I的系数,提高关键词的优先度。
[0040]优选地,还包括:
[0041]保存单元,用于保存本次检索时间和修改后的关键词的优先度。
[0042]本发明技术方案,具有如下优点:
[0043]本发明提供的查询优化方法及装置,在每一次查询之后,都会分析当次的检索时间与上一次利用同一组关键词进行检索的检索时间的差别,修改参与检索的关键词的优先度。从而,随着检索次数的增加,各个关键词的优先度会越来越合理,检索效率也会越来越尚O
【附图说明】
[0044]为了更清楚地说明本发明【具体实施方式】或现有技术中的技术方案,下面将对【具体实施方式】或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]图1为本发明实施例1中一种查询优化方法的流程图;
[0046]图2为本发明实施例2中一种查询优化装置的原理框图;
【具体实施方式】
[0047]下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
[0049]实施例1
[0050]如图1所示,本实施例提供了一种查询优化方法,包括如下步骤:
[0051 ] S1:获取检索词;
[0052]S2:获取与检索词匹配的关键词及关键词的优先度;
[0053]S3:根据关键词及其优先度执行检索;
[0054]S4:检索完成后获取本次检索时间;
[0055]S5:获取上一次利用该关键词进行检索的检索时间;
[0056]S6:判断本次检索时间是否大于上一次的检索时间,是则降低本次检索中的各个关键词的优先度;否则提高本次检索中的各个关键词的优先度。
[0057]本实施例提供的查询优化方法,在每一次查询之后,都会分析当次的检索时间与上一次利用同一组关键词进行检索的检索时间的差别,修改参与检索的关键词的优先度。从而,随着检索次数的增加,各个关键词的优先度会越来越合理,检索效率也会越来越高。
[0058]本实施例中,关键词的优先度是通过优先度系数来量化的,优先度系数越小优先度越高。该查询优化方法主要适用于RDF图数据中的SparQL查询,因为SparQL查询中同一组关键词的顺序会影响检索效率。另外,该查询优化方法中,如果本次检索是该关键词组合的第一次检索,即不存在上一次检索时间,则不进行关键词优先度的调整。如果本次检索时间正好等于上一次的检索时间,也不进行关键词优先度的调整。其中,如果与检索词匹配的用于检索的关键词只有一个的话,每次检索的时间应该都是一样的,因此一般都不需要调整其优先度。因此,本实施例中需要调整关键词优先度的,检索中都至少用到两个关键词的组合,因其组合顺序不同才会导致两次检索的时间不同。
[0059]具体地,上述步骤SI,即获取检索词的步骤包括:
[0060]首先,获取用户的查询请求语句;
[0061]然后,利用分词法获取检索词。
[0062]具体地,上述步骤S2中,即获取与检索词匹配的关键词的步骤包括:
[0063]首先,提取RDF图数据的全部关键词;
[0064]然后,将检索词与RDF图数据的全部关键词分别进行匹配,获取匹配的关键词。
[0065]上述RDF图数据的全部关键词是通过预先处理RDF图数据,然后经关键词的提取、分类和去重后最终得到的。之后,还需要初始化RDF图数据的全部关键词的优先度,即各个关键词预设一个优先度系数,提取的全部关键词和初始化的关键词优先度是存储在查询字典中的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1