CN110909025A - 数据库的查询方法、查询装置及终端 - Google Patents
数据库的查询方法、查询装置及终端 Download PDFInfo
- Publication number
- CN110909025A CN110909025A CN201811080644.0A CN201811080644A CN110909025A CN 110909025 A CN110909025 A CN 110909025A CN 201811080644 A CN201811080644 A CN 201811080644A CN 110909025 A CN110909025 A CN 110909025A
- Authority
- CN
- China
- Prior art keywords
- target data
- cache
- database
- query request
- level cache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000001360 synchronised effect Effects 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 9
- 230000009286 beneficial effect Effects 0.000 abstract description 6
- 238000012545 processing Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Abstract
本发明适用于计算机技术领域,提供了一种数据库的查询方法、查询装置、终端及计算机可读存储介质,所述查询方法包括:接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;若所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;若所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。本发明能够提高减轻数据库的查询压力,有利于保障数据库的稳定运行。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种数据库的查询方法、查询装置、终端及计算机可读存储介质。
背景技术
目前,在计算机领域普遍使用缓存来解决数据库服务器和应用服务器之间的访问瓶颈,以应对多并发的数据查询请求,提高数据库的响应性能。
然而,当缓存中不存在所要查询的数据库数据时,也即缓存失效时,例如旧缓存过期而新缓存尚未生效的一段时间,大量的查询请求会直接发送到数据库,从而增加了数据库的查询压力,容易造成缓存击穿。
发明内容
有鉴于此,本发明提供了一种数据库的查询方法、查询装置、终端及计算机可读存储介质,以解决现有技术中发生缓存失效时,数据库查询压力增大,容易造成缓存击穿情况的问题。
本发明的第一方面提供了一种数据库的查询方法,包括:
接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;
若所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;
若所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
本发明的第二方面提供了一种数据库的查询装置,包括:
第一查找单元,用于接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;
第二查找单元,用于若所述第一查找单元的查找结果为所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;
响应单元,用于若所述第二查找单元的查找结果为所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
本发明的第三方面提供了一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如任一项所述数据库的查询方法的步骤。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如任一项所述数据库的查询方法的步骤。
本发明与现有技术相比存在的有益效果是:
本发明通过在接收到数据的查询请求时,首先从数据库的一级缓存中查找目标数据,若一级缓存中不存在所述目标数据,也即发生了缓存失效,则通过数据库的二级缓存提供目标数据,同时还可以将目标数据同步到一级缓存,来提高一级缓存处理数据查询请求的能力;也即,本发明通过将缓存设置为一级缓存和二级缓存,减少了一级缓存发生缓存失效时,数据查询请求直接访问数据库的情形发生,从而能够减轻数据库的查询压力,有利于保障数据库的稳定运行。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的数据库的查询方法的实现流程图;
图2是本发明另一实施例提供的数据库的查询方法的实现流程图;
图3是本发明实施例提供的数据库的查询装置的结构示意图;
图4是本发明实施例提供的终端的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图通过具体实施例来进行说明。
参见图1,其示出了本发明实施例提供的数据库的查询方法的实现流程图,详述如下:
在步骤101中,接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据。
在本发明实施例中,客户端向服务器发送数据查询请求,该客户端可以为终端上的应用程序,例如APP,也可以是机器人终端。服务器可以是分布式服务器,包括用于存储数据信息的数据库,该数据库的缓存包括一级缓存和二级缓存。
在本发明实施例中,服务器可以采用内存作为一级缓存,以让并发的大部分请求可以快速的从内存中响应,这样可以最大程度的提高缓存查询的效能。
在本发明实施例中,服务器接收到客户端发送的查询请求之后,首先从一级缓存中查找是否存在与该查询请求关联的目标数据,该目标数据即该查询请求所要查询的数据;也即,确认该查询请求是否命中了一级缓存。
具体的,服务器在接收到查询请求之后,可以调用指定的方法来生成缓存键(key),并基于该key在一级缓存中进行搜索,以检查该查询请求是否命中了一级缓存。
在本发明实施例中,若一级缓存中存在与该查询请求关联的目标数据,也即,确认该查询请求命中了一级缓存,则将所述目标数据返回给发送查询请求的客户端,本次数据查询结束。
在步骤102中,若所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据。
在本发明实施例中,当一级缓存中不存在目标数据时,也即该查询请求未命中一级缓存,则在数据库的二级缓存中查找是否存在该目标数据,也即,检查该查询请求是否命中了二级缓存。
具体的,在该查询请求未命中一级缓存的前提下,同样可以调用预设的方法来生成key,在这里生成的key可以和向一级缓存进行查询时生成key不一样;当然,这里同样也可以采用向一级缓存进行查询时所生成的key;基于key在二级缓存中进行搜索查询,以检查该查询请求是否命中了二级缓存。
在本发明实施例中,二级缓存可以提供接口声明,用户可以根据自己的需求采用不同方式实现二级缓存的配置,例如,采用Redis作为二级缓存。
在步骤103中,若所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
在本发明实施例中,若本次查询请求命中了二级缓存,则将二级缓存中查找到的目标数据返回给发送查询请求的客户端,并且,将该目标数据同步到一级缓存,从而提高一级缓存的查询命中率。
由上可知,本发明通过在接收到数据的查询请求时,首先从数据库的一级缓存中查找目标数据,若一级缓存中不存在所述目标数据,也即发生了缓存失效,则通过数据库的二级缓存提供目标数据,同时还可以将目标数据同步到一级缓存,来提高一级缓存处理数据查询请求的能力;也即,本发明通过将缓存设置为一级缓存和二级缓存,减少了一级缓存发生缓存失效时,数据查询请求直接访问数据库的情形发生,从而能够减轻数据库的查询压力,有利于保障数据库的稳定运行。
图2示出了本发明另一实施例提供的数据库的查询方法的实现流程图,详述如下:
在步骤201中,接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据。
在步骤202中,若所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据。若是,则跳转至步骤203;若否,则跳转至步骤204。
在步骤203中,将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
在本发明实施例中,上述步骤201至步骤203具体可参考图1所示实施例中的步骤101至步骤103,在此不再赘述。
在步骤204中,获取与所述查询请求对应的缓存锁,并判断是否成功获取所述缓存锁。若成功获取到所述缓存锁,则跳转至步骤206,若未获取到所述缓存锁,则跳转至步骤205。
在本发明实施例中,当查询请求既未命中一级缓存,也未命中二级缓存时,该查询请求获取与之对应的缓存锁,该缓存锁为互斥锁,也即,当该查询请求获取到缓存锁时,拒绝其它查询请求(包括并发的查询请求)获取到该缓存锁。
在本发明实施例中,数据库仅允许获取到缓存锁的查询请求访问数据库,以查询相应的目标数据。由此,可以有效减轻数据库的查询压力。
在步骤205中,延迟预设的时长后继续获取与所述查询请求对应的缓存锁。
在本发明实施例中,若本次查询请求获取缓存锁失败,也即未获取到缓存锁,则在延迟预设的时长后再次请求获取缓存锁,该预设的时长可以为毫秒级,例如延迟5毫秒后继续请求获取缓存锁。
在一个可选实施例中,当查询请求获取缓存锁的延迟等待时长超过预设时长后,可以允许该查询请求访问数据库,从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求,以避免某个查询请求长时间不能获取缓存锁而等待过长的时间。
在另一个可选实施例中,记录获取与所述查询请求对应的缓存锁的次数,并判断所述次数是否超过预设阈值;
若所述次数超过所述预设阈值,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求。
在步骤206中,若获取所述缓存锁成功,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求。
在本发明实施例中,对于获取缓存锁成功的查询请求,可以从数据库中进行数据查询操作,将与该查询请求关联的目标数据返回给发送该查询请求的客户端以响应该查询请求。
作为一个可选实施例,在上述在从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后,可以包括:释放所述缓存锁。
作为一个可选实施例,在上述从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后还可以包括:将所述目标数据写入到所述二级缓存。
在本发明实施例中,通过将目标数据写入到二级缓存,可以提高查询请求对二级缓存的命中率。
作为一个可选实施例,在上述从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后还包括:将写入到所述二级缓存中的所述目标数据同步到所述一级缓存。
在本发明实施例中,目标数据缓存到二级缓存后,会同步到一级缓存中,从而提高查询请求对一级缓存的命中率,同时也提高了数据查询的效率。
作为一个可选实施例,一级缓存可以为内存缓存,二级缓存可以为磁盘缓存,磁盘缓存可以基于Redis集群搭建,还可以基于Memcache搭建。其中,基于Redis集群搭建的缓存适用于对读写效率要求都很高,数据处理业务复杂和对安全性要求较高的系统。基于Memcache搭建的缓存适用于动态系统中减轻数据库负载,提升性能,适合多读少写,大数据量的情况。在实际应用中可以结合具体的应用进行选用。
由上可知,本发明通过在接收到数据的查询请求时,首先从数据库的一级缓存中查找目标数据,若一级缓存中不存在所述目标数据,也即发生了缓存失效,则通过数据库的二级缓存提供目标数据,同时还可以将目标数据同步到一级缓存,来提高一级缓存处理数据查询请求的能力;也即,本发明通过将缓存设置为一级缓存和二级缓存,减少了一级缓存发生缓存失效时,数据查询请求直接访问数据库的情形发生,从而能够减轻数据库的查询压力,有利于保障数据库的稳定运行。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以下为本发明的装置实施例,对于其中未详尽描述的细节,可以参考上述对应的方法实施例。
图3示出了本发明实施例提供的数据库的查询装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
如图3所示,数据库的查询装置3包括:第一查找单元31,第二查找单元32和响应单元33。
第一查找单元31,用于接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;
第二查找单元32,用于若第一查找单元31的查找结果为所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;
响应单元33,用于若第二查找单元32的查找结果为所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
可选的,数据库的查询装置3还包括:
获取单元,用于获取与所述查询请求对应的缓存锁;
所述获取单元还用于,若获取所述缓存锁失败,则在延迟预设的时长后继续获取与所述查询请求对应的缓存锁;
数据库查找单元,用于若所述获取单元获取所述缓存锁成功,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求。
可选的,数据库的查询装置3还包括:
释放单元,用于在数据库查找单元从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后,释放所述缓存锁。
可选的,数据库的查询装置3还包括:
判断单元,用于记录获取与所述查询请求对应的缓存锁的次数,并判断所述次数是否超过预设阈值;
所述数据库查找单元还用于,若判断单元判定所述次数超过所述预设阈值,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求。
可选的,数据库的查询装置3还包括:
写入单元,用于在数据库查找单元从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后,将所述目标数据写入到所述二级缓存。
可选的,数据库的查询装置3还包括:
更新单元,用于在写入单元将所述目标数据写入到二级缓存之后,将写入到所述二级缓存中的所述目标数据同步到所述一级缓存。
可选的,所述一级缓存为内存缓存,所述二级缓存为磁盘缓存,所述磁盘缓存基于Redis集群搭建或者基于Memcache搭建。
由上可知,本发明通过在接收到数据的查询请求时,首先从数据库的一级缓存中查找目标数据,若一级缓存中不存在所述目标数据,也即发生了缓存失效,则通过数据库的二级缓存提供目标数据,同时还可以将目标数据同步到一级缓存,来提高一级缓存处理数据查询请求的能力;也即,本发明通过将缓存设置为一级缓存和二级缓存,减少了一级缓存发生缓存失效时,数据查询请求直接访问数据库的情形发生,从而能够减轻数据库的查询压力,有利于保障数据库的稳定运行。
图4是本发明一实施例提供的终端的示意图。如图4所示,该实施例的终端4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42。所述处理器40执行所述计算机程序42时实现上述各个数据库的查询方法实施例中的步骤,例如图1所示的步骤101至步骤103。或者,所述处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能,例如图3所示单元31至33的功能。
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述终端4中的执行过程。例如,所述计算机程序42可以被分割成第一查找单元,第二查找单元和响应单元,各单元具体功能如下:
第一查找单元,用于接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;
第二查找单元,用于若所述第一查找单元的查找结果为所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;
响应单元,用于若所述第二查找单元的查找结果为所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
所述终端4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是终端4的示例,并不构成对终端4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述终端4的内部存储单元,例如终端4的硬盘或内存。所述存储器41也可以是所述终端4的外部存储设备,例如所述终端4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述终端4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据库的查询方法,其特征在于,包括:
接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;
若所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;
若所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
2.根据权利要求1所述的数据库的查询方法,其特征在于,若所述二级缓存中不存在所述目标数据,则所述查询方法还包括:
获取与所述查询请求对应的缓存锁;
若获取所述缓存锁失败,则在延迟预设的时长后继续获取与所述查询请求对应的缓存锁;
若获取所述缓存锁成功,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求。
3.根据权利要求2所述的数据库的查询方法,其特征在于,所述若获取所述缓存锁成功,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后还包括:
释放所述缓存锁。
4.根据权利要求2所述的数据库的查询方法,其特征在于,所述若获取所述缓存锁失败,则在延迟预设的时长后继续获取与所述查询请求对应的缓存锁,包括:
记录获取与所述查询请求对应的缓存锁的次数,并判断所述次数是否超过预设阈值;
若所述次数超过所述预设阈值,则从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求。
5.根据权利要求2至4任一项所述的数据库的查询方法,其特征在于,在从所述数据库中查找所述目标数据,并返回所述目标数据以响应所述查询请求之后还包括:
将所述目标数据写入到所述二级缓存。
6.根据权利要求5所述的数据库的查询方法,其特征在于,在将所述目标数据写入到二级缓存之后还包括:
将写入到所述二级缓存中的所述目标数据同步到所述一级缓存。
7.根据权利要求1至4任一项所述的数据库的查询方法,其特征在于,所述一级缓存为内存缓存,所述二级缓存为磁盘缓存,所述磁盘缓存基于Redis集群搭建或者基于Memcache搭建。
8.一种数据库的查询装置,其特征在于,包括:
第一查找单元,用于接收查询请求,并查找所述数据库的一级缓存中是否存在与所述查询请求关联的目标数据;
第二查找单元,用于若所述第一查找单元的查找结果为所述一级缓存中不存在所述目标数据,则查找所述数据库的二级缓存中是否存在所述目标数据;
响应单元,用于若所述第二查找单元的查找结果为所述二级缓存中存在所述目标数据,则将所述目标数据同步到所述一级缓存,并返回所述目标数据以响应所述查询请求。
9.一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述数据库的查询方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据库的查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811080644.0A CN110909025A (zh) | 2018-09-17 | 2018-09-17 | 数据库的查询方法、查询装置及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811080644.0A CN110909025A (zh) | 2018-09-17 | 2018-09-17 | 数据库的查询方法、查询装置及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110909025A true CN110909025A (zh) | 2020-03-24 |
Family
ID=69812495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811080644.0A Pending CN110909025A (zh) | 2018-09-17 | 2018-09-17 | 数据库的查询方法、查询装置及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110909025A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522879A (zh) * | 2020-04-16 | 2020-08-11 | 北京雷石天地电子技术有限公司 | 一种基于缓存的数据分发方法和电子设备 |
CN111858669A (zh) * | 2020-07-03 | 2020-10-30 | 上海众言网络科技有限公司 | 一种数据二级缓存的方法和装置 |
CN112035496A (zh) * | 2020-08-28 | 2020-12-04 | 平安科技(深圳)有限公司 | 一种数据处理方法、相关设备及计算机可读存储介质 |
CN112035427A (zh) * | 2020-09-02 | 2020-12-04 | 中国平安财产保险股份有限公司 | 基于Redis和HBase的数据查询方法及相关设备 |
CN112306993A (zh) * | 2020-11-06 | 2021-02-02 | 平安科技(深圳)有限公司 | 基于Redis的数据读取方法、装置、设备及可读存储介质 |
CN112637305A (zh) * | 2020-12-16 | 2021-04-09 | 平安消费金融有限公司 | 一种基于缓存的数据存储与查询方法、装置、设备及介质 |
CN112765215A (zh) * | 2021-01-19 | 2021-05-07 | 上海幻电信息科技有限公司 | 数据查询方法、装置 |
CN113411630A (zh) * | 2021-08-19 | 2021-09-17 | 贝壳找房(北京)科技有限公司 | 直播热门行为回放方法 |
CN113688161A (zh) * | 2021-09-09 | 2021-11-23 | 平安医疗健康管理股份有限公司 | 缓存数据查询方法、装置、设备及存储介质 |
CN113722362A (zh) * | 2021-07-27 | 2021-11-30 | 苏州浪潮智能科技有限公司 | 一种基于远端的缓存数据查询方法、装置及系统 |
CN113761003A (zh) * | 2021-04-15 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 用户画像数据处理方法和装置、电子设备和可读存储介质 |
CN113885780A (zh) * | 2021-02-10 | 2022-01-04 | 京东科技控股股份有限公司 | 数据同步方法、装置、电子设备、系统和存储介质 |
CN114138840A (zh) * | 2021-12-08 | 2022-03-04 | 中国建设银行股份有限公司 | 数据查询方法、装置、设备及存储介质 |
CN114553960A (zh) * | 2022-04-22 | 2022-05-27 | 四川万网鑫成信息科技有限公司 | 一种数据缓存方法、装置、设备及存储介质 |
CN115525686A (zh) * | 2022-10-10 | 2022-12-27 | 中电金信软件有限公司 | 一种映射配置数据的缓存方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183394A (zh) * | 2015-09-21 | 2015-12-23 | 北京奇虎科技有限公司 | 一种数据存储处理方法和装置 |
CN107203613A (zh) * | 2017-05-23 | 2017-09-26 | 北京微影时代科技有限公司 | 一种高并发请求处理的方法及装置 |
CN107622115A (zh) * | 2017-09-19 | 2018-01-23 | 武大吉奥信息技术有限公司 | 一种面向wfs服务的空间查询结果缓存方法 |
CN108132958A (zh) * | 2016-12-01 | 2018-06-08 | 阿里巴巴集团控股有限公司 | 一种多级缓存数据存储、查询、调度以及处理方法及装置 |
-
2018
- 2018-09-17 CN CN201811080644.0A patent/CN110909025A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183394A (zh) * | 2015-09-21 | 2015-12-23 | 北京奇虎科技有限公司 | 一种数据存储处理方法和装置 |
CN108132958A (zh) * | 2016-12-01 | 2018-06-08 | 阿里巴巴集团控股有限公司 | 一种多级缓存数据存储、查询、调度以及处理方法及装置 |
CN107203613A (zh) * | 2017-05-23 | 2017-09-26 | 北京微影时代科技有限公司 | 一种高并发请求处理的方法及装置 |
CN107622115A (zh) * | 2017-09-19 | 2018-01-23 | 武大吉奥信息技术有限公司 | 一种面向wfs服务的空间查询结果缓存方法 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522879A (zh) * | 2020-04-16 | 2020-08-11 | 北京雷石天地电子技术有限公司 | 一种基于缓存的数据分发方法和电子设备 |
CN111522879B (zh) * | 2020-04-16 | 2023-09-29 | 北京雷石天地电子技术有限公司 | 一种基于缓存的数据分发方法和电子设备 |
CN111858669A (zh) * | 2020-07-03 | 2020-10-30 | 上海众言网络科技有限公司 | 一种数据二级缓存的方法和装置 |
CN112035496A (zh) * | 2020-08-28 | 2020-12-04 | 平安科技(深圳)有限公司 | 一种数据处理方法、相关设备及计算机可读存储介质 |
CN112035427A (zh) * | 2020-09-02 | 2020-12-04 | 中国平安财产保险股份有限公司 | 基于Redis和HBase的数据查询方法及相关设备 |
CN112306993A (zh) * | 2020-11-06 | 2021-02-02 | 平安科技(深圳)有限公司 | 基于Redis的数据读取方法、装置、设备及可读存储介质 |
CN112637305A (zh) * | 2020-12-16 | 2021-04-09 | 平安消费金融有限公司 | 一种基于缓存的数据存储与查询方法、装置、设备及介质 |
CN112637305B (zh) * | 2020-12-16 | 2023-05-02 | 平安消费金融有限公司 | 一种基于缓存的数据存储与查询方法、装置、设备及介质 |
CN112765215A (zh) * | 2021-01-19 | 2021-05-07 | 上海幻电信息科技有限公司 | 数据查询方法、装置 |
CN113885780A (zh) * | 2021-02-10 | 2022-01-04 | 京东科技控股股份有限公司 | 数据同步方法、装置、电子设备、系统和存储介质 |
CN113761003A (zh) * | 2021-04-15 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 用户画像数据处理方法和装置、电子设备和可读存储介质 |
CN113722362A (zh) * | 2021-07-27 | 2021-11-30 | 苏州浪潮智能科技有限公司 | 一种基于远端的缓存数据查询方法、装置及系统 |
CN113722362B (zh) * | 2021-07-27 | 2023-08-11 | 苏州浪潮智能科技有限公司 | 一种基于远端的缓存数据查询方法、装置及系统 |
CN113411630A (zh) * | 2021-08-19 | 2021-09-17 | 贝壳找房(北京)科技有限公司 | 直播热门行为回放方法 |
CN113688161A (zh) * | 2021-09-09 | 2021-11-23 | 平安医疗健康管理股份有限公司 | 缓存数据查询方法、装置、设备及存储介质 |
CN114138840A (zh) * | 2021-12-08 | 2022-03-04 | 中国建设银行股份有限公司 | 数据查询方法、装置、设备及存储介质 |
CN114553960A (zh) * | 2022-04-22 | 2022-05-27 | 四川万网鑫成信息科技有限公司 | 一种数据缓存方法、装置、设备及存储介质 |
CN115525686A (zh) * | 2022-10-10 | 2022-12-27 | 中电金信软件有限公司 | 一种映射配置数据的缓存方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909025A (zh) | 数据库的查询方法、查询装置及终端 | |
CN108255958B (zh) | 数据查询方法、装置和存储介质 | |
CN110674432B (zh) | 二级缓存方法、装置及计算机可读存储介质 | |
US9817858B2 (en) | Generating hash values | |
CN104035923B (zh) | 查询数据的方法及装置 | |
CN107491519B (zh) | 区块链账本的查询方法及装置 | |
US20190034550A1 (en) | Data caching method and apparatus | |
CN110851474A (zh) | 数据查询方法、数据库中间件、数据查询设备及存储介质 | |
CN111737564A (zh) | 一种信息查询方法、装置、设备及介质 | |
CN107943846B (zh) | 数据处理方法、装置及电子设备 | |
CN112559386A (zh) | 提升ssd性能的方法、装置、计算机设备及存储介质 | |
JP2019503021A (ja) | システム環境及びユーザ行動分析基盤の自己防御保安装置とその作動方法 | |
CN110909022A (zh) | 一种数据查询方法和装置 | |
CN110750498B (zh) | 对象访问方法、装置及存储介质 | |
CN111125168B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN110222046B (zh) | 列表数据的处理方法、装置、服务器和存储介质 | |
CN109213972B (zh) | 确定文档相似度的方法、装置、设备和计算机存储介质 | |
US8572231B2 (en) | Variable-length nonce generation | |
CN107589907B (zh) | 数据处理方法、电子设备及计算机可读存储介质 | |
US20180018385A1 (en) | System, data combining method, integration server, data combining program, database system ,database system cooperation method, and database system cooperation program | |
CN114637969A (zh) | 目标对象的鉴权方法及装置 | |
CN109976896B (zh) | 业务排重处理方法和装置 | |
CN110333935B (zh) | 事务请求处理方法及装置 | |
CN107679093B (zh) | 一种数据查询方法及装置 | |
CN113419792A (zh) | 一种事件处理方法、装置、终端设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200324 |