CN112818019A - 一种应用于Redis客户端的查询请求过滤方法及Redis客户端 - Google Patents
一种应用于Redis客户端的查询请求过滤方法及Redis客户端 Download PDFInfo
- Publication number
- CN112818019A CN112818019A CN202110126941.XA CN202110126941A CN112818019A CN 112818019 A CN112818019 A CN 112818019A CN 202110126941 A CN202110126941 A CN 202110126941A CN 112818019 A CN112818019 A CN 112818019A
- Authority
- CN
- China
- Prior art keywords
- redis
- key
- query request
- bloom filter
- client
- 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.)
- Granted
Links
- 238000001914 filtration Methods 0.000 title claims abstract description 24
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000012544 monitoring process Methods 0.000 claims description 8
- 230000014509 gene expression Effects 0.000 claims description 5
- 230000003993 interaction Effects 0.000 abstract description 3
- 230000006872 improvement Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种应用于Redis客户端的查询请求过滤方法及Redis客户端,包括:基于用户需求,配置Redis Key加载规则;基于Redis Key加载规则,从Redis缓存中获取所需加载的Redis Key组;基于获取的Redis Key组,创建布隆过滤器;获取用户的查询请求,并判断查询请求的Redis Key在布隆过滤器中是否存在;若不存在,则不再通过网络远程请求Redis缓存,直接返回空值。本发明在Redis客户端中通过布隆过滤器对Redis的查询请求进行过滤,对于不在布隆过滤器中的Redis Key,直接返回,减少无效查询请求,以提高Redis缓存的命中率、减少与Redis缓存的网络交互。
Description
技术领域
本发明涉及Redis缓存技术领域,具体涉及一种应用于Redis客户端的查询请求过滤方法及Redis客户端。
背景技术
Redis是当前最流行的缓存系统,是一个高性能的开源的、C语言写的Nosql(非关系型数据库),数据保存在内存中;可以用作数据库、缓存和消息中间件。Redis有较多三方提供的客户端,现有客户端基本都实现了通过远程网络操作Redis缓存命令的功能,例如,如图1所示,hiredis客户端可以在C语言中通过网络远程操作Redis缓存的所有命令,当使用该客户端执行reply=redisCommand(context,"SET foo bar")命令后,即通过远程网络在Redis缓存中执行了SET foo bar命令。
Redis缓存本身的性能非常高,当前主流的Redis客户端(例如Jedis)操作Redis缓存时,需要完成以下步骤:
(1)、将特定语言的数据结构(例如Java的对象)序列化为Redis可以存储的二进制数据;
(2)、通过远程网络将序列化后的二进制数据传输到Redis缓存端,然后Redis缓存完成对的二进制数据的相关操作,例如通过get key命令查询对应的缓存数据。
在一些高频或者恶意攻击的查询场景中,可能存在客户端请求的数据在Redis缓存中并不存在,但是客户端依然会发出查询请求;该请求首先将数据结构对象序列化为二进制,再通过网络请求到达Redis缓存后,Redis缓存检索该Key不存在,返回一个空值。
例如,如图2所示,Redis中缓存了Key为1到100的订单信息,但是客户端却高频的查询大于100的Key,甚至恶意攻击程序会利用DDOS频繁发起查询订单号为-1的请求;对于这样的请求,Redis缓存不但无法命中,而且会消耗很多的网络带宽和Redis缓存的计算资源,类似于经典的缓存穿透场景。
发明内容
为解决此类Redis客户端发出查询请求,但是Redis缓存未命中,消耗了网络和计算资源的问题,本发明提供一种Redis客户端的查询请求过滤方法及Redis客户端,其在Redis客户端中通过布隆过滤器对Redis的查询请求进行过滤,对于不在布隆过滤器中的Redis Key,直接返回,减少无效查询请求(即减少不会命中的查询请求),以提高Redis缓存的命中率、减少与Redis缓存的网络交互。
本发明公开了一种应用于Redis客户端的查询请求过滤方法,包括:
基于用户需求,配置Redis Key加载规则;
基于所述Redis Key加载规则,从Redis缓存中获取所需加载的Redis Key组;
基于获取的所述Redis Key组,创建布隆过滤器;
获取用户的查询请求,并判断查询请求的Redis Key在所述布隆过滤器中是否存在;
若不存在,则不再通过网络远程请求Redis缓存,直接返回空值。
作为本发明的进一步改进,所述Redis Key加载规则为根据用户不同的查询需求,配置不同的正则表达式。
作为本发明的进一步改进,客户端在启动时,基于所述Redis Key加载规则,通过Redis的Keys pattern命令从Redis缓存中获取所需加载的Redis Key组。
作为本发明的进一步改进,所述布隆过滤器为计数类型的布隆过滤器,所述布隆过滤器使用MurmurHash算法对Redis Key进行Hash运算。
作为本发明的进一步改进,还包括:
若查询请求的Redis Key存在于所述布隆过滤器中,则执行查询命令,查询Redis缓存中对应的缓存数据,并返回查询结果。
作为本发明的进一步改进,还包括:
创建多个布隆过滤器,并为每个布隆过滤器配置不同的名称;
基于用户的查询请求和选择的布隆过滤器,判断查询请求的Redis Key在所述布隆过滤器中是否存在。
作为本发明的进一步改进,还包括:
通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;
若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据。
本发明还公开了一种Redis客户端,包括:
配置模块,用于基于用户需求,配置Redis Key加载规则;
执行模块,用于基于所述Redis Key加载规则,从Redis缓存中获取所需加载的Redis Key组;
创建模块,用于基于获取的所述Redis Key组,创建布隆过滤器;
判断模块,用于获取用户的查询请求,并判断查询请求的Redis Key在所述布隆过滤器中是否存在;若不存在,则不再通过网络远程请求Redis缓存,直接返回空值。
作为本发明的进一步改进,所述判断模块,还用于:
若查询请求的Redis Key存在于所述布隆过滤器中,则执行查询命令,查询Redis缓存中对应的缓存数据,并返回查询结果。
作为本发明的进一步改进,还包括:
监听模块,用于通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据。
与现有技术相比,本发明的有益效果为:
1、本发明的客户端通过配置的Redis Key加载规则,可以将部分高频使用的RedisKey的数据通过布隆过滤器的方式,直接加载到了本地客户端;从而在对Redis缓存数据进行高频操作时,可以在本地客户端先进行一次过滤,减少客户端与Redis缓存的网络交互;
2、本发明的客户端采用计数类型的布隆过滤器,将可能占用大量客户端内存的Redis Keys数据映射为仅占用少量内存的byte数组,使得客户端即使加载了大量RedisKeys也不会占用过大的内存,提高了客户端的可用性;
3、本发明的客户端在进行业务查询时,判断查询请求的Redis Key在所述布隆过滤器中是否存在,如果不存在,就不再通过网络请求Redis缓存,直接返回空;
4、本发明的客户端通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据,完成实时更新。
附图说明
图1为现有Redis客户端远程操作Redis缓存的示意图;
图2为现有Redis客户端发出查询请求、Redis缓存未命中的示意图;
图3为本发明一种实施例公开的Redis客户端创建布隆过滤器以及监听更新的流程图;
图4为本发明一种实施例公开的Redis客户端的框架图;
图5为本发明一种实施例公开的查询请求过滤方法的具体流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明做进一步的详细描述:
如图3所示,本发明提供一种应用于Redis客户端的查询请求过滤方法,包括:
步骤1、基于用户需求,配置Redis Key加载规则;
步骤2、基于Redis Key加载规则,从Redis缓存中获取所需加载的Redis Key组;
其中,在上述步骤1、2中,Redis Key加载规则为根据用户不同的查询需求,配置不同的正则表达式;从而使客户端在启动时,通过Redis Key加载规则从Redis缓存中加载一组需要过滤的Redis Key数据。
例如:
Redis缓存中存储了手机号码与客户信息的对应关系,数据表1所示;
表1
Key | Value |
13810010001 | 张三的信息 |
13810010002 | 李四的信息 |
13810010003 | 王五的信息 |
13810010004 | 赵六的信息 |
... | ... |
用户想针对以1381001开头的号段数据进行过滤,以防止通过客户端频繁查询不属于该号段的电话号码,造成客户端到Redis缓存的大量无效查询。其中,“1381001开头的号段数据”为用户需求,针对该号段配置相应的正则表达式为Redis Key加载规则。配置完成后,客户端在启动时,会通过Redis的Keys pattern命令查询出Reids中符合条件的Key。
又例如:
Redis缓存中存储了学号与学生信息的对应关系,,数据表2所示;
表2
Key | Value |
101001 | 张三的信息 |
101002 | 李四的信息 |
... | |
202001 | 王五的信息 |
202002 | 赵六的信息 |
... | ... |
上述学号“1-01-001”表示“1年级-1班-001号”同学,“2-02-002”表示“2年级-2班-002号”同学;用户想针对1年级1~5班级和2年级1~4班级的数据进行过滤,此时,加载所有101、102、103、104、105、201、202、203、204开头的号段数据进行过滤,以防止通过客户端频繁查询不属于该号段的数据,造成客户端到Redis缓存的大量无效查询。其中,“101、102、103、104、105、201、202、203、204开头的号段数据”为用户需求,针对该号段配置相应的正则表达式为Redis Key加载规则。配置完成后,客户端在启动时,会通过Redis的Keys pattern命令查询出Reids中符合条件的Key。
步骤3、基于获取的Redis Key组,创建布隆过滤器;
其中,
布隆过滤器为计数类型的布隆过滤器,布隆过滤器使用MurmurHash算法对RedisKey进行Hash运算,并且可以在客户端可以自由配置该布隆过滤器的误判率(默认为0.01)。该步骤的主要目的是:Redis客户端是集成在应用中的,如果在客户端加载过多的RedisKey,会占用过量的内存,很可能会造成应用程序的内存紧张,而使用布隆过滤器,可以使用少量的内存加载海量的Redis Key。
在创建计数类型的布隆过滤器后,客户端在查询Redis缓存时,可以传入之前创建的布隆过滤器名称,客户端会首先使用该布隆过滤器判断要查询的数据是否存在;若不存在,则不再通过网络远程请求Redis缓存,直接返回空值;若存在,则执行查询命令,查询Redis缓存中对应的缓存数据,并返回查询结果。。
步骤4、通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据。
如图5所示,本发明在步骤3中基于创建的布隆过滤器完成查询请求过滤,具体包括:
S1、业务请求用户基于客户端查询Redis Key为xxx1的数据;
S2、布隆过滤器过滤后,不存在xxx1的数据;
S3、客户端不再通过网络远程请求Redis缓存,直接返回空值;
S4、业务请求用户基于客户端查询Redis Key为xxx2的数据;
S5、布隆过滤器过滤后,不存在xxx2的数据;
S6、客户端执行查询命令;
S7、Redis命令执行模块从Redis缓存中查询对应xxx2的缓存数据;
S8、返回查询结果。
进一步,在上述方法中,本发明还可创建多个布隆过滤器,并为每个布隆过滤器配置不同的名称;基于用户的查询请求和选择的布隆过滤器,判断查询请求的Redis Key在布隆过滤器中是否存在。
如图4所示,本发明提供一种Redis客户端,包括:
配置模块,用于实现上述步骤1;
执行模块,用于实现上述步骤2;
创建模块和判断模块,用于实现上述步骤3;
监听模块,用于实现上述步骤4。
实施例:
根据手机号码快速判断是否存在对应的客户信息。
业务系统中存有1000w的客户信息,当有一个新客户需要办理业务时,需要先查询该客户信息是否已存在,如果不存在,先要创建客户信息资料。
Redis中存储了存量的手机号码与客户信息的对应关系,结构如表3所示:
表3
Key | Value |
cust-13810010001 | 张三的信息 |
cust-13810010002 | 李四的信息 |
cust-13810010003 | 王五的信息 |
cust-13810010004 | 赵六的信息 |
... | ... |
... | ... |
步骤1、客户端可以配置加载所有以cust-开头的Redis Keys,并生成名称为cust-filter的Counting Bloom Filter。
步骤2、客户进入系统办理业务时,需要根据手机号码到Redis查询该客户是否已经存在,在根据手机号码查询Redis缓存时,客户端会首先会在本地通过Counting BloomFilter判断该手机号码是否存在,如果不存在,则不再通过网络远程请求Redis缓存,而直接返回信息,提示客户创建基本信息。
步骤3、在客户创建完成客户信息,并将手机号码做为Key,客户信息作为Value插入到Redis缓存中时,会触发Redis的Key Event事件,客户端监听到新增了Redis Key的事件后,根据新增的Key更新Counting Bloom Filter。
本发明的优点为:
1、本发明的客户端通过配置的Redis Key加载规则,可以将部分高频使用的RedisKey的数据通过布隆过滤器的方式,直接加载到了本地客户端;从而在对Redis缓存数据进行高频操作时,可以在本地客户端先进行一次过滤,减少客户端与Redis缓存的网络交互;
2、本发明的客户端采用计数类型的布隆过滤器,将可能占用大量客户端内存的Redis Keys数据映射为仅占用少量内存的byte数组,使得客户端即使加载了大量RedisKeys也不会占用过大的内存,提高了客户端的可用性;
3、本发明的客户端在进行业务查询时,判断查询请求的Redis Key在布隆过滤器中是否存在,如果不存在,就不再通过网络请求Redis缓存,直接返回空;
4、本发明的客户端通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据,完成实时更新;其中,因为使用的Counting BloomFilter,因此可以对该布隆过滤器进行删除操作(普通的Bloom Filter不支持删除操作)。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种应用于Redis客户端的查询请求过滤方法,其特征在于,包括:
基于用户需求,配置Redis Key加载规则;
基于所述Redis Key加载规则,从Redis缓存中获取所需加载的Redis Key组;
基于获取的所述Redis Key组,创建布隆过滤器;
获取用户的查询请求,并判断查询请求的Redis Key在所述布隆过滤器中是否存在;
若不存在,则不再通过网络远程请求Redis缓存,直接返回空值。
2.如权利要求1所述的查询请求过滤方法,其特征在于,所述Redis Key加载规则为根据用户不同的查询需求,配置不同的正则表达式。
3.如权利要求1或2所述的查询请求过滤方法,其特征在于,客户端在启动时,基于所述Redis Key加载规则,通过Redis的Keys pattern命令从Redis缓存中获取所需加载的RedisKey组。
4.如权利要求1所述的查询请求过滤方法,其特征在于,所述布隆过滤器为计数类型的布隆过滤器,所述布隆过滤器使用MurmurHash算法对Redis Key进行Hash运算。
5.如权利要求1所述的查询请求过滤方法,其特征在于,还包括:
若查询请求的Redis Key存在于所述布隆过滤器中,则执行查询命令,查询Redis缓存中对应的缓存数据,并返回查询结果。
6.如权利要求1所述的查询请求过滤方法,其特征在于,还包括:
创建多个布隆过滤器,并为每个布隆过滤器配置不同的名称;
基于用户的查询请求和选择的布隆过滤器,判断查询请求的Redis Key在所述布隆过滤器中是否存在。
7.如权利要求1所述的查询请求过滤方法,其特征在于,还包括:
通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;
若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据。
8.一种用于实现如权利要求1~7中任一项所述的查询请求过滤方法的Redis客户端,其特征在于,包括:
配置模块,用于基于用户需求,配置Redis Key加载规则;
执行模块,用于基于所述Redis Key加载规则,从Redis缓存中获取所需加载的RedisKey组;
创建模块,用于基于获取的所述Redis Key组,创建布隆过滤器;
判断模块,用于获取用户的查询请求,并判断查询请求的Redis Key在所述布隆过滤器中是否存在;若不存在,则不再通过网络远程请求Redis缓存,直接返回空值。
9.如权利要求8所述的Redis客户端,其特征在于,所述判断模块,还用于:
若查询请求的Redis Key存在于所述布隆过滤器中,则执行查询命令,查询Redis缓存中对应的缓存数据,并返回查询结果。
10.如权利要求8所述的Redis客户端,其特征在于,还包括:
监听模块,用于通过Redis的Keyspace notifications功能,对Redis Key的新增或删除事件进行监听;若新增或删除事件符合Redis Key加载规则的Redis Key,则触发布隆过滤器加载最新的Redis Key数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110126941.XA CN112818019B (zh) | 2021-01-29 | 2021-01-29 | 一种应用于Redis客户端的查询请求过滤方法及Redis客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110126941.XA CN112818019B (zh) | 2021-01-29 | 2021-01-29 | 一种应用于Redis客户端的查询请求过滤方法及Redis客户端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112818019A true CN112818019A (zh) | 2021-05-18 |
CN112818019B CN112818019B (zh) | 2024-02-02 |
Family
ID=75860253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110126941.XA Active CN112818019B (zh) | 2021-01-29 | 2021-01-29 | 一种应用于Redis客户端的查询请求过滤方法及Redis客户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112818019B (zh) |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100174939A1 (en) * | 2007-06-05 | 2010-07-08 | Vladimir Vexler | Devices for providing distributable middleware data proxy between application servers and database servers |
CN102045403A (zh) * | 2010-12-29 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 分布式网络数据处理方法和装置及系统 |
CN102682037A (zh) * | 2011-03-18 | 2012-09-19 | 阿里巴巴集团控股有限公司 | 一种数据获取方法、系统及装置 |
CN103177027A (zh) * | 2011-12-23 | 2013-06-26 | 北京新媒传信科技有限公司 | 获取动态Feed索引的方法和系统 |
US8543554B1 (en) * | 2010-08-10 | 2013-09-24 | ScalArc Inc. | Method and system for transparent database query caching |
KR20140045738A (ko) * | 2012-10-09 | 2014-04-17 | 성균관대학교산학협력단 | 클라우드 스토리지 시스템 |
CN103853727A (zh) * | 2012-11-29 | 2014-06-11 | 深圳中兴力维技术有限公司 | 提高大数据量查询性能的方法及系统 |
CN103886038A (zh) * | 2014-03-10 | 2014-06-25 | 中标软件有限公司 | 数据缓存方法及装置 |
US8812651B1 (en) * | 2007-02-15 | 2014-08-19 | Google Inc. | Systems and methods for client cache awareness |
CN105718455A (zh) * | 2014-12-01 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 一种数据查询方法及装置 |
US20160285997A1 (en) * | 2014-06-26 | 2016-09-29 | Xiangbin Wu | Memcached systems having local caches |
US20170039145A1 (en) * | 2015-03-09 | 2017-02-09 | Intel Corporation | Memcached systems having local caches |
CN106599199A (zh) * | 2016-12-14 | 2017-04-26 | 国云科技股份有限公司 | 一种数据缓存与同步方法 |
CN108133031A (zh) * | 2017-12-29 | 2018-06-08 | 北京搜狐新媒体信息技术有限公司 | 一种过滤推荐视频候选结果的方法及装置 |
CN109101580A (zh) * | 2018-07-20 | 2018-12-28 | 北京北信源信息安全技术有限公司 | 一种基于Redis的热点数据缓存方法和装置 |
CN109669960A (zh) * | 2018-12-25 | 2019-04-23 | 钛马信息网络技术有限公司 | 在微服务中通过多级缓存避免缓存雪崩的系统及方法 |
CN110162529A (zh) * | 2019-05-27 | 2019-08-23 | 广州华多网络科技有限公司 | 一种数据处理方法、业务服务器及数据处理系统 |
CN110287430A (zh) * | 2019-06-25 | 2019-09-27 | 浪潮软件股份有限公司 | 一种基于Redis缓存技术实现商品信息缓存加载的方法 |
CN110347545A (zh) * | 2019-05-21 | 2019-10-18 | 深圳壹账通智能科技有限公司 | 一种业务平台缓存策略的测试方法及装置 |
US20200057782A1 (en) * | 2017-01-09 | 2020-02-20 | President And Fellows Of Harvard College | Optimized navigable key-value store |
CN112035479A (zh) * | 2020-08-31 | 2020-12-04 | 平安医疗健康管理股份有限公司 | 医药类数据库的访问方法、装置和计算机设备 |
-
2021
- 2021-01-29 CN CN202110126941.XA patent/CN112818019B/zh active Active
Patent Citations (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8812651B1 (en) * | 2007-02-15 | 2014-08-19 | Google Inc. | Systems and methods for client cache awareness |
US20100174939A1 (en) * | 2007-06-05 | 2010-07-08 | Vladimir Vexler | Devices for providing distributable middleware data proxy between application servers and database servers |
US8543554B1 (en) * | 2010-08-10 | 2013-09-24 | ScalArc Inc. | Method and system for transparent database query caching |
CN102045403A (zh) * | 2010-12-29 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 分布式网络数据处理方法和装置及系统 |
CN102682037A (zh) * | 2011-03-18 | 2012-09-19 | 阿里巴巴集团控股有限公司 | 一种数据获取方法、系统及装置 |
CN103177027A (zh) * | 2011-12-23 | 2013-06-26 | 北京新媒传信科技有限公司 | 获取动态Feed索引的方法和系统 |
KR20140045738A (ko) * | 2012-10-09 | 2014-04-17 | 성균관대학교산학협력단 | 클라우드 스토리지 시스템 |
CN103853727A (zh) * | 2012-11-29 | 2014-06-11 | 深圳中兴力维技术有限公司 | 提高大数据量查询性能的方法及系统 |
CN103886038A (zh) * | 2014-03-10 | 2014-06-25 | 中标软件有限公司 | 数据缓存方法及装置 |
US20160285997A1 (en) * | 2014-06-26 | 2016-09-29 | Xiangbin Wu | Memcached systems having local caches |
CN106537375A (zh) * | 2014-06-26 | 2017-03-22 | 英特尔公司 | 具有本地高速缓存的内存缓存系统 |
CN105718455A (zh) * | 2014-12-01 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 一种数据查询方法及装置 |
US20170039145A1 (en) * | 2015-03-09 | 2017-02-09 | Intel Corporation | Memcached systems having local caches |
CN107533543A (zh) * | 2015-03-09 | 2018-01-02 | 英特尔公司 | 具有本地高速缓存的分布式存储器高速缓存系统(Memcached系统) |
CN106599199A (zh) * | 2016-12-14 | 2017-04-26 | 国云科技股份有限公司 | 一种数据缓存与同步方法 |
US20200057782A1 (en) * | 2017-01-09 | 2020-02-20 | President And Fellows Of Harvard College | Optimized navigable key-value store |
CN108133031A (zh) * | 2017-12-29 | 2018-06-08 | 北京搜狐新媒体信息技术有限公司 | 一种过滤推荐视频候选结果的方法及装置 |
CN109101580A (zh) * | 2018-07-20 | 2018-12-28 | 北京北信源信息安全技术有限公司 | 一种基于Redis的热点数据缓存方法和装置 |
CN109669960A (zh) * | 2018-12-25 | 2019-04-23 | 钛马信息网络技术有限公司 | 在微服务中通过多级缓存避免缓存雪崩的系统及方法 |
CN110347545A (zh) * | 2019-05-21 | 2019-10-18 | 深圳壹账通智能科技有限公司 | 一种业务平台缓存策略的测试方法及装置 |
CN110162529A (zh) * | 2019-05-27 | 2019-08-23 | 广州华多网络科技有限公司 | 一种数据处理方法、业务服务器及数据处理系统 |
CN110287430A (zh) * | 2019-06-25 | 2019-09-27 | 浪潮软件股份有限公司 | 一种基于Redis缓存技术实现商品信息缓存加载的方法 |
CN112035479A (zh) * | 2020-08-31 | 2020-12-04 | 平安医疗健康管理股份有限公司 | 医药类数据库的访问方法、装置和计算机设备 |
Non-Patent Citations (4)
Title |
---|
唐玮唯;冯径;舒晓村;: "基于用户行为分析的数据立方体缓存策略", 计算机应用, no. 1, pages 243 - 246 * |
易俗;殷慧文;张一川;张莉;: "分布式环境下的频繁数据缓存策略", 计算机应用与软件, no. 08, pages 19 - 24 * |
祁晖;底晓强;李锦青;杨华民;姜会林;: "基于交互式级联布隆过滤器的一体化网络访问控制缓存系统", 长春理工大学学报(自然科学版), no. 05, pages 103 - 107 * |
饶文;陈旭;: "基于布隆过滤器的海量数据查询技术的优化与应用", 微型电脑应用, no. 02, pages 71 - 74 * |
Also Published As
Publication number | Publication date |
---|---|
CN112818019B (zh) | 2024-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220179791A1 (en) | Invalidation and refresh of multi-tier distributed caches | |
US10747670B2 (en) | Reducing latency by caching derived data at an edge server | |
US9146956B2 (en) | Statistical applications in OLTP environment | |
US9928178B1 (en) | Memory-efficient management of computer network resources | |
CN113420051B (zh) | 一种数据查询方法、装置、电子设备和存储介质 | |
CN111125138B (zh) | 一种轮询查询数据的方法、装置、计算机设备及存储介质 | |
US20130060810A1 (en) | Smart database caching | |
CN112084206A (zh) | 数据库的事务请求处理方法、相关设备及存储介质 | |
CN105653556B (zh) | 一种数据老化方法及装置 | |
CN112965837B (zh) | 配置和服务热重载更新方法、装置、计算机设备及存储介质 | |
CN116595014B (zh) | 一种已读回执的存储系统、方法、装置及可读存储介质 | |
CN111090675B (zh) | 多入口数据缓存方法及存储介质 | |
CN115344610A (zh) | 两级缓存数据获取方法及装置 | |
US11947553B2 (en) | Distributed data processing | |
CN112818019A (zh) | 一种应用于Redis客户端的查询请求过滤方法及Redis客户端 | |
CN117033831A (zh) | 一种客户端缓存方法、装置及其介质 | |
CN114860782B (zh) | 数据查询方法、装置、设备及介质 | |
CN112559570B (zh) | 缓存数据获取方法、装置、设备及存储介质 | |
CN110955669B (zh) | 基于事件与内存数据库的前后端数据一致性方法及系统 | |
CN113779326A (zh) | 数据处理方法、设备、系统以及存储介质 | |
CN113138943A (zh) | 一种处理请求的方法和装置 | |
US11954039B2 (en) | Caching system and method | |
KR20110013816A (ko) | 효율적인 서비스 가입자 인증을 위한 지역 db 관리 방법 | |
CN116244363A (zh) | 数据库的批量数据插入的处理方法、存储介质与设备 | |
CN111274254A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |