CN113918603B - 散列缓存生成方法、装置、电子设备及存储介质 - Google Patents
散列缓存生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113918603B CN113918603B CN202111183043.4A CN202111183043A CN113918603B CN 113918603 B CN113918603 B CN 113918603B CN 202111183043 A CN202111183043 A CN 202111183043A CN 113918603 B CN113918603 B CN 113918603B
- Authority
- CN
- China
- Prior art keywords
- field
- access
- hot spot
- data
- hash
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000006870 function Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 11
- 230000032683 aging Effects 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 4
- 239000002699 waste material Substances 0.000 abstract description 9
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理领域,揭露一种散列缓存生成方法,包括:获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。此外,本发明还涉及区块链技术,所述热点字段可存储区块链中。本发明可以生成热点字段的散列缓存,避免服务器资源浪费的现象。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种散列缓存生成方法、装置、电子设备及计算机可读存储介质。
背景技术
在面对数据库数据访问能力制约的情况下,很多系统都提供了如Redis,memcache等缓存技术来实现数据的内存缓存,从而提高数据的访问并发能力。目前缓存技术通常是以键值对(key-value)模式进行数据存储和数据访问,单个key缓存虽然其远比关系型数据库极大提高了访问并发能力,但是在大型的互联网应用中,在很多场景下,单个key的缓存策略无法满足大并发请求的访问,尤其是针对动态类型的缓存数据,由于事先无法预估其访问的并发量,在编码阶段无法确定缓存策略,如果只是简单的设置单个key数据进行缓存,一旦超出了单台服务器单个key的访问并发能力,系统访问不但会变慢,而且会影响到其他key的访问,另外,若是在编码阶段对所有缓存都做二级缓存,会极大浪费本地缓存空间或缓存服务器内存空间,从而会带来一定的资源浪费。
发明内容
本发明提供一种散列缓存生成方法、装置、电子设备及计算机可读存储介质,其主要目的在于生成热点字段的散列缓存,避免服务器资源浪费的现象。
为实现上述目的,本发明提供的一种散列缓存生成方法,包括:
获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
可选地,所述配置所述数据字段的时间滑窗,包括:
设置所述数据字段的窗口数量和访问阈值;
根据所述窗口数量和所述访问阈值,初始化所述数据字段的访问窗口,得到所述数据字段的时间滑窗。
可选地,所述利用所述时间滑窗计算所述数据字段的访问量及访问频率,包括:
获取所述时间滑窗的时效周期及窗口数量,统计在所述时效周期内所述数据字段的访问量;
根据所述窗口数量和所述访问量,计算所述数据字段的访问频率。
可选地,所述根据所述访问量及所述访问频率,识别所述数据字段中的热点字段,包括:
获取所述数据字段的访问阈值,判断所述访问量是否大于所述访问阈值;
若所述访问量不大于所述访问阈值,则将所述数据字段不作为热点字段;
若所述访问量大于所述访问阈值,则判断所述访问频率是否满足预设条件;
若所述访问频率不满足所述预设条件,则将所述数据字段不作为热点字段;
若所述访问频率满足所述预设条件,则将所述数据字段作为热点字段。
可选地,所述计算所述热点字段的窗口扩展值,包括:
获取所述热点字段的访问量和访问阈值,根据所述访问量和所述访问阈值,利用预设的窗口函数计算所述热点字段的窗口扩展值。
可选地,所述根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存,包括:
采用哈希算法将所述窗口扩展值转换为所述热点字段的散列字段;
采用键值对的形式将所述业务资源加载至所述散列字段中,得到目标散列字段;
配置所述目标散列字段的访问策略,以生成所述热点字段的散列缓存。
可选地,所述配置所述目标散列字段的访问策略,还包括:
获取所述目标散列字段的数据访问量和散列字段数量;
根据所述数据访问量和所述散列字段数量,采用所述负载均衡的方式计算所述目标散列字段的散列数据量,得到所述目标散列字段的访问策略。
为了解决上述问题,本发明还提供一种散列缓存生成装置,所述装置包括:
时间滑窗配置模块,用于获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
数据字段计算模块,用于接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
热点字段识别模块,用于根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
散列缓存生成模块,用于计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以实现上述所述的散列缓存生成方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的散列缓存生成方法。
可以看出,相较于背景技术中直接通过字段二级缓存解决单个字段缓存量所带来的服务器资源浪费现象,本发明实施例首先通过配置的时间滑窗计算缓存队列中数据字段的访问量及访问频率,以自动识别数据字段中的热点字段,可以筛选出缓存队列中数据量访问大且频繁的字段,从而可以确定缓存队列中字段的缓存策略,保障缓存队列中每个字段的访问并发能力;其次,本发明实施例通过计算热点字段的窗口扩展值,并结合所述热点字段中的业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存,可以避免在字段代码阶段固定设置的二级缓存策略导致服务器内存极大资源浪费的现象,使得系统可以满足按需分配缓存的功能。因此,本发明实施例提出的一种散列缓存生成方法、装置、电子设备及计算机可读存储介质可以生成热点字段的散列缓存,避免服务器资源浪费的现象。
附图说明
图1为本发明一实施例提供的散列缓存生成方法的流程示意图;
图2为本发明一实施例提供的散列缓存生成装置的模块示意图;
图3为本发明一实施例提供的实现散列缓存生成方法的电子设备的内部结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本申请实施例提供一种散列缓存生成方法。所述散列缓存生成方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述散列缓存生成方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
参照图1所示,为本发明一实施例提供的散列缓存生成方法的流程示意图。在本发明实施例中,所述散列缓存生成方法包括:
S1、获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗。
本发明实施例中,所述缓存队列可以理解为是一个非关系型的,分布式开源的,水平可扩展的缓存服务器,其用于实现数据的内存缓存,提高数据的访问并发能力,常见的如Redis、memcache等缓存队列,所述数据字段可以理解为缓存队列中键值(key),其用于查询缓存队列中的数值(value),进一步地,本发明实施例中,所述时间滑窗可以理解为用于统计用户在访问缓存队列中数据字段流量的窗口工具。
作为本发明的一个实施例,所述配置所述数据字段的时间滑窗,包括:设置所述数据字段的窗口数量和访问阈值,根据所述窗口数量和所述访问阈值,初始化所述数据字段的访问窗口,得到所述数据字段的时间滑窗。
其中,所述窗口数量用于连续计算所述数据字段的访问状态,如设置所述数据字段的窗口数量为3,则表示该数据字段的访问状态可以连续记载3次,所述访问阈值可以理解为所述数据字段可以接受最大的数据访问量,如设置所述数据字段的访问阈值为1000,则表示该数据字段的最大数据访问量为1000,所述访问窗口是指在生成所述数据字段时的业务访问窗口。
需要说明的是,本发明实施例中,所述窗口数量、所述访问阈值基于不同的业务场景设置,所述访问窗口的初始化可以通过初始化函数实现,如OnInitDialog()函数。
基于所述时间滑窗的配置,可以很好的了解到后续在访问数据字段时业务数据量的状态,从而可以保障热点字段自动识别的前提。
S2、接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率。
本发明实施例中,所述数据访问基于不同用户发出,如用户A的数据访问为查询高一年级所有学生的语文成绩,用户B的数据访问为查询高一年级一班学生的语文成绩,用户C的数据访问为查询高一年级二班学生的语文成绩。进一步地,本发明实施例在接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的数据量及访问频率,以获取所述数据字段的访问状态,作为后续判断所述数据字段是否为热点字段的一个依据。
作为本发明的一个实施例,所述利用所述时间滑窗计算所述数据字段的访问量及访问频率,包括:获取所述时间滑窗的时效周期及窗口数量,统计在所述时效周期内所述数据字段的访问量,根据所述窗口数量和所述访问量,计算所述数据字段的访问频率。
其中,所述时效周期是指在所述时间滑窗在统计数据字段访问时的有效周期,其可以设置为50s,也可以根据实际业务场景设置,基于所述时效周期,可以保障所述缓存队列中数据字段对应的数值处于不断迭代更新的状态,保障缓存空间的最大化利用,所述访问量是指所述数据字段在时间滑窗的周期内接收到的数据访问数量,如数据字段name在时间滑窗的周期内接收到了一万个用户发出的数据访问,则数据字段name的访问量为一万,所述访问频率是指所述数据字段在时间滑窗的周期内接收到的数据访问次数与窗口数量的比值,如数据字段name在时间滑窗的周期内接收到了一百个用户发出的数据访问,数据字段name的窗口数量为十次,则该数据字段name的访问频率为10/100*100%=10%。
S3、根据所述访问量及所述访问频率,识别所述数据字段中的热点字段。
本发明实施例中,所述根据所述访问量及所述访问频率,识别所述数据字段中的热点字段,包括:获取所述数据字段的访问阈值,判断所述访问量是否大于所述访问阈值,若所述访问量不大于所述访问阈值,则将所述数据字段不作为热点字段,若所述访问量大于所述访问阈值,则判断所述访问频率是否满足预设条件,若所述访问频率不满足所述预设条件,则将所述数据字段不作为热点字段,若所述访问频率满足所述预设条件,则将所述数据字段作为热点字段。
其中,所述访问阈值可以参阅上述S1所述,在此不做进一步地赘述,所述预设条件可以设置所述访问频率是否小于预设频率,即所述访问频率小于所述预设频率,则满足所述预设条件,所述访问频率不小于所述预设频率,则不满足预设条件,可选的,所述预设频率可以设置为5%,也可以根据实际业务场景设置。
进一步地,为保障所述热点字段的隐私性和安全性,所述热点字段还可存储于一区块链节点中。
基于所述热点字段的自动识别,可以筛选出缓存队列中数据量访问大且频繁的字段,从而可以确定缓存队列中字段的缓存策略,保障缓存队列中每个字段的访问并发能力。
S4、计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
本发明实施例中,所述窗口扩展值可以理解为所述数据字段的数据访问量在超过访问阈值时需要扩展访问的字段量,如设置所述窗口扩展值为10,则表示该数据字段的数据访问量在超过访问阈值时设置的扩展访问的字段量为10。进一步地,所述业务资源可以理解为所述热点字段在缓存队列中所存储的业务数据,如所述热点字段为name,则对应的业务数据可以为“小王、小赵、小明、小张以及小孙等”。
作为本发明的一个实施例,所述计算所述热点字段的窗口扩展值,包括:获取所述热点字段的访问量和访问阈值,根据所述访问量和所述访问阈值,利用预设的窗口函数计算所述热点字段的窗口扩展值。
进一步地,本发明一可选实施例中,所述预设的窗口函数包括:
N=((max((m/n<=1)=1,(m/n>1)=m/n*1.2)))
其中,所述N表示窗口扩展值,m表示访问量,n表示访问阈值,需要说明的是若计算出的窗口扩展值存在小数,则利用下述公式执行所述窗口扩展值的取整操作:
if(N有小数)=取整(N)+1ELSE N
进一步地,作为本发明的一个实施例,所述根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存,包括:采用哈希算法将所述窗口扩展值转换为所述热点字段的散列字段,采用键值对的形式将所述业务资源加载至所述散列字段中,得到目标散列字段,配置所述目标散列字段的访问策略,以生成所述热点字段的散列缓存。
其中,所述哈希算法用于将一个数据转换为一个标志,在本发明实施例中,所述哈希算法用于将所述窗口扩展值转换成所述热点字段的散列值,如所述窗口扩展值为3,所述热点字段为name,则利用所述哈希算法将该窗口扩展值可以转换为:name_1、name_2以及name_3三个散列字段。
进一步地,本发明一可选实施例中,所述业务资源的加载可以通过数据脚本实现,所述数据脚本可以通过node技术编译。
进一步地,本发明一可选实施例中,所述配置所述目标散列字段的访问策略,包括:获取所述目标散列字段的数据访问量和散列字段数量,根据所述数据访问量和所述散列字段数量,采用所述负载均衡的方式计算所述目标散列字段的散列数据量,得到所述目标散列字段的访问策略。
其中,所述负载均衡的方式是指将所述数据访问量最优化的均分到每个目标散列字段中,如所述目标散列字段的数据访问量和散列字段数量分别为1200和6,则采用负载均衡的方式分配每个目标散列字段的散列数据量为200。
可以看出,相较于背景技术中直接通过字段二级缓存解决单个字段缓存量所带来的服务器资源浪费现象,本发明实施例首先通过配置的时间滑窗计算缓存队列中数据字段的访问量及访问频率,以自动识别数据字段中的热点字段,可以筛选出缓存队列中数据量访问大且频繁的字段,从而可以确定缓存队列中字段的缓存策略,保障缓存队列中每个字段的访问并发能力;其次,本发明实施例通过计算热点字段的窗口扩展值,并结合所述热点字段中的业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存,可以避免在字段代码阶段固定设置的二级缓存策略导致服务器内存极大资源浪费的现象,使得系统可以满足按需分配缓存的功能。因此,本发明实施例提出的一种散列缓存生成方法可以生成热点字段的散列缓存,避免服务器资源浪费的现象。
如图2所示,是本发明散列缓存生成装置的功能模块图。
本发明所述散列缓存生成装置100可以安装于电子设备中。根据实现的功能,所述散列缓存生成装置可以包括时间滑窗配置模块101、数据字段计算模块102、热点字段识别模块103以及散列缓存生成模块104。本发明所述模块也可以称之为单元,是指一种能够被电子设备的处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述时间滑窗配置模块101,用于获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
所述数据字段计算模块102,用于接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
所述热点字段识别模块103,用于根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
所述散列缓存生成模块104,用于计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
详细地,本发明实施例中所述散列缓存生成装置100中的所述各模块在使用时采用与上述的图1中所述的散列缓存生成方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图3所示,是本发明实现散列缓存生成方法的电子设备1的结构示意图。
所述电子设备1可以包括处理器10、存储器11、通信总线12以及通信接口13,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如散列缓存生成程序。
其中,所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备1的控制核心(ControlUnit),利用各种接口和线路连接整个电子设备1的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如执行散列缓存生成程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如散列缓存生成程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述通信总线12可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
所述通信接口13用于上述电子设备1与其他设备之间的通信,包括网络接口和员工接口。可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备1之间建立通信连接。所述员工接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,员工接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的员工界面。
图3仅示出了具有部件的电子设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的散列缓存生成程序是多个计算机程序的组合,在所述处理器10中运行时,可以实现:
获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
具体地,所述处理器10对上述计算机程序的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读取存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备1的处理器所执行时,可以实现:
获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (7)
1.一种散列缓存生成方法,其特征在于,所述方法包括:
获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存;
其中,所述配置所述数据字段的时间滑窗,包括:设置所述数据字段的窗口数量和访问阈值;根据所述窗口数量和所述访问阈值,初始化所述数据字段的访问窗口,得到所述数据字段的时间滑窗;
所述计算所述热点字段的窗口扩展值,包括:获取所述热点字段的访问量和访问阈值,根据所述访问量和所述访问阈值,利用预设的窗口函数计算所述热点字段的窗口扩展值;
所述根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存,包括:采用哈希算法将所述窗口扩展值转换为所述热点字段的散列字段;采用键值对的形式将所述业务资源加载至所述散列字段中,得到目标散列字段;配置所述目标散列字段的访问策略,以生成所述热点字段的散列缓存;
所述预设的窗口函数包括:
N=(( max((m/n <=1)=1, (m/n > 1)= m/n*1.2)))
其中,所述N表示窗口扩展值,m表示访问量,n表示访问阈值。
2.如权利要求1所述的散列缓存生成方法,其特征在于,所述利用所述时间滑窗计算所述数据字段的访问量及访问频率,包括:
获取所述时间滑窗的时效周期及窗口数量,统计在所述时效周期内所述数据字段的访问量;
根据所述窗口数量和所述访问量,计算所述数据字段的访问频率。
3.如权利要求1所述的散列缓存生成方法,其特征在于,所述根据所述访问量及所述访问频率,识别所述数据字段中的热点字段,包括:
获取所述数据字段的访问阈值,判断所述访问量是否大于所述访问阈值;
若所述访问量不大于所述访问阈值,则将所述数据字段不作为热点字段;
若所述访问量大于所述访问阈值,则判断所述访问频率是否满足预设条件;
若所述访问频率不满足所述预设条件,则将所述数据字段不作为热点字段;
若所述访问频率满足所述预设条件,则将所述数据字段作为热点字段。
4.如权利要求1所述的散列缓存生成方法,其特征在于,所述配置所述目标散列字段的访问策略,还包括:
获取所述目标散列字段的数据访问量和散列字段数量;
根据所述数据访问量和所述散列字段数量,采用负载均衡的方式计算所述目标散列字段的散列数据量,得到所述目标散列字段的访问策略。
5.一种散列缓存生成装置,用于实现如权利要求1至4中任意一项所述的散列缓存生成方法,其特征在于,所述装置包括:
时间滑窗配置模块,用于获取缓存队列中的数据字段,并配置所述数据字段的时间滑窗;
数据字段计算模块,用于接收到所述数据字段的数据访问时,利用所述时间滑窗计算所述数据字段的访问量及访问频率;
热点字段识别模块,用于根据所述访问量及所述访问频率,识别所述数据字段中的热点字段;
散列缓存生成模块,用于计算所述热点字段的窗口扩展值,并获取所述热点字段中的业务资源,根据所述窗口扩展值和所述业务资源,配置所述热点字段的资源访问表,以生成所述热点字段的散列缓存。
6.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至4中任意一项所述的散列缓存生成方法。
7.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任意一项所述的散列缓存生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111183043.4A CN113918603B (zh) | 2021-10-11 | 2021-10-11 | 散列缓存生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111183043.4A CN113918603B (zh) | 2021-10-11 | 2021-10-11 | 散列缓存生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113918603A CN113918603A (zh) | 2022-01-11 |
CN113918603B true CN113918603B (zh) | 2024-07-02 |
Family
ID=79239240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111183043.4A Active CN113918603B (zh) | 2021-10-11 | 2021-10-11 | 散列缓存生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918603B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116069529B (zh) * | 2023-03-16 | 2023-06-23 | 天翼云科技有限公司 | 一种动态缓存方法、装置、电子设备及计算机可读介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523279A (zh) * | 2011-12-12 | 2012-06-27 | 云海创想信息技术(无锡)有限公司 | 一种分布式文件系统及其热点文件存取方法 |
CN107346307A (zh) * | 2016-05-04 | 2017-11-14 | 北京京东尚科信息技术有限公司 | 分布式缓存系统及方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6507893B2 (en) * | 2001-01-26 | 2003-01-14 | Dell Products, L.P. | System and method for time window access frequency based caching for memory controllers |
CN104881369B (zh) * | 2015-05-11 | 2017-12-12 | 中国人民解放军国防科学技术大学 | 面向混合存储系统的低内存开销热点数据识别方法 |
CN109739433A (zh) * | 2018-11-27 | 2019-05-10 | 中科恒运股份有限公司 | 数据处理的方法及终端设备 |
CN111324809A (zh) * | 2020-02-04 | 2020-06-23 | 京东数字科技控股有限公司 | 一种热点信息监测方法、装置及系统 |
CN111726266B (zh) * | 2020-06-29 | 2022-07-22 | 深圳壹账通智能科技有限公司 | 热点数据分桶方法、系统和计算机设备 |
CN111885184A (zh) * | 2020-07-29 | 2020-11-03 | 深圳壹账通智能科技有限公司 | 高并发场景下热点访问关键字处理方法和装置 |
CN112115167B (zh) * | 2020-08-21 | 2022-11-18 | 苏宁云计算有限公司 | 缓存系统热点数据访问方法、装置、设备和存储介质 |
CN112751912B (zh) * | 2020-12-15 | 2021-12-03 | 北京金山云网络技术有限公司 | 配置调整方法、装置及电子设备 |
-
2021
- 2021-10-11 CN CN202111183043.4A patent/CN113918603B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523279A (zh) * | 2011-12-12 | 2012-06-27 | 云海创想信息技术(无锡)有限公司 | 一种分布式文件系统及其热点文件存取方法 |
CN107346307A (zh) * | 2016-05-04 | 2017-11-14 | 北京京东尚科信息技术有限公司 | 分布式缓存系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113918603A (zh) | 2022-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019114128A1 (zh) | 区块链事务区块处理方法、电子装置及可读存储介质 | |
US7415444B2 (en) | Determining compliance rates for probabilistic requests | |
CN113704665B (zh) | 动态服务发布方法、装置、电子设备及存储介质 | |
CN111694844B (zh) | 基于配置算法的企业运行数据分析方法、装置及电子设备 | |
WO2021114025A1 (zh) | 增量数据确定方法、确定装置、服务器及终端设备 | |
CN112464619B (zh) | 大数据处理方法、装置、设备及计算机可读存储介质 | |
CN113868528A (zh) | 资讯推荐方法、装置、电子设备及可读存储介质 | |
CN111209557A (zh) | 跨域单点登录方法、装置、电子设备及存储介质 | |
CN110147507A (zh) | 一种获取短链接地址的方法、装置及服务器 | |
CN113890712A (zh) | 数据传输方法、装置、电子设备及可读存储介质 | |
CN113918603B (zh) | 散列缓存生成方法、装置、电子设备及存储介质 | |
CN113419856B (zh) | 智能限流方法、装置、电子设备及存储介质 | |
CN112580079A (zh) | 权限配置方法、装置、电子设备及可读存储介质 | |
CN112256472B (zh) | 分布式数据调取方法、装置、电子设备及存储介质 | |
CN116975884B (zh) | 一种数据安全存储方法 | |
CN113468175A (zh) | 数据压缩方法、装置、电子设备及存储介质 | |
CN115002211B (zh) | 基于云原生的售后微服务实现方法、装置、设备及介质 | |
CN115119197B (zh) | 基于大数据的无线网络风险分析方法、装置、设备及介质 | |
CN116647560A (zh) | 物联网计算机集群协调优化控制方法、装置、设备及介质 | |
CN114157634B (zh) | 唯一账号识别方法、装置、设备及存储介质 | |
CN112925753B (zh) | 文件追加写入方法、装置、电子设备及存储介质 | |
WO2022134345A1 (zh) | 文件访问方法、装置、设备及可读存储介质 | |
CN111651509B (zh) | 基于Hbase数据库的数据导入方法、装置、电子设备及介质 | |
CN112257078B (zh) | 一种基于tee技术的区块链加解密服务安全可信系统 | |
CN114626103A (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 |