CN112307069A - 数据查询方法、系统、设备及存储介质 - Google Patents
数据查询方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN112307069A CN112307069A CN202011263071.2A CN202011263071A CN112307069A CN 112307069 A CN112307069 A CN 112307069A CN 202011263071 A CN202011263071 A CN 202011263071A CN 112307069 A CN112307069 A CN 112307069A
- Authority
- CN
- China
- Prior art keywords
- data
- hotspot
- hot spot
- list
- data list
- 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 108
- 230000001360 synchronised effect Effects 0.000 claims abstract description 13
- 238000013480 data collection Methods 0.000 claims description 20
- 238000012544 monitoring process Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 abstract description 7
- 238000013461 design Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 20
- 230000000875 corresponding effect Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 15
- 238000012545 processing Methods 0.000 description 15
- 238000004590 computer program Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000000977 initiatory effect 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
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
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)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种数据查询方法、系统、设备及存储介质,其中,该方法包括:接收数据查询请求;根据热点数据列表进行数据查询;其中,热点数据列表存储在终端设备的本地缓存中,热点数据列表是缓存服务器集群进行热点数据发现,且同步至终端设备的本地缓存的;输出数据查询结果。从而减轻了热点数据高并发对缓存服务器集群的压力,以及缓存服务器集群对各个子节点的热点数据key值进行哈希计算的压力,提高了数据查询速度。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据查询方法、系统、设备及存储介质。
背景技术
缓存服务器集群位于客户端和数据库之间,主要用于存放一些平时不怎么变动的数据。从而在接收到数据访问请求时,直接从缓存服务器集群中进行数据查询并返回查询结果,减少对数据库的访问。在上述过程中,使用缓存服务器集群的时候,在遇到一些热门事件,例如热卖商品、热点新闻、热点评论、明星直播等,就会出现热点key(关键字)问题,即缓存服务器集群中的某个关键字key在瞬间被数万甚至数十万的并发请求所访问,导致系统阻塞。
为了解决热点key问题,目前是由缓存服务器集群来发现热点数据,之后通过哈希(Hash)算法对热点key的每一次请求重新计算一次转化后的key,将热点key分散到缓存服务器集群的各个节点,以此来减轻单个节点命中热点key的响应压力。
然而,在上述解决热点key问题的过程中,发明人发现现有技术中至少存在以下技术问题:缓存服务器集群的计算量较大,从而影响数据查询速度。
发明内容
本申请提供一种数据查询方法、系统、设备及存储介质,以克服现有技术中缓存服务器集群的计算量较大,从而影响数据查询速度的问题。
第一方面,本申请提供一种数据查询方法,所述方法包括:接收数据查询请求;根据热点数据列表进行数据查询;输出数据查询结果;其中,所述热点数据列表存储在终端设备的本地缓存中,所述热点数据列表是缓存服务器集群进行热点数据发现,且同步至所述终端设备的本地缓存的。
在本申请实施例的一种可能设计中,所述热点数据列表中每个热点数据具有第一过期时间,且所述热点数据列表中至少部分热点数据的第一过期时间不同。
在本申请实施例的又一种可能设计中,还包括:接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据具有第二过期时间,且每个热点数据的第二过期时间相同;对每个热点数据的第二过期时间进行随机化处理,得到所述第一过期时间。
在本申请实施例的又一种可能设计中,接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据具有第一过期时间,所述第一过期时间是所述缓存服务器集群针对每个热点数据随机生成的。
在本申请实施例的又一种可能设计中,所述数据查询请求包括关键字key;相应的,所述根据热点数据列表进行数据查询,包括:根据所述数据查询请求中的关键字key,在热点数据列表中查找是否存在相同的关键字key;若在热点数据列表中查找到存在相同的关键字key,则根据所述关键字key获取对应的值value;若在热点数据列表中查找到不存在相同的关键字key,则发送所述数据查询请求至所述缓存服务器集群。
在本申请实施例的又一种可能设计中,所述接收数据查询请求之前,所述方法还包括:接收数据访问请求;确定数据访问请求的类型,数据访问请求的类型包括数据查询请求类型和数据更新请求类型;若数据访问请求的类型为数据查询请求类型,则根据所述热点数据列表进行数据查询;若数据访问请求的类型为数据更新请求类型,则发送数据访问请求至缓存服务器集群。
第二方面,本申请提供一种数据查询方法,包括:根据预设的热点数据收集方法进行热点数据收集,得到热点数据列表;将所述热点数据列表同步至终端设备的本地缓存。
在本申请实施例的一种可能设计中,还包括:监听所述热点数据列表中热点数据的值value是否发生变化;若所述热点数据列表中热点数据的值value发生变化,则将变化后的值value同步至所述终端设备的本地缓存。
在本申请实施例的又一种可能设计中,所述热点数据具有优先级,所述优先级根据所述热点数据的访问量确定;所述方法还包括:对收集到的热点数据按照优先级从高到低的顺序进行排序;根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
在本申请实施例的又一种可能设计中,还包括:获取用户手动输入的热点数据,所述用户手动输入的热点数据的优先级高于收集到的其他热点数据的优先级;对所述用户手动输入的热点数据和所述收集到的其他热点数据按照优先级从高到低的顺序进行排序;根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
在本申请实施例的又一种可能设计中,还包括:对所述热点数据列表中的热点数据随机生成第一过期时间,其中,所述热点数据列表中至少部分热点数据的第一过期时间不同。
在本申请实施例的又一种可能设计中,所述第一过期时间包括:预先设置的热点数据开始时间和预先设置的热点数据结束时间。
第三方面,本申请提供一种终端设备,包括:接收模块,用于接收数据查询请求;查询模块,用于根据热点数据列表进行数据查询;其中,所述热点数据列表存储在终端设备的本地缓存中,所述热点数据列表是缓存服务器集群进行热点数据发现,且同步至所述终端设备的本地缓存的。
在本申请实施例的又一种可能设计中,所述热点数据列表中每个热点数据具有第一过期时间,且所述热点数据列表中至少部分热点数据的第一过期时间不同。
在本申请实施例的又一种可能设计中,还包括:随机化处理模块;接收模块,还用于接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据具有第二过期时间,且每个热点数据的第二过期时间相同;随机化处理模块,用于对每个热点数据的第二过期时间进行随机化处理,得到所述第一过期时间。
在本申请实施例的又一种可能设计中,接收模块,还用于接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据对应有第一过期时间,所述第一过期时间是所述缓存服务器集群针对每个热点数据随机生成的。
在本申请实施例的又一种可能设计中,所述数据查询请求包括关键字key;该终端设备还包括:发送模块;所述查询模块根据热点数据列表进行数据查询时,具体包括:根据所述数据查询请求中的关键字key,在热点数据列表中查找是否存在相同的关键字key;若在热点数据列表中查找到存在相同的关键字key,则根据所述关键字key获取对应的值value;若在热点数据列表中查找到不存在相同的关键字key,则发送所述数据查询请求至所述缓存服务器集群。
在本申请实施例的又一种可能设计中,还包括:确定模块;其中,接收模块,还用于在接收数据查询请求之前,接收数据访问请求;确定模块,用于确定数据访问请求的类型,数据访问请求的类型包括数据查询请求类型和数据更新请求类型;若数据访问请求的类型为数据查询请求类型,则由查询模块根据所述热点数据列表进行数据查询;若数据访问请求的类型为数据更新请求类型,则由发送模块发送数据访问请求至缓存服务器集群。
第四方面,本申请提供一种缓存服务器集群,包括:热点数据收集模块,用于根据预设的热点数据收集方法进行热点数据收集,得到热点数据列表;同步模块,用于将所述热点数据列表同步至终端设备的本地缓存。
在本申请实施例的又一种可能设计中,还包括:监听模块;监听模块,用于监听所述热点数据列表中热点数据的值value是否发生变化;同步模块,还用于若所述热点数据列表中热点数据的值value发生变化,则由同步模块将变化后的值value同步至所述终端设备的本地缓存。
在本申请实施例的又一种可能设计中,所述热点数据列表中的热点数据具有优先级;所述优先级根据所述热点数据的访问量确定。
在本申请实施例的又一种可能设计中,所述热点数据具有优先级,所述优先级根据所述热点数据的访问量确定;所述缓存服务器集群还包括:排序模块和生成模块;其中,排序模块,用于对收集到的热点数据按照优先级从高到低的顺序进行排序;生成模块,用于根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
在本申请实施例的又一种可能设计中,缓存服务器集群还包括:排序模块、生成模块和获取模块;其中,获取模块,用于获取用户手动输入的热点数据,所述用户手动输入的热点数据的优先级高于收集到的其他热点数据的优先级;排序模块,用于对所述用户手动输入的热点数据和所述收集到的其他热点数据按照优先级从高到低的顺序进行排序;生成模块,用于根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
在本申请实施例的又一种可能设计中,缓存服务器集群还包括:随机生成模块,还用于对所述热点数据列表中的热点数据随机生成第一过期时间,其中,所述热点数据列表中至少部分热点数据的第一过期时间不同。
在本申请实施例的又一种可能设计中,第一过期时间包括:用户手动设置的热点数据开始时间和用户手动设置的热点数据结束时间。
在本申请实施例的又一种可能设计中,同步模块,还用于定时将所述热点数据列表同步至终端设备的本地缓存。
第五方面,本申请提供一种数据查询系统,包括第三方面所述的终端设备,以及如第四方面所述的缓存服务器集群。
第六方面,本申请提供一种电子设备,包括:
处理器、存储器;
所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如第一方面任一项所述的方法。
第七方面,本申请提供一种电子设备,包括:
处理器、存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如第二方面任一项所述的方法。
第八方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述计算机可读存储介质在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。
第九方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述计算机可读存储介质在计算机上运行时,使得计算机执行如第二方面任一项所述的方法。
本申请实施例提供的数据查询方法、系统、设备及存储介质,在接收到数据查询请求时,根据热点数据列表进行数据查询;其中,热点数据列表存储在终端设备的本地缓存中,热点数据列表是缓存服务器集群进行热点数据发现,且同步至终端设备的本地缓存的。由于热点数据列表是缓存服务器集群进行热点数据发现并同步至终端设备的本地缓存,因而在接收到数据查询请求时,可以直接从终端设备的本地缓存进行数据查询,减轻了热点数据高并发对缓存服务器集群的压力,另外,缓存服务器集群不再需要将热点数据列表分散到各个子节点,因而避免了哈希计算,减少了计算量,提高了数据查询速度。
附图说明
图1为本申请实施例提供的数据查询系统的架构示意图;
图2为本申请实施例提供的数据查询方法实施例一的交互示意图;
图3为本申请实施例提供的缓存服务器集群进行热点数据收集的示意图;
图4为本申请实施例提供的数据查询方法实施例二的交互示意图;
图5为本申请实施例提供的数据查询方法实施例三的交互示意图;
图6A为本申请实施例提供的数据查询方法实施例四的流程示意图;
图6B为本申请实施例提供的数据查询方法实施例四的示例图;
图7为本申请实施例提供的数据查询方法实施例五的流程示意图;
图8为本申请实施例提供的数据查询方法实施例六的示例图;
图9为本申请实施例提供的终端设备的结构示意图;
图10为本申请实施例提供的缓存服务器的结构示意图;
图11为本申请实施例提供的电子设备实施例的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的数据查询系统的架构示意图。如图1所示,该数据查询系统可以包括:终端设备11和缓存服务器集群12。
其中,终端设备11上安装有客户端,且终端设备具有本地缓存。
缓存服务器集群12包括多个缓存服务器121,每个缓存服务器为缓存服务器集群12中的一个节点,每个缓存服务器的构成包括处理器、硬盘、内存、系统总线等。
现有技术中,用户发起的数据查询请求会在缓存服务器集群12中进行查询,而在一些热点数据访问的场景中,例如:双十一期间某些热门商品的降价促销,当这些商品被大量点击浏览或者购买时,会形成很大的访问量,就会造成热点key问题。同样地,被大量刊发、浏览的热点新闻、热点评论、明星直播等典型的读多写少的场景也会产生热点key问题。这种用户在短时间内发起大量的高并发请求,会导致缓存服务器要承受很大的访问压力,甚至发生服务器崩溃。
针对上述技术问题,本申请实施例提出如下技术构思:将热点数据查询的过程转移到各个终端设备侧进行,减少对缓存服务器集群侧的访问压力。
下面以图1所示的数据查询系统的架构,通过具体实施例对本申请的技术方案进行详细说明。需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2为本申请实施例提供的数据查询方法实施例一的交互示意图。该方法以图1所示数据查询系统中终端设备11和缓存服务器集群12的交互进行解释说明。如图2所示,本申请实施例提供的数据查询方法可以包括如下步骤:
步骤S201、根据预设的热点数据收集方法进行热点数据收集,得到热点数据列表。
在本实施例中,缓存服务器集群12中预先设置有数据收集方法,例如基于统计阀值的热点统计方法、基于统计周期的热点统计方法,缓存服务器集群12根据接收到的数据访问请求,以及预设的热点数据收集方法进行热点数据收集,从而得到热点数据列表。其中,热点数据列表的形式如下表1所示:
表1热点数据列表
可以看到,热点数据列表中存储的是热点数据的关键字key和对应的值value。其中,关键字key是热点数据的唯一标识,值value是热点数据的具体内容。例如,对于一条热点新闻,关键字key可以是该热点新闻的关键词,例如标题,值value可以是该热点新闻的新闻内容。再例如,对于某一件促销商品,关键字key可以是该商品的名称,值value可以是该商品的具体信息,例如商品详情。
图3为本申请实施例提供的缓存服务器集群进行热点数据收集的示意图。如图3所示,包括:多个缓存服务器31和热点数据收集模块32;其中,热点数据收集模块32与缓存服务器集群中每个缓存服务器31连接,并根据每个缓存服务器31中缓存的数据进行热点数据收集。其中,具体的热点数据方法可以参见前述内容介绍,此处不再赘述。
步骤S202、将热点数据列表同步至终端设备的本地缓存。
在本实施例中,缓存服务器集群12在得到热点数据列表后,将热点数据列表同步至终端设备11,以使终端设备11将热点数据列表存储在终端设备的本地缓存中。
可选的,缓存服务器集群12在将热点数据列表同步至终端设备的本地缓存时,可以采用http长连接、socket长连接、netty等客户端与服务器进行双向数据同步的技术。
步骤S203、接收数据查询请求。
在本实施例中,终端设备接收用户在终端设备上进行触发操作发起的数据查询请求。
在一些可能的场景中,用户可以通过在终端设备上安装的客户端,或者是在终端设备自带的浏览器页面中点击新闻标题、商品链接等发起数据查询请求。
步骤S204、根据热点数据列表进行数据查询。
本实施例中,终端设备的本地缓存中缓存有热点数据列表和热点数据列表对应的热点数据。其中,本地缓存中缓存的热点数据是以key-value形式缓存的。
另外,热点数据列表中缓存有热点数据的关键字key,终端设备根据数据查询请求中携带的关键字key,在热点数据列表中查询对应的值value。
步骤S205、输出数据查询结果。
具体的,数据查询请求包括关键字key,终端设备根据数据查询请求中的关键字key在热点数据列表中查找是否存在相同的关键字key,若在热点数据列表中查找到存在相同的关键字key,则表示查询成功,进而会根据关键字key获取相应的值value并输出;若在热点数据列表中查找到不存在相同的关键字key,则进一步从缓存服务器集群中进行数据查询。
可选的,在从缓存服务器集群中进行数据查询时,若从缓存服务器集群中查询到与数据查询请求中包括的关键字key对应的值value,则将值value作为数据查询结果输出,若从缓存服务器集群中未查询到与数据查询请求中包括的关键字key对应的值value,则进一步从数据库中进行数据查询。
可选的,在从缓存服务器集群中进行数据查询时,若从数据库中查询到与数据查询请求中包括的关键字key对应的值value,则将值value作为数据查询结果输出,若从数据库中未查询到与数据查询请求中包括的关键字key对应的值value,则返回无查询结果的提示信息。
本申请实施例提供的数据查询方法,在接收到数据查询请求时,在热点数据列表中进行数据查询,并输出数据查询结果;其中,热点数据列表存储在终端设备的本地缓存中,热点数据列表是缓存服务器集群进行热点数据发现,且同步至终端设备的本地缓存的。由于热点数据列表是缓存服务器集群进行热点数据发现并同步至终端设备的本地缓存,因而在接收到数据查询请求时,可以直接从终端设备的本地缓存进行数据查询,减轻了热点数据高并发对缓存服务器集群的压力,另外,缓存服务器集群不再需要将热点数据列表分散到各个子节点,因而避免了哈希计算,减少了计算量,提高了数据查询速度。
示例性地,在上述实施例的基础上,热点数据列表中每个热点数据具有第一过期时间,且热点数据列表中至少部分热点数据的第一过期时间不同。也就是说,热点数据列表中所有热点数据的第一过期时间均不同,或者热点数据列表中一些热点数据的第一过期时间相同,但所有热点数据的第一过期时间不完全相同。举例来说,假设热点数据列表中包括3个热点数据,该3个热点数据对应的第一过期时间分别可以为:7天、8天、9天,也可以分别为:7天、8天、7天。
本实施例中,热点数据列表中至少部分热点数据的第一过期时间不同,能够避免本地缓存中大量热点数据同时到达过期时间,需要从数据库进行数据查询,引起数据库压力过大甚至宕机而发生缓存雪崩。
示例性地,在上述实施例的基础上,第一过期时间可以通过如下两种可选的实施方式生成:
在一种可选的实施方式中,缓存服务器集群还可以针对热点数据列表中每个热点数据生成相同的第二过期时间,再将具有第二过期时间的热点数据列表发送至终端设备的本地缓存。相应的,终端设备侧接收缓存服务器集群发送的热点数据列表,该热点数据列表中每个热点数据对应有由缓存服务器集群生成的第二过期时间。
本实施例中,第二过期时间是缓存服务器集群为了避免热点数据一直缓存在终端设备的本地缓存中,造成缓存服务器集群与本地缓存数据不一致,提供给用户过期的数据而设置的,且每个热点数据的第二过期时间默认是相同的。其中,缓存服务器集群同步至终端设备的热点数据列表的形式如下表2:
表2热点数据列表
key | value | 第二过期时间 |
key1 | value1 | 7天 |
key2 | value2 | 7天 |
key3 | value3 | 7天 |
从上述表2可以看出,缓存服务器集群同步至终端设备的热点数据列表中,对于所有的热点数据的第二过期时间都是相同的,这样很容易造成本地缓存雪崩。为了避免同一时刻缓存雪崩,本申请实施例提供了如下数据查询方法实施例二。图4为本申请实施例提供的数据查询方法实施例二的交互示意图。本实施例的执行主体为终端设备。如图4所示,本申请实施例提供的数据查询方法可以包括如下步骤:
步骤S401、接收缓存服务器集群发送的热点数据列表。
其中,缓存服务器集群发送的热点数据列表中每个热点数据具有第二过期时间,且每个热点数据的第二过期时间相同。
在相关技术中,第二过期时间的作用在于:当热点数据列表中的热点数据在终端设备的本地缓存中存储时间超过第二过期时间,终端设备的本地缓存会将该热点数据从终端设备的本地缓存中删除。则终端设备根据热点数据列表进行数据查询时,还会根据第二过期时间进行数据查询,即:如果当前查询结果指示的值value设置有第二过期时间,则判断当前值value的缓存时间是否超过第二过期时间,若未过期就直接返回给用户,若过期则调用缓存服务器获取最新的值value。如此,虽然能够避免热点数据一直缓存在终端设备的本地缓存中,造成缓存服务器集群与本地缓存数据不一致的现象,然而,这样很容易发生缓存雪崩,因而本申请实施例还可以通过以下步骤S402来避免缓存雪崩。
其中,缓存服务器集群发送的热点数据列表的形式可以参见如上表2所示。
步骤S402、对每个热点数据的第二过期时间进行随机化处理,得到第一过期时间。
本实施例中,终端设备在接收到缓存服务器集群发送的热点数据列表之后,将热点数据列表中每个热点数据的第二过期时间进行随机化处理,使每个热点数据的过期时间不同。具体的,随机化处理后的热点数据列表可参见下表3所示:
表3热点数据列表
key | value | 第一过期时间 |
key1 | value1 | 7天 |
key2 | value2 | 15天 |
key3 | value3 | 30天 |
本申请实施例提供的数据查询方法,通过在接收到缓存服务器集群同步的热点数据列表后,对热点数据列表中每个热点数据的第二过期时间进行随机化处理,从而使得每个热点数据的过期时间不同,避免同一时刻本地缓存雪崩。另外,随机化处理的过程由终端设备来执行,能够减轻缓存服务器侧的压力。
在另一种可选的实施方式中,还可以是由缓存服务器集群直接针对热点数据列表中每个热点数据随机生成第一过期时间,再将具有第一过期时间的热点数据列表同步至终端设备的本地缓存。相应的,终端设备侧接收缓存服务器集群发送的热点数据列表,该热点数据列表中每个热点数据对应有由缓存服务器集群随机生成的第一过期时间。
图5为本申请实施例提供的数据查询方法实施例三的交互示意图。本实施例的执行主体为缓存服务器集群。如图5所示,在步骤S201之后,本申请实施例提供的数据查询方法可以包括如下步骤:
步骤S501、对热点数据列表中每个热点数据的第二过期时间进行随机化处理,得到第一过期时间,至少部分热点数据的第一过期时间不同。
对于步骤S501的具体实现方式可以参见前述步骤S402的介绍。步骤S501与步骤S402相比,区别在于执行主体不同,即步骤S402是在终端设备侧进行随机化处理,而步骤S501是在缓存服务器集群侧进行随机化处理。
步骤S502、将随机化处理后的热点数据列表同步至终端设备的本地缓存。
本实施例中,由缓存服务器直接随机生成第一过期时间,使得终端设备侧能够直接使用热点数据列表,不再需要将第二过期时间进行随机化处理,能够减少终端设备侧的操作过程,加快数据查询速度。
示例性的,在上述实施例的基础上,本地缓存接收到的请求为数据访问请求,而数据访问请求包括数据查询请求和数据更新请求,本实施例中的本地缓存主要用于数据查询,为了避免对本地缓存的无效查询,本申请还可以提供如下实施例。具体的,图6A为本申请实施例提供的数据查询方法实施例四的流程示意图,图6B为本申请实施例提供的数据查询方法实施例四的示例图。本实施例的执行主体为终端设备。如图6A、图6B所示,该方法还可以包括如下步骤:
步骤S601、接收数据访问请求;
步骤S602、确定数据访问请求的类型,数据访问请求的类型包括数据查询请求类型和数据更新请求类型。
其中,终端设备在接收到数据访问请求后,首先根据数据访问请求携带的类型标识确定数据查询请求的类型,类型标识包括get请求的类型标识和set请求的类型标识,其中,set请求代表的是数据更新请求,get请求代表的是数据查询请求。
步骤S603、若数据访问请求的类型为get请求类型,则根据热点数据列表进行数据查询。
本实施例中,若数据查询请求的类型为get请求类型,则首先在本地缓存的热点数据列表中进行数据查询,若查询到与get请求对应的查询结果,则将对应的查询结果返回;若未查询到与get请求对应的查询结果,则发送数据查询请求至缓存服务器集群,以便从缓存服务器集群中进行数据查询。
步骤S604、若数据访问请求的类型为set请求类型,则发送数据访问请求至缓存服务器集群。
本实施例中,若数据访问请求的类型为set请求类型,则直接在缓存服务器集群中进行数据更新,不再从本地缓存进行数据查询,减少对本地缓存的无效查询。
本申请实施例在接收到数据访问请求之后,首先确定数据访问请求的类型,若数据访问请求的类型为get请求类型,则在热点数据列表中进行数据查询,若数据访问请求的类型为set请求类型,则发送数据查询请求至缓存服务器集群,以便直接在缓存服务器集群中进行数据更新,不再从本地缓存进行数据查询,减少对本地缓存的无效查询。
示例性的,在上述各实施例的基础上,图7为本申请实施例提供的数据查询方法实施例五的流程示意图。本实施例的执行主体为缓存服务器集群,如图7所示,在本实施例中,该方法还可以包括如下步骤:
步骤S701、监听热点数据列表中热点数据的值value是否发生变化。
步骤S702、若热点数据列表中热点数据的值value发生变化,则将变化后的值value同步至终端设备的本地缓存。
步骤S703、若热点数据列表中热点数据的值value未发生变化,则不作处理。
在本实施例中,缓存服务器集群的热点数据收集模块的守护线程会定期查询本地缓存中热点key列表保存的key的值value与缓存服务器集群中的值value是否一致,如果本地缓存中热点key列表保存的key的值value与缓存服务器集群中的值value不一致,则代表缓存的热点数据的值value被更新了,通过将变化后的值value同步至终端设备的本地缓存,能够避免提供给用户过期的数据。
进一步的,在本实施例中,为了避免热点数据列表太大,影响访问性能。缓存服务器集群在进行热点数据收集时,还可以对收集到的热点数据按照优先级从高到低的顺序进行排序;根据排序靠前的预设数量个热点数据,生成热点数据列表,其中,热点数据的优先级可以根据访问量确定,访问量与优先级呈正相关,即访问量越大,优先级越高,反之,访问量越小,优先级越低。例如,对收集到的热点数据按照访问量进行排序,并按照排序顺序选取前N个热点数据生成热点数据列表,其中,N为热点数据列表的预设大小,其由本领域技术人员根据实际需求设置,本实施例在此不作具体限定。
进一步的,在本申请的上述各实施例中,为了应对访问量较大的一些业务场景,例如商品大促、秒杀等特殊业务场景,还可以由用户在热点数据列表中手动设置热点数据。具体包括:缓存服务器集群获取用户手动输入的热点数据,其中,用户手动输入的热点数据的优先级高于收集的其他热点数据的优先级;对用户手动输入的热点数据和收集的其他热点数据按照优先级从高到低的顺序进行排序;根据排序靠前的预设数量个热点数据,生成热点数据列表。
举例来说,可以给热点数据设置一类型字段,该类型字段包括:手动设置的热点数据类型和其他热点数据类型(非手动设置的热点数据),在收集热点数据时,若热点数据的类型字段为手动设置的热点数据类型,则优先将类型字段为手动设置的热点数据类型对应的热点数据添加到热点数据列表,然后再根据预设的热点数据收集算法收集其他热点数据,并添加到热点数据列表中,直至达到热点数据列表的预设长度N。也就是说,当热点数据列表中的热点数据的数量达到预设长度N时,则停止在热点数据列表中添加热点数据的操作。
可选的,在短期内存在较大访问量的一些场景中,第一过期时间还可以包括:预先设置的热点数据开始时间和预先设置的热点数据结束时间。
例如,在应对大促、秒杀等特殊场景的活动的场景下,若活动日期是某一天,则用户可以手动设置开始时间和结束时间为这一天的0时至24时。
本实施例中,在短期内存在较大访问量的一些场景中,通过预先设置热点数据的开始时间和结束时间,能够避免热点数据较长时间缓存在本地缓存中,占用本地缓存。
进一步的,在本申请的上述各实施例中,该方法还包括:缓存服务器集群定时将热点数据列表同步至终端设备的本地缓存。对于终端设备而言,其执行的操作包括:定时接收缓存服务器集群发送的热点缓存列表;根据最新接收到的热点缓存列表对本地缓存中的热点缓存列表进行更新。具体的,图8为本申请实施例提供的数据查询方法实施例六的示例图,如图8所示,可以在热点数据收集模块中增加一守护线程,守护线程根据配置文件中设定的时间定时将热点数据列表同步至终端设备的本地缓存。
其中,热点数据列表中的每个热点数据是根据缓存服务器中缓存的数据的访问量统计出来的。具体的,System key是缓存服务器集群中所缓存的所有key,之后由热点数据收集模块判断当前key是否属于热点key,或者判断当前热点key列表中的值value是否发生了变化,若当前key属于热点key,或者当前热点key列表中的值value发生了变化,则将当前key添加至热点数据列表,或者对热点数据列表中的值value进行更新,得到热点数据列表并输出。而守护线程和热点数据列表之间的两条线,分别代表守护线程向热点数据列表更新数据(写数据),或者守护线程从热点数据列表取数据(读数据)。输入热点数据可以是手动输入的热点数据,并添加至热点数据列表。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图9为本申请实施例提供的终端设备的结构示意图。参照图9所示,该终端设备包括:接收模块91、查询模块92和输出模块93。接收模块91,用于接收数据查询请求;查询模块92,用于根据热点数据列表进行数据查询;其中,所述热点数据列表存储在终端设备的本地缓存中,所述热点数据列表是缓存服务器集群进行热点数据发现,且同步至所述终端设备的本地缓存的;输出模块93,用于输出数据查询结果。
在本申请实施例的又一种可能设计中,所述热点数据列表中每个热点数据具有第一过期时间,且所述热点数据列表中至少部分热点数据的第一过期时间不同。
在本申请实施例的又一种可能设计中,还包括:随机化处理模块94;接收模块91,还用于接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据具有第二过期时间,且每个热点数据的第二过期时间相同;随机化处理模块94,用于对每个热点数据的第二过期时间进行随机化处理,得到所述第一过期时间。
在本申请实施例的又一种可能设计中,接收模块91,还用于接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据对应有第一过期时间,所述第一过期时间是所述缓存服务器集群针对每个热点数据随机生成的。
在本申请实施例的又一种可能设计中,所述数据查询请求包括关键字key;该终端设备还包括:发送模块95;所述查询模块92根据热点数据列表进行数据查询时,具体包括:根据所述数据查询请求中的关键字key,在热点数据列表中查找是否存在相同的关键字key;若在热点数据列表中查找到存在相同的关键字key,则根据所述关键字key获取对应的值value;若在热点数据列表中查找到不存在相同的关键字key,则发送所述数据查询请求至所述缓存服务器集群。
在本申请实施例的又一种可能设计中,还包括:确定模块96;其中,接收模块91,还用于在接收数据查询请求之前,接收数据访问请求;确定模块96,用于确定数据访问请求的类型,数据访问请求的类型包括数据查询请求类型和数据更新请求类型;若数据访问请求的类型为数据查询请求类型,则由查询模块92根据所述热点数据列表进行数据查询;若数据访问请求的类型为数据更新请求类型,则由发送模块95发送数据访问请求至缓存服务器集群。
本申请实施例提供的终端设备,可用于执行图2至图8所示方法实施例中终端设备的实现方案,其实现原理和技术效果类似,在此不再赘述。
图10为本申请实施例提供的缓存服务器集群的结构示意图。参照图10所示,该装置包括:热点数据收集模块101和同步模块102。
其中,热点数据收集模块101,用于根据预设的热点数据收集方法进行热点数据收集,得到热点数据列表;同步模块102,用于将热点数据列表同步至终端设备的本地缓存。
在本申请实施例的又一种可能设计中,还包括:监听模块103;监听模块103,用于监听所述热点数据列表中热点数据的值value是否发生变化;同步模块102,还用于若所述热点数据列表中热点数据的值value发生变化,则将变化后的值value同步至所述终端设备的本地缓存。
在本申请实施例的又一种可能设计中,所述热点数据列表中的热点数据具有优先级;所述优先级根据所述热点数据的访问量确定。
在本申请实施例的又一种可能设计中,所述热点数据具有优先级,所述优先级根据所述热点数据的访问量确定;所述缓存服务器集群还包括:排序模块104和生成模块105;其中,排序模块104,用于对收集到的热点数据按照优先级从高到低的顺序进行排序;生成模块105,用于根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
在本申请实施例的又一种可能设计中,缓存服务器集群还包括:排序模块104、生成模块105和获取模块106;其中,获取模块106,用于获取用户手动输入的热点数据,所述用户手动输入的热点数据的优先级高于收集到的其他热点数据的优先级;排序模块104,用于对所述用户手动输入的热点数据和所述收集到的其他热点数据按照优先级从高到低的顺序进行排序;生成模块105,用于根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
在本申请实施例的又一种可能设计中,缓存服务器集群还包括:随机生成模块107,还用于对所述热点数据列表中的热点数据随机生成第一过期时间,其中,所述热点数据列表中至少部分热点数据的第一过期时间不同。
在本申请实施例的又一种可能设计中,第一过期时间包括:用户手动设置的热点数据开始时间和用户手动设置的热点数据结束时间。
在本申请实施例的又一种可能设计中,同步模块102,还用于定时将所述热点数据列表同步至终端设备的本地缓存。
本申请实施例提供的缓存服务器,可用于执行图2至图8所示实施例中缓存服务器的实现方案,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,确定模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上确定模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
图11为本申请实施例提供的电子设备实施例的结构示意图。如图11所示,该电子设备可以包括:处理器111、存储器112、系统总线113和通信接口114,所述存储器112通过系统总线113与所述处理器111连接并完成相互间的通信,存储器112用于存储计算机执行指令,通信接口114用于与外部设备进行通信,处理器111执行上述计算机执行指令时实现如上述图2至图8所示实施例中终端设备、缓存服务器的方案。例如,若电子设备为终端设备,则通信接口114用于与缓存服务器进行通信,若电子设备为缓存服务器,则通信接口114用于与终端设备进行通信。
上述图11中提到的系统总线可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。所述系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。收发器用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(random access memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器CPU、网络处理器(networkprocessor,NP)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可选的,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当该计算机执行指令在计算机上运行时,使得计算机执行如上述图2至图8所示实施例的方法。
可选的,本申请实施例还提供一种运行指令的芯片,所述芯片用于执行上述图2至图8所示实施例的方法。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中,至少一个处理器可以从所述计算机可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序时可实现上述图2至图8所示实施例的方法。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中,a,b,c可以是单个,也可以是多个。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (20)
1.一种数据查询方法,其特征在于,所述方法包括:
接收数据查询请求;
根据热点数据列表进行数据查询;其中,所述热点数据列表存储在终端设备的本地缓存中,所述热点数据列表是缓存服务器集群进行热点数据发现,且同步至所述终端设备的本地缓存的;
输出数据查询结果。
2.根据权利要求1所述的方法,其特征在于,所述热点数据列表中每个热点数据具有第一过期时间,且所述热点数据列表中至少部分热点数据的第一过期时间不同。
3.根据权利要求2所述的方法,其特征在于,还包括:
接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据具有第二过期时间,且每个热点数据的第二过期时间相同;
对每个热点数据的第二过期时间进行随机化处理,得到所述第一过期时间。
4.根据权利要求2所述的方法,其特征在于,还包括:
接收所述缓存服务器集群发送的所述热点数据列表,所述缓存服务器集群发送的所述热点数据列表中每个热点数据对应有第一过期时间,所述第一过期时间是所述缓存服务器集群针对每个热点数据随机生成的。
5.根据权利要求1所述的方法,其特征在于,所述数据查询请求包括关键字key;
相应的,所述根据热点数据列表进行数据查询,包括:
根据所述数据查询请求中的关键字key,在热点数据列表中查找是否存在相同的关键字key;
若在热点数据列表中查找到存在相同的关键字key,则根据所述关键字key获取对应的值value;
若在热点数据列表中查找到不存在相同的关键字key,则发送所述数据查询请求至所述缓存服务器集群。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述接收数据查询请求之前,所述方法还包括:
接收数据访问请求;
确定数据访问请求的类型,数据访问请求的类型包括数据查询请求类型和数据更新请求类型;
若数据访问请求的类型为数据查询请求类型,则根据所述热点数据列表进行数据查询;
若数据访问请求的类型为数据更新请求类型,则发送数据访问请求至缓存服务器集群。
7.一种数据查询方法,其特征在于,所述方法包括:
根据预设的热点数据收集方法进行热点数据收集,得到热点数据列表;
将所述热点数据列表同步至终端设备的本地缓存。
8.根据权利要求7所述的方法,其特征在于,还包括:
监听所述热点数据列表中热点数据的值value是否发生变化;
若所述热点数据列表中热点数据的值value发生变化,则将变化后的值value同步至所述终端设备的本地缓存。
9.根据权利要求7所述的方法,其特征在于,所述热点数据具有优先级,所述优先级根据所述热点数据的访问量确定;所述方法还包括:
对收集到的热点数据按照优先级从高到低的顺序进行排序;
根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
10.根据权利要求7所述的方法,其特征在于,还包括:
获取用户手动输入的热点数据,所述用户手动输入的热点数据的优先级高于收集到的其他热点数据的优先级;
对所述用户手动输入的热点数据和所述收集到的其他热点数据按照优先级从高到低的顺序进行排序;
根据排序靠前的预设数量个热点数据,生成所述热点数据列表。
11.根据权利要求7-10任一项所述的方法,其特征在于,还包括:
对所述热点数据列表中的热点数据随机生成第一过期时间,其中,所述热点数据列表中至少部分热点数据的第一过期时间不同。
12.根据权利要求11所述的方法,其特征在于,所述第一过期时间包括:预先设置的热点数据开始时间和预先设置的热点数据结束时间。
13.根据权利要求7-10任一项所述的方法,其特征在于,所述将所述热点数据列表同步至终端设备的本地缓存,包括:
定时将所述热点数据列表同步至终端设备的本地缓存。
14.一种终端设备,其特征在于,包括:
接收模块,用于接收数据查询请求;
查询模块,用于根据热点数据列表中进行数据查询;
其中,所述热点数据列表存储在终端设备的本地缓存中,所述热点数据列表是缓存服务器集群进行热点数据发现,且同步至所述终端设备的本地缓存的;
输出模块,用于输出数据查询结果。
15.一种缓存服务器集群,其特征在于,包括:
热点数据收集模块,用于根据预设的热点数据收集方法进行热点数据收集,得到热点数据列表;
同步模块,用于将所述热点数据列表同步至终端设备的本地缓存。
16.一种数据查询系统,其特征在于,包括如权利要求14所述的终端设备,以及如权利要求15所述的缓存服务器集群。
17.一种电子设备,其特征在于,包括:
处理器、存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如权利要求1-6任一项所述的方法。
18.一种电子设备,其特征在于,包括:
处理器、存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如权利要求7-13任一项所述的方法。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述计算机可读存储介质在计算机上运行时,使得计算机执行如权利要求1-6任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述计算机可读存储介质在计算机上运行时,使得计算机执行如权利要求7-13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011263071.2A CN112307069A (zh) | 2020-11-12 | 2020-11-12 | 数据查询方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011263071.2A CN112307069A (zh) | 2020-11-12 | 2020-11-12 | 数据查询方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112307069A true CN112307069A (zh) | 2021-02-02 |
Family
ID=74326658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011263071.2A Pending CN112307069A (zh) | 2020-11-12 | 2020-11-12 | 数据查询方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112307069A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407287A (zh) * | 2021-06-29 | 2021-09-17 | 中国平安人寿保险股份有限公司 | 可视化页面的快速生成方法、装置、设备及存储介质 |
CN113489776A (zh) * | 2021-06-30 | 2021-10-08 | 北京小米移动软件有限公司 | 热点检测方法、装置、监测服务器及存储介质 |
CN114974605A (zh) * | 2022-05-24 | 2022-08-30 | 山东浪潮智慧医疗科技有限公司 | 一种高并发场景下查询多条核酸报告的办法 |
CN118445317A (zh) * | 2023-09-28 | 2024-08-06 | 荣耀终端有限公司 | 应用数据获取方法和应用服务器 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140095644A1 (en) * | 2012-10-03 | 2014-04-03 | Oracle International Corporation | Processing of write requests in application server clusters |
CN103714088A (zh) * | 2012-10-09 | 2014-04-09 | 深圳市世纪光速信息技术有限公司 | 搜索词获取方法、服务器、搜索词推荐方法及系统 |
US20170155741A1 (en) * | 2015-12-01 | 2017-06-01 | Le Holdings (Beijing) Co., Ltd. | Server, method, and system for providing service data |
CN106919654A (zh) * | 2017-01-24 | 2017-07-04 | 徐州医科大学 | 一种基于Nginx的高可用MySQL数据库的实现方法 |
CN107016015A (zh) * | 2016-10-08 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 业务数据汇总方法及其系统 |
CN109101580A (zh) * | 2018-07-20 | 2018-12-28 | 北京北信源信息安全技术有限公司 | 一种基于Redis的热点数据缓存方法和装置 |
CN109729108A (zh) * | 2017-10-27 | 2019-05-07 | 阿里巴巴集团控股有限公司 | 一种防止缓存击穿的方法、相关服务器及系统 |
CN110019300A (zh) * | 2017-11-16 | 2019-07-16 | 中兴通讯股份有限公司 | 分布式数据库的数据访问方法及其系统 |
CN111125247A (zh) * | 2019-12-06 | 2020-05-08 | 北京浪潮数据技术有限公司 | 一种redis客户端缓存方法、装置、设备及存储介质 |
CN111131856A (zh) * | 2019-12-31 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 一种缓存过期时间调整方法、装置、电子设备及存储介质 |
-
2020
- 2020-11-12 CN CN202011263071.2A patent/CN112307069A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140095644A1 (en) * | 2012-10-03 | 2014-04-03 | Oracle International Corporation | Processing of write requests in application server clusters |
CN103714088A (zh) * | 2012-10-09 | 2014-04-09 | 深圳市世纪光速信息技术有限公司 | 搜索词获取方法、服务器、搜索词推荐方法及系统 |
US20170155741A1 (en) * | 2015-12-01 | 2017-06-01 | Le Holdings (Beijing) Co., Ltd. | Server, method, and system for providing service data |
CN107016015A (zh) * | 2016-10-08 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 业务数据汇总方法及其系统 |
CN106919654A (zh) * | 2017-01-24 | 2017-07-04 | 徐州医科大学 | 一种基于Nginx的高可用MySQL数据库的实现方法 |
CN109729108A (zh) * | 2017-10-27 | 2019-05-07 | 阿里巴巴集团控股有限公司 | 一种防止缓存击穿的方法、相关服务器及系统 |
CN110019300A (zh) * | 2017-11-16 | 2019-07-16 | 中兴通讯股份有限公司 | 分布式数据库的数据访问方法及其系统 |
CN109101580A (zh) * | 2018-07-20 | 2018-12-28 | 北京北信源信息安全技术有限公司 | 一种基于Redis的热点数据缓存方法和装置 |
CN111125247A (zh) * | 2019-12-06 | 2020-05-08 | 北京浪潮数据技术有限公司 | 一种redis客户端缓存方法、装置、设备及存储介质 |
CN111131856A (zh) * | 2019-12-31 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 一种缓存过期时间调整方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
张程: "分布式系统架构:技术栈详解与快速进阶", 机械工业出版社, pages: 210 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407287A (zh) * | 2021-06-29 | 2021-09-17 | 中国平安人寿保险股份有限公司 | 可视化页面的快速生成方法、装置、设备及存储介质 |
CN113489776A (zh) * | 2021-06-30 | 2021-10-08 | 北京小米移动软件有限公司 | 热点检测方法、装置、监测服务器及存储介质 |
CN114974605A (zh) * | 2022-05-24 | 2022-08-30 | 山东浪潮智慧医疗科技有限公司 | 一种高并发场景下查询多条核酸报告的办法 |
CN118445317A (zh) * | 2023-09-28 | 2024-08-06 | 荣耀终端有限公司 | 应用数据获取方法和应用服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112307069A (zh) | 数据查询方法、系统、设备及存储介质 | |
AU2016382908B2 (en) | Short link processing method, device and server | |
US9646060B2 (en) | Method and server for pushing information proactively | |
US10691763B2 (en) | Trustable web searching verification in a blockchain | |
KR102160318B1 (ko) | 중개 시스템에서 데이터 집계 | |
US9940360B2 (en) | Streaming optimized data processing | |
US10891302B2 (en) | Scalable synchronization with cache and index management | |
CN111782707B (zh) | 一种数据查询方法及系统 | |
WO2018036549A1 (zh) | 分布式数据库查询方法、装置及管理系统 | |
CN107301215B (zh) | 一种搜索结果缓存方法及装置、搜索方法及装置 | |
CN109167840B (zh) | 一种任务推送方法、节点自治服务器及边缘缓存服务器 | |
CN111400334B (zh) | 数据处理方法、装置、存储介质及电子装置 | |
US10474185B2 (en) | Timestamp alignment across a plurality of computing devices | |
CN110674101B (zh) | 文件系统的数据处理方法、装置和云服务器 | |
CN112861031A (zh) | Cdn中url刷新方法、装置、设备以及cdn节点 | |
CN104123329A (zh) | 搜索方法和装置 | |
CN112039993B (zh) | 一种长连接地址处理方法和装置 | |
CN111159131A (zh) | 性能优化方法、装置、设备及计算机可读存储介质 | |
JP5353682B2 (ja) | 構成情報管理装置、分散情報管理システム、分散情報管理方法および分散情報管理プログラム | |
CN112732751B (zh) | 一种医学数据处理方法、装置、存储介质及设备 | |
CN112699149A (zh) | 目标数据获取方法、装置和存储介质及电子装置 | |
CN113868533A (zh) | 应用搜索方法、装置、电子设备及存储介质 | |
CN113094391B (zh) | 一种支持缓存的数据汇总的计算方法、装置及设备 | |
CN116756177B (zh) | 一种mysql数据库的多表索引维护方法和系统 | |
WO2017131795A1 (en) | Processing time-varying data using an adjacency list representation of a time-varying graph |
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 | ||
CB02 | Change of applicant information |
Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176 Applicant after: Jingdong Technology Holding Co.,Ltd. Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone, 100176 Applicant before: Jingdong Digital Technology Holding Co.,Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210202 |
|
RJ01 | Rejection of invention patent application after publication |