数据查询方法和数据查询系统技术方案

技术编号:21453874 阅读:31 留言:0更新日期:2019-06-26 04:45
本发明专利技术实施例提供一种数据查询方法和系统,该方法应用于对一类客户端的数据访问请求进行处理的处理服务器上,包括:接收预设客户端类别中任一个客户端发送的数据访问请求,且数据访问请求为获取目标数据的请求;根据查询优先级查询多个存储单元,以获取目标数据,其中,多个存储单元按照查询优先级从大到小的顺序排列为:处理服务器的内存、缓存服务器、数据库服务器;将获取到的目标数据返回给客户端。本发明专利技术实施例通过将处理服务器的内存加入数据访问请求的响应模式中,并对处理服务器内存配置最大查询优先级,从而减轻了缓存服务器的任务响应压力,解决了数据访问请求响应时间较长的技术问题。

【技术实现步骤摘要】
数据查询方法和数据查询系统
本专利技术涉及数据处理的
,具体涉及一种数据查询方法和数据查询系统。
技术介绍
随着互联网的发展,数据库的访问量也不断增长。为了降低数据库服务器的访问压力,数据库服务器之前通常设置有缓存服务器。在接收到客户端对于某数据的访问请求时,目前的数据查询方式是优先到缓存服务器中查询是否存在该数据,如果不存在再到数据库服务器查询。目前的这种数据查询方法,在缓存数据是一个公共数据,并且数据量较大(大于100KB)时,极易出现响应时间较长的现象。具体地,所有客户端都会访问公共缓存,而公共缓存对应一个缓存键,缓存键将公共缓存的访问请求映射到缓存公共数据的缓存服务器上。当各个客户端的访问量增加时,所有的访问量都会压在某一台缓存服务器上。因为单台缓存服务器的任务处理能力有限,不能及时处理大量请求,从而导致后面访问请求阻塞延时,进而导致整个缓存服务器的请求超时,调用失败。更为严重的是,当访问量超出了单台缓存服务器的任务处理能力时,缓存服务器和它的从服务器会失联,失联后当前缓存服务器会和它的从服务器进行缓存数据同步,这是一个资源消耗较高的操作,从而使得缓存服务器的任务处理能力进一步下降,响应时间进一步增加。针对缓存数据是公共数据且数据量较大时,数据访问请求的响应时间较长的技术问题,现有技术中缺乏有效的解决方案。
技术实现思路
有鉴于此,本专利技术实施例提供了一种数据查询方法及数据查询系统,以解决数据访问请求响应时间较长的技术问题。根据本专利技术的第一方面,提供一种数据查询方法,应用于对一类客户端的数据访问请求进行处理的处理服务器上,所述数据查询方法包括:接收预设客户端类别中任一个客户端发送的数据访问请求,且所述数据访问请求为获取目标数据的请求;根据查询优先级查询多个存储单元,以获取所述目标数据,其中,多个所述存储单元按照所述查询优先级从大到小的顺序排列为:所述处理服务器的内存、缓存服务器、数据库服务器;将获取到的所述目标数据返回给所述客户端。可选地,根据查询优先级查询多个存储单元,包括:根据所述处理服务器的内存对所述目标数据取值的更新状况,从所述处理服务器的内存和所述缓存服务器中确定数据读取单元;从所述数据读取单元中读取所述目标数据,得到读取结果;根据所述读取结果,判断是否从所述数据读取单元中读取到所述目标数据;在没有从所述数据读取单元中读取到所述目标数据的情况下,从所述数据库服务器读取所述目标数据。可选地,根据所述处理服务器的内存对所述目标数据取值的更新状况,从所述处理服务器的内存和所述缓存服务器中确定数据读取单元,包括:根据标识信息,判断所述处理服务器的内存是否将所述目标数据的取值更新到与所述缓存服务器一致;在所述处理服务器的内存没有将所述目标数据的取值更新到与所述缓存服务器一致的情况下,将所述缓存服务器确定为所述数据读取单元;以及,在所述处理服务器的内存将所述目标数据的取值更新到与所述缓存服务器一致的情况下,将所述处理服务器的内存确定为所述数据读取单元。可选地,所述标识信息包括缓存标识数据和内存标识数据,其中,所述缓存标识数据为所述缓存服务器在将所述目标数据的数值更新到与所述数据库服务器一致时,更新得到的一个数据;所述内存标识数据为所述处理服务器的内存将所述目标数据的数值更新到与所述缓存服务器一致时,根据所述缓存标识数据更新得到的一个数据。可选地,所述读取结果为所述目标数据以预设数据交换格式表示的字符串,根据所述读取结果,判断是否从所述数据读取单元中读取到所述目标数据,包括:判断所述字符串中所述目标数据的取值是否为空;在所述字符串中所述目标数据的取值为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据;以及,在所述字符串中所述目标数据的取值不为空,且所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据。可选地,在所述字符串中所述目标数据的取值不为空,且所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据,包括:在所述字符串中所述目标数据的取值不为空时,判断所述字符串中所述目标数据的取值是否为拖底数据,其中,所述拖底数据为所述数据库服务器中不存在数据的预设取值;在所述字符串中所述目标数据的取值不为所述拖底数据的情况下,判断所述字符串转化的对象是否为空;在所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据。可选地,在所述字符串中所述目标数据的取值不为空的情况下,还包括:读取标识符,其中,所述标识符的取值是根据所述数据读取单元的设定来源被预先配置;根据所述标识符,判断所述数据读取单元是所述缓存服务器还是所述处理服务器的内存;在所述数据读取单元是所述缓存服务器的情况下,通过所述字符串更新所述处理服务器的内存中的所述目标数据。根据本专利技术的第二方面,提供一种数据查询系统,被设置在对一类客户端的数据访问请求进行处理的处理服务器上,所述数据查询系统包括:接收模块,用于接收预设客户端类别中任一个客户端发送的数据访问请求,且所述数据访问请求为获取目标数据的请求;查询获取模块,用于根据查询优先级查询多个存储单元,以获取所述目标数据,其中,多个所述存储单元按照所述查询优先级从大到小的顺序排列为:所述处理服务器的内存、缓存服务器、数据库服务器;数据返回模块,用于将获取到的所述目标数据返回给所述客户端。可选地,所述查询获取模块,包括:确定单元,用于根据所述处理服务器的内存对所述目标数据取值的更新状况,从所述处理服务器的内存和所述缓存服务器中确定数据读取单元;第一读取单元,用于从所述数据读取单元中读取所述目标数据,得到读取结果;判断单元,用于根据所述读取结果,判断是否从所述数据读取单元中读取到所述目标数据;第二读取单元,用于在没有从所述数据读取单元中读取到所述目标数据的情况下,从所述数据库服务器读取所述目标数据。可选地,所述确定单元用于:根据标识信息,判断所述处理服务器的内存是否将所述目标数据的取值更新到与所述缓存服务器一致;在所述处理服务器的内存没有将所述目标数据的取值更新到与所述缓存服务器一致的情况下,将所述缓存服务器确定为所述数据读取单元;以及,在所述处理服务器的内存将所述目标数据的取值更新到与所述缓存服务器一致的情况下,将所述处理服务器的内存确定为所述数据读取单元。可选地,所述标识信息包括缓存标识数据和内存标识数据,其中,所述缓存标识数据为所述缓存服务器在将所述目标数据的数值更新到与所述数据库服务器一致时,更新得到的一个数据;所述内存标识数据为所述处理服务器的内存将所述目标数据的数值更新到与所述缓存服务器一致时,根据所述缓存标识数据更新得到的一个数据。可选地,所述读取结果为所述目标数据以预设数据交换格式表示的字符串,所述判断单元用于:判断所述字符串中所述目标数据的取值是否为空;在所述字符串中所述目标数据的取值为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据;以及,在所述字符串中所述目标数据的取值不为空,且所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据。可选地,所述判断单元用于:在所述字符串中所述目标数据的取值不为空时,判断所述字符串中所述目标数据的取值是否为拖底数据,其中本文档来自技高网...

【技术保护点】
1.一种数据查询方法,其特征在于,应用于对一类客户端的数据访问请求进行处理的处理服务器上,所述数据查询方法包括:接收预设客户端类别中任一个客户端发送的数据访问请求,且所述数据访问请求为获取目标数据的请求;根据查询优先级查询多个存储单元,以获取所述目标数据,其中,多个所述存储单元为:所述处理服务器的内存、缓存服务器和数据库服务器,多个所述存储单元按照所述查询优先级从大到小的顺序排列为:所述处理服务器的内存、缓存服务器、数据库服务器;将获取到的所述目标数据返回给所述客户端。

【技术特征摘要】
1.一种数据查询方法,其特征在于,应用于对一类客户端的数据访问请求进行处理的处理服务器上,所述数据查询方法包括:接收预设客户端类别中任一个客户端发送的数据访问请求,且所述数据访问请求为获取目标数据的请求;根据查询优先级查询多个存储单元,以获取所述目标数据,其中,多个所述存储单元为:所述处理服务器的内存、缓存服务器和数据库服务器,多个所述存储单元按照所述查询优先级从大到小的顺序排列为:所述处理服务器的内存、缓存服务器、数据库服务器;将获取到的所述目标数据返回给所述客户端。2.根据权利要求1所述的数据查询方法,其特征在于,根据查询优先级查询多个存储单元,包括:根据所述处理服务器的内存对所述目标数据取值的更新状况,从所述处理服务器的内存和所述缓存服务器中确定数据读取单元;从所述数据读取单元中读取所述目标数据,得到读取结果;根据所述读取结果,判断是否从所述数据读取单元中读取到所述目标数据;在没有从所述数据读取单元中读取到所述目标数据的情况下,从所述数据库服务器读取所述目标数据。3.根据权利要求2所述的数据查询方法,其特征在于,根据所述处理服务器的内存对所述目标数据取值的更新状况,从所述处理服务器的内存和所述缓存服务器中确定数据读取单元,包括:根据标识信息,判断所述处理服务器的内存是否将所述目标数据的取值更新到与所述缓存服务器一致;在所述处理服务器的内存没有将所述目标数据的取值更新到与所述缓存服务器一致的情况下,将所述缓存服务器确定为所述数据读取单元;以及,在所述处理服务器的内存将所述目标数据的取值更新到与所述缓存服务器一致的情况下,将所述处理服务器的内存确定为所述数据读取单元。4.根据权利要求3所述的数据查询方法,其特征在于,所述标识信息包括缓存标识数据和内存标识数据,其中,所述缓存标识数据为所述缓存服务器在将所述目标数据的数值更新到与所述数据库服务器一致时,更新得到的一个数据;所述内存标识数据为所述处理服务器的内存将所述目标数据的数值更新到与所述缓存服务器一致时,根据所述缓存标识数据更新得到的一个数据。5.根据权利要求2所述的数据查询方法,其特征在于,所述读取结果为所述目标数据以预设数据交换格式表示的字符串,根据所述读取结果,判断是否从所述数据读取单元中读取到所述目标数据,包括:判断所述字符串中所述目标数据的取值是否为空;在所述字符串中所述目标数据的取值为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据;以及,在所述字符串中所述目标数据的取值不为空,且所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据。6.根据权利要求5所述的数据查询方法,其特征在于,在所述字符串中所述目标数据的取值不为空,且所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据,包括:在所述字符串中所述目标数据的取值不为空时,判断所述字符串中所述目标数据的取值是否为拖底数据,其中,所述拖底数据为所述数据库服务器中不存在数据的预设取值;在所述字符串中所述目标数据的取值不为所述拖底数据的情况下,判断所述字符串转化的对象是否为空;在所述字符串转化的对象为空的情况下,确定没有从所述数据读取单元中读取到所述目标数据。7.根据权利要求5所述的数据查询方法,其特征在于,在所述字符串中所述目标数据的取值不为空的情况下,还包括:读取标识符,其中,所述标识符的取值是根据所述数据读取单元的设定来源被预先配置;根据所述标识符,判断所述数据读取单元是所述缓存服务器还是所述处理服务器的内存;在所述数据读取单元是所述缓存服务器的情况下,通过所述字符串更新所述处理服务器的内存中的所述目标数据。8.一种数据查询系统,其特征在于,被设置在对一类客户端的数据访问请求进...

【专利技术属性】
技术研发人员:刘旭东白云鹏陶武强张玉良
申请(专利权)人:京东数字科技控股有限公司
类型:发明
国别省市:北京,11

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

1