基于多级缓存的关键字匹配查询方法技术

技术编号:39731432 阅读:7 留言:0更新日期:2023-12-17 23:34
本申请实施例提供了一种基于多级缓存的关键字匹配查询方法

【技术实现步骤摘要】
基于多级缓存的关键字匹配查询方法、系统、设备和介质


[0001]本专利技术涉及计算机领域,特别涉及一种基于多级缓存的关键字匹配查询方法

系统

设备和介质


技术介绍

[0002]关键字匹配查询,常见于搜索引擎,当用户在搜索框中输入名词时,将该名词作为关键字查询数据库中关联性较强的文本内容并在页面中显示,以便用户更加快捷地搜索到想要查询的结果

[0003]在中小量级关键字查询场景中,其中,中小量级指的是检索词条数目为百万以下,当前的关键字匹配查询方法在面临实时高频查询时,会出现由于查询数据库中表数据量过大以及关键字匹配结果过多而造成的查询系统缓慢和卡顿的问题


技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种基于多级缓存的关键字匹配查询方法

系统

设备和存储介质,能够实现减少数据库访问频次,解决查询系统的缓慢和卡顿的问题,实现高速

低资源占用的中小量级关键字匹配查询

[0005]本申请实施例提供了一种基于多级缓存的关键字匹配查询方法,多级缓存至少包括一级缓存,所述一级缓存存储多个第一索引键值和每个所述第一索引键值对应的至少一个索引文本,所述方法包括:
[0006]接收用户的查询请求,所述查询请求包括关键字;
[0007]将所述关键字的拼音首字母确定为目标键值,查询所述一级缓存中多个所述第一索引键值是否存在和所述目标键值相同的键值;
[0008]若存在,则增加所述一级缓存中和所述目标键值相同的所述第一索引键值的权重值,向所述用户返回第一查询结果,所述第一查询结果至少包括和所述目标键值相同的所述第一索引键值对应的至少一个所述索引文本,所述至少一个所述索引文本包括所述关键字;
[0009]若不存在,则继续在数据库中查询所述关键字并返回第二查询结果;所述一级缓存中多个所述第一索引键值是根据历史索引键值权重表从所述数据库中多个第二索引键值中筛选满足权重条件的键值得到,所述权重条件反映权重值的高低

[0010]可选地,多级缓存包括二级缓存,所述二级缓存存储多个第三索引键值和每个所述第三索引键值对应的至少一个索引文本,所述二级缓存存储的多个所述第三索引键值中至少部分所述第三索引键值不存储于所述一级缓存中,在查询所述一级缓存中多个所述第一索引键值不存在和所述目标键值相同的键值之后,所述方法还包括:
[0011]查询所述二级缓存中多个所述第三索引键值是否存在和所述目标键值相同的键值;
[0012]若存在,则增加所述二级缓存中和所述目标键值相同的所述第三索引键值的权重
值,向用户返回第三查询结果,所述第三查询结果至少包括和所述目标键值相同的所述第三索引键值对应的至少一个所述索引文本,所述至少一个所述索引文本包括所述关键字

[0013]若不存在,则执行所述继续在数据库中查询所述关键字并返回第二查询结果的步骤

[0014]可选地,所述数据库存储所述第二索引键值和全部所述索引文本,所述方法还包括:
[0015]增加在数据库中查询得到的所述关键字对应的所述第二索引键值的权重值;
[0016]比较所述关键字对应的所述第二索引键值增加后的权重值和所述二级缓存中多个所述第三索引键值的权重值中最低权重值的大小;
[0017]若所述最低权重值小于所述关键字对应的所述第二索引键值增加后的权重值,则将所述二级缓存中所述最低权重值的所述第三索引键值及所述第三索引键值对应的所述索引文本替换为增加权重值的所述关键字对应的所述第二索引键值及所述第二索引键值对应的所述索引文本

[0018]可选地,所述方法还包括:
[0019]根据预先设置的所述第一索引键值的失效时间,在所述第一索引键值失效后,删除所述第一索引键值及所述第一索引键值对应的所述索引文本;
[0020]将不存在于所述一级缓存的所述二级缓存中权重值最大的所述第三索引键值及所述第三索引键值对应的所述索引文本加载至所述一级缓存

[0021]可选地,所述方法还包括:
[0022]根据预先设置的所述第三索引键值的失效时间,在所述第三索引键值失效后,删除所述第三索引键值及所述第三索引键值对应的所述索引文本;
[0023]将不存在于所述二级缓存的所述数据库中权重值最大的所述第二索引键值及所述第二索引键值对应的所述索引文本加载至所述二级缓存

[0024]可选地,所述方法还包括:
[0025]获取所述一级缓存中所述第一索引键值的最近一次被访问时间或所述第一索引键值在固定时间段内被访问的平均期望,若所述最近一次被访问时间或所述平均期望不满足时间条件,则将不满足所述时间条件的所述第一索引键值的权重值重置为基础权重

[0026]可选地,所述第三索引键值包括以所述索引文本的拼音首字母进行关联的多个层级的索引键值,所述方法还包括:
[0027]获取所述二级缓存中允许存储的每个所述第三索引键值对应的所述索引文本的最大条数以及所述多个层级的索引键值的最大层级,根据所述最大条数筛选所述第二索引键值,将筛选后的所述数据库中所述第二索引键值以树形结构加载至所述二级缓存中,形成所述多个层级的索引键值

[0028]可选地,所述方法还包括:
[0029]若最大层级的所述第二索引键值对应的所述索引文本的条数大于所述最大条数,则将所述最大层级的所述第二索引键值标记为超限键值

[0030]本申请实施例提供了一种基于多级缓存的关键字匹配查询系统,所述系统包括应用程序和多级缓存,所述多级缓存至少包括一级缓存,所述一级缓存存储多个第一索引键值和每个所述第一索引键值对应的至少一个索引文本;
[0031]所述应用程序,用于接收用户的查询请求,所述查询请求包括关键字;将所述关键字的拼音首字母确定为目标键值;
[0032]所述应用程序,用于查询所述一级缓存中多个所述第一索引键值是否存在和所述目标键值相同的键值;若存在,则增加所述一级缓存中和所述目标键值相同的所述第一索引键值的权重值,向所述用户返回第一查询结果,所述第一查询结果至少包括和所述目标键值相同的所述第一索引键值对应的至少一个所述索引文本,所述至少一个所述索引文本包括所述关键字;若不存在,则继续在数据库中查询所述关键字并返回第二查询结果;所述一级缓存中多个所述第一索引键值是根据历史索引键值权重表从所述数据库中多个第二索引键值中筛选满足权重条件的键值得到,所述权重条件反映权重值的高低

[0033]本申请实施例提供了一种基于多级缓存的关键字匹配查询设备,所述设备包括:处理器和存储器;
[0034]所述存储器,用于存储指令;
[0035]所述处理器,用于执行所述存储器中的所述指令,执行如上述实施例中任一项所述的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于多级缓存的关键字匹配查询方法,其特征在于,多级缓存至少包括一级缓存,所述一级缓存存储多个第一索引键值和每个所述第一索引键值对应的至少一个索引文本,所述方法包括:接收用户的查询请求,所述查询请求包括关键字;将所述关键字的拼音首字母确定为目标键值,查询所述一级缓存中多个所述第一索引键值是否存在和所述目标键值相同的键值;若存在,则增加所述一级缓存中和所述目标键值相同的所述第一索引键值的权重值,向所述用户返回第一查询结果,所述第一查询结果至少包括和所述目标键值相同的所述第一索引键值对应的至少一个所述索引文本,所述至少一个所述索引文本包括所述关键字;若不存在,则继续在数据库中查询所述关键字并返回第二查询结果;所述一级缓存中多个所述第一索引键值是根据历史索引键值权重表从所述数据库中多个第二索引键值中筛选满足权重条件的键值得到,所述权重条件反映权重值的高低
。2.
根据权利要求1所述的方法,其特征在于,多级缓存包括二级缓存,所述二级缓存存储多个第三索引键值和每个所述第三索引键值对应的至少一个所述索引文本,所述二级缓存存储的多个所述第三索引键值中至少部分所述第三索引键值不存储于所述一级缓存中,在查询所述一级缓存中多个所述第一索引键值不存在和所述目标键值相同的键值之后,所述方法还包括:查询所述二级缓存中多个所述第三索引键值是否存在和所述目标键值相同的键值;若存在,则增加所述二级缓存中和所述目标键值相同的所述第三索引键值的权重值,向用户返回第三查询结果,所述第三查询结果至少包括和所述目标键值相同的所述第三索引键值对应的至少一个所述索引文本,所述至少一个所述索引文本包括所述关键字;若不存在,则执行所述继续在数据库中查询所述关键字并返回第二查询结果的步骤
。3.
根据权利要求2所述的方法,其特征在于,所述数据库存储所述第二索引键值和全部所述索引文本,所述方法还包括:增加在数据库中查询得到的所述关键字对应的所述第二索引键值的权重值;比较所述关键字对应的所述第二索引键值增加后的权重值和所述二级缓存中多个所述第三索引键值的权重值中最低权重值的大小;若所述最低权重值小于所述关键字对应的所述第二索引键值增加后的权重值,则将所述二级缓存中所述最低权重值的所述第三索引键值及所述第三索引键值对应的所述索引文本替换为增加权重值的所述关键字对应的所述第二索引键值及所述第二索引键值对应的所述索引文本
。4.
根据权利要求2所述的方法,其特征在于,所述方法还包括:根据预先设置的所述第一索引键值的失效时间,在所述第一索引键值失效后,删除所述第一索引键值及所述第一索引键值对应的所述索引文本;将不存在于所述一级缓存的所述二级缓存中权重值最大的所述第三索引键值及所述第三索引键值对应的所述索引文本加载至所述一级缓存
。5.
根据权利要求2所述的方法,其特征在于,所述方...

【专利技术属性】
技术研发人员:梁智华邹德翔胡国威张怡宁
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1