一种用于确定查询结果的方法与设备的制造方法_2

文档序号:9631539阅读:来源:国知局
a满足所述阈值,则此时所述物流信息更新频率a及其所对应的参数即可以被采纳进行设置相对应的数据缓存策略,所述数据缓存策略所包含的数据请求A的对应参数可以根据实际需要选择一个或多个,例如,可以采纳查询请求A两次查询请求间隔T、物流公司wl、对应的查询请求时间段tl为所述数据缓存策略的条件,将所述查询请求A两次查询请求间隔T设定为数据缓存失效时间,因此可以设置物流公司wl的在tl时间段的查询请求对应的数据缓存失效时间为T,所设置的特定条件下的数据缓存失效时间就是所述相应的数据缓存策P1。
[0029]接着,用于确定查询结果的设备1的第三装置103根据关于所述第三方数据库的用户查询请求及所述数据缓存策略确定所述用户查询请求所对应的查询结果。基于所述用户查询请求,可以通过所述设备1请求第三方数据库中的相应查询结果,也可以基于所述数据缓存策略确定所述用户查询请求所对应的查询结果的读取路径。例如,若所述查询请求是对应查询对象的首次查询请求时,所述设备1会向第三方数据库请求获得所述查询请求对应的查询结果,同时,将所述第三方数据库中对应的查询结果存储到与第三方数据库对应的缓存中;若所述查询请求不是对应查询对象的首次查询请求时,则说明所述与第三方数据库对应的缓存中存有所述查询请求前一次查询时获取的对应的查询结果信息,此时,需要基于与此查询请求相匹配的数据缓存策略来判断如何确定所述用户查询请求对应的查询结果的读取路径,如是否直接读取所述缓存中与所述查询请求对应的前一次的查询结果,又如是否要进入第三方数据库读取与所述查询请求对应的查询结果。
[0030]在此,设备1通过获取的第三方数据库的更新设置信息配置了关于所述第三方数据库的数据缓存策略,进而根据关于所述第三方数据库的用户查询请求及所述数据缓存策略确定所述用户查询请求所对应的查询结果。由于不同查询请求对应的所述更新设置信息各异,基于所述不同的更新设置信息所设置的数据缓存策略也相应不同,进而,在用户发出查询请求时,可以为其匹配最合理的数据缓存策略,使得在确定查询结果的过程中尽可能的减少了查询操作对第三方数据库的压力,同时保证过期数据的出现低于可容忍的指标,使得对用户体验的负面影响大大降低。
[0031]优选地,所述用于确定查询结果的设备1还包括第四装置(未示出)。所述第四装置将所述查询结果提供至所述用户查询请求所对应的目标应用。
[0032]具体地,所述查询结果包括直接从所述第三方数据库获得的与所述查询请求相对应的查询结果;也包括从与所述第三方数据库对应的缓存中读取的与所述查询请求相对应的查询结果,此时所述缓存中对应的查询结果与所述查询申请前一次查询时所对应的查询结果一致。将所获得的查询结果返还给所述用户查询请求对应的目标应用。所述目标应用包括任意需要读取所述第三方数据库中数据的应用,例如用户希望通过电商系统查询与自己订单信息相对应的的外部物流公司物流数据库中的信息时,向电商系统发请求查询自己订单的运单号的应用。
[0033]优选地,所述用于确定查询结果的设备1的第三装置103根据所述数据缓存策略确定所述第三方数据库所对应的缓存数据是否有效;当所述第三方数据有效,根据所述用户查询请求在所述缓存数据中查询确定所述查询结果。
[0034]具体地,若所述查询申请不是对应查询对象的首次查询,说明在所述第三方数据库对应的缓存中存在着所述查询请求前一次查询时的查询结果。所述第三方数据库中与所述查询请求对应的查询结果与所述第三方数据库对应缓存中存储的前一次查询请求对应的查询结果相比,可能并没有发生变更,也可能已经发生了变更。若所述查询结果没有发生变更,则所述缓存中的与前一次查询请求对应的查询结果与本次所述查询请求对应的查询结果一致,则读取缓存中的相应查询结果的操作合理;若所述查询结果发生了变更,则需要从原始的第三方数据库中读取相应的查询请求对应的查询结果,这样才能避免查询结果成为过期数据。在此,通过所述数据缓存策略对所述第三方数据库对应的缓存中的查询结果的有效性进行判断,若依照所述数据缓存策略,所述查询请求对应的缓存中的第三方数据有效,则所述缓存中的查询结果就是要返还给查询用户的查询结果。例如,上述当电商用户请求所述电商系统查询对应外部物流公司的物流信息数据库的相关物流信息时,依据物流公司wl的在tl时间段的查询请求对应的数据缓存失效时间为T设置相应的数据缓存策略P1,若查询请求C满足物流公司是wl,且在tl时间段请求查询,则查询请求C适用所述缓数据缓存策略P1,进而,若查询请求C是在所述数据缓存失效时间T内的重复请求,那么所述第三方数据有效,将复用所述缓存中的第三方数据,也即查询用户所获得的查询结果与前一次查询保持一致。
[0035]更优选地,根据所述用于确定查询结果的设备1的第三装置103,当所述第三方数据失效,根据所述用户查询请求在所述第三方数据库中查询确定所述查询结果。
[0036]具体地,基于所述数据缓存策略,所述查询请求对应的所述缓存中第三方数据失效,则直接获得所述第三方数据库中与所述查询请求对应的查询结果。例如,上述当电商用户请求所述电商系统查询对应外部物流公司的物流信息数据库的相关物流信息时,依据物流公司wl的在tl时间段的查询请求对应的数据缓存失效时间为T设置相应的数据缓存策略P1,若查询请求D也满足物流公司是wl,且在tl时间段请求查询,则查询请求D适用所述缓存缓存策略P1,进而,若查询请求D的请求距离前一次请求已经超过了所述数据缓存失效时间T,则判断所述缓存中的第三方数据已经失效,此时查询请求D所对应的查询结果需要进入所述第三方数据库中读取确定。
[0037]在一个优选实施例中,所述用于确定查询结果的设备1的第一装置101从所获取的多个查询请求中抽取样本查询请求;根据所述样本查询请求获取对应的第三方数据库的数据更新信息;根据所述数据更新信息确定所述第三方数据库的更新设置信息。
[0038]具体地,首先,所述设备1的第一装置101从所获得的多个查询请求中抽取样本查询请求。所述第三方数据库的更新设置信息是基于具体的查询请求获得的,所述查询请求可以从所述多个查询请求中抽取的一部分样本。在此,所述样本的抽取包括定期从一段时间内所有查询用户的查询请求中抽取一定比例的样本。同时,样本的选取应该能够尽可能兼顾到各种不同业务场景的查询请求,进而,基于样本查询请求的更新设置信息,以及最后获得的数据缓存策略才能尽可能更合理并具有尽可能广泛的适用范围。例如,电商用户请求所述电商系统查询对应第三方数据库时,为获得更合理的更新设置信息,如物流信息更新频率,需要从电商用户的查询请求中获取样本查询请求,所抽取的样本应该涵盖尽可能多的的物流公司、时间段、业务类型等。
[0039]在此,所有的样本查询请求都会直接请求第三方数据库以获得与所述样本查询请求对应的最新的统计数据。
[0040]接着,所述设备1的第一装置101根据所述样本查询请求获取对应的第三方数据库的数据更新信息。所述数据更新信息包括与所述查询请求相关的所有发生变更的信息,如所述查询请求对应的查询结果,又如与所述查询请求相关的业务场景的其他条件信息。例如,在电商用户请求所述电商系统查询对应第三方数据库时,对于抽取的样本查询请求,所述运输线路、运输天数等变化即是查询结果,同时也是数据更新信息的一种;此外对同一个查询对象多次提出查询请求,用户查询的时间段可能是变化的,但是所述时间段信息并不直接在查询结果中体现出来,但是对于后续更新设置信息的确定是有帮助的,所以这种变化的数据也是一种数据更新信息。
[0041]接着,所述设备1的第一装置101根据所述数据更新信息确定所述第三方数据库的更新设置信息。基于所述数据更新信息的具体变化,可以设置出相应的更新设置信息,所述的更新设置信息反映的是所述第三方数据库中相应数据信息的更新情况,例如,第三方数据库的一个与所述查询请求相关的数据更新信息Μ,Μ不定时的发生变更,而每当所述Μ发生变化,所述第三方数据库中与所述数据更新信息Μ相对应的查询信息就产生更新,则可以将数据更新信息Μ的变更作为触发所述第三方数据库中相应数据变更的触发事件,基于此确定所述第三方数据库的更新设置信息,即所述Μ的变化。又如,与所述查询请求相关的数据更新信息有多个,进而,设定一个与所述多个数据更新信息相关的第三方数据库中数据更新的频率Ν,则以所获得的Ν作为所述更新设置信息,所述不同查询请求对应的各个数据更新信息不同,从而所得到的更新设置信息也各异。
[0042]更优选地,所述用于确定查询结果的设备1中所述数据更新信息包括根据所述样本查询请求在所述第三方数据库中查询所确定的各样本查询请求所对应的查询结果。
[0043]具体地,所述数据更新信息包
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1