CN107133369A - 一种基于redis过期键的分布式读共享缓存老化方法 - Google Patents
一种基于redis过期键的分布式读共享缓存老化方法 Download PDFInfo
- Publication number
- CN107133369A CN107133369A CN201710455738.0A CN201710455738A CN107133369A CN 107133369 A CN107133369 A CN 107133369A CN 201710455738 A CN201710455738 A CN 201710455738A CN 107133369 A CN107133369 A CN 107133369A
- Authority
- CN
- China
- Prior art keywords
- cache
- redis
- file
- read
- expiration time
- 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 19
- 230000032683 aging Effects 0.000 title claims abstract description 17
- 230000006870 function Effects 0.000 abstract 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002431 foraging effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification 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/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及分布式文件系统读共享缓存老化设计技术领域,特别涉及一种基于REDIS过期键的分布式读共享缓存老化方法。本发明的一种基于redis过期键的分布式读共享缓存老化方法,其主要功能为所有存储节点通过redis数据库保存读共享缓存索引,以文件名字为关键字,利用redis过期键特性为每个关键字设置过期时间,当有缓存命中时,重置关键字过期时间,当过期时间到后,对该关键字的文件进行老化,释放缓存空间,当缓存无法命中时,重新申请缓存空间进行文件缓存,不限制缓存大小,根据读访问压力以及过期时间决定缓存空间大小,通过该方法可以在大量读的情况充分利用物理缓存提高读效率。
Description
技术领域
本发明涉及分布式文件系统读共享缓存老化设计技术领域,特别涉及一种基于REDIS过期键的分布式读共享缓存老化方法。
背景技术
分布式文件系统是由多个存储节点对外提供统一的文件系统,客户应用可以通过任意一个存储节点读取到文件系统中的保存的文件,为了提高文件的二次读取效率,通常会提供读缓存来缓存最近读取过的文件,由于系统的物理缓存大小是固定的,所以需要对长期不访问的缓存文件进行老化,达到缓存新的访问频繁的文件。
通常情况下系统会在一开始划分出固定的读缓存大小,在缓存未用完时,不对缓存数据进行老化,当缓存用完时,一次性根据最少访问策略老化一批缓存文件。
该老化方法无法根据系统要求动态调整缓存大小,且在读缓存满,又读未命中的情况下进行缓存释放,缓存利用效率较低。
发明内容
为了解决现有技术的问题,本发明提供了一种基于REDIS过期键的分布式读共享缓存老化方法,其可以在大量读的情况充分利用物理缓存提高读效率。
本发明所采用的技术方案如下:
一种基于REDIS过期键的分布式读共享缓存老化方法 ,包括以下步骤:
A、当客户应用第一次读文件时,缓存无法命中,存储节点缓存文件,并以文件名为关键字把索引写入到redis数据库,并设置过期时间;
A2、当客户应用在过期时间内访问该文件,直接从缓存中获取,并重置过期时间;
A3、当客户应用在过期时间内都未访问该文件,系统删除redis数据中该关键字,并释放该文件的缓存空间。
所有存储节点通过redis数据库保存读共享缓存索引,以文件名字为关键字,缓存共享占用空间不进行限制,根据系统随机读压力占用缓存空间自动调节。
利用redis过期键的特性为每个文件关键字设置过期时间,每次缓存命中后重置过期时间,过期时间内无访问,则对该缓存文件进行老化,释放缓存空间。
读缓存空间不限制大小,当读缓存未命中时,申请新的缓存空间,缓存占用空间大小取决于过期时间设置以及业务读压力自动调节,当读压力小、过期时间设置小时,占用缓存空间小。
本发明提供的技术方案带来的有益效果是:
本发明的一种基于redis过期键的分布式读共享缓存老化方法,其主要功能为所有存储节点通过redis数据库保存读共享缓存索引,以文件名字为关键字,利用redis过期键特性为每个关键字设置过期时间,当有缓存命中时,重置关键字过期时间,当过期时间到后,对该关键字的文件进行老化,释放缓存空间,当缓存无法命中时,重新申请缓存空间进行文件缓存,不限制缓存大小,根据读访问压力以及过期时间决定缓存空间大小,通过该方法可以在大量读的情况充分利用物理缓存提高读效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术下的分布式读共享缓存老化方法流程图;
图2为本发明的一种基于redis过期键的分布式读共享缓存老化方法的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
如图2所示,表示了本实施例提供的基于redis过期键的分布式读共享缓存老化方法:
客户应用读取文件,存储节点判断缓存是否命中,如果是则直接读取文件,重置redis关键字的过期时间,如果否则申请新的缓存空间缓存文件,设置redis关键字的过期时间,再返回读取到的文件,同时存储节点不断定时判断是否有关键字过期时间到,如果是则删除关键字,并进行缓存空间释放,如果否,则继续等待下一次检测判断。
所有存储节点通过redis数据库保存读共享缓存索引,以文件名字为关键字,缓存共享占用空间不进行限制,根据系统随机读压力占用缓存空间自动调节。
利用redis过期键的特性为每个文件关键字设置过期时间,每次缓存命中后重置过期时间,过期时间内无访问,则对该缓存文件进行老化,释放缓存空间。
读缓存空间不限制大小,当读缓存未命中时,申请新的缓存空间,缓存占用空间大小取决于过期时间设置以及业务读压力自动调节,当读压力小、过期时间设置小时,占用缓存空间小。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于REDIS过期键的分布式读共享缓存老化方法 ,包括以下步骤:
A、当客户应用第一次读文件时,缓存无法命中,存储节点缓存文件,并以文件名为关键字把索引写入到redis数据库,并设置过期时间;
A2、当客户应用在过期时间内访问该文件,直接从缓存中获取,并重置过期时间;
A3、当客户应用在过期时间内都未访问该文件,系统删除redis数据中该关键字,并释放该文件的缓存空间。
2.根据权利要求1所述的一种基于REDIS过期键的分布式读共享缓存老化方法,其特征在于,所有存储节点通过redis数据库保存读共享缓存索引,以文件名字为关键字,缓存共享占用空间不进行限制,根据系统随机读压力占用缓存空间自动调节。
3.根据权利要求1所述的一种基于REDIS过期键的分布式读共享缓存老化方法,其特征在于,利用redis过期键的特性为每个文件关键字设置过期时间,每次缓存命中后重置过期时间,过期时间内无访问,则对该缓存文件进行老化,释放缓存空间。
4.根据权利要求1所述的一种基于REDIS过期键的分布式读共享缓存老化方法,其特征在于,读缓存空间不限制大小,当读缓存未命中时,申请新的缓存空间,缓存占用空间大小取决于过期时间设置以及业务读压力自动调节,当读压力小、过期时间设置小时,占用缓存空间小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710455738.0A CN107133369A (zh) | 2017-06-16 | 2017-06-16 | 一种基于redis过期键的分布式读共享缓存老化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710455738.0A CN107133369A (zh) | 2017-06-16 | 2017-06-16 | 一种基于redis过期键的分布式读共享缓存老化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107133369A true CN107133369A (zh) | 2017-09-05 |
Family
ID=59734709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710455738.0A Pending CN107133369A (zh) | 2017-06-16 | 2017-06-16 | 一种基于redis过期键的分布式读共享缓存老化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107133369A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108280031A (zh) * | 2017-12-22 | 2018-07-13 | 努比亚技术有限公司 | redis缓存清理方法、服务器及计算机可读存储介质 |
WO2019148727A1 (zh) * | 2018-02-01 | 2019-08-08 | 平安科技(深圳)有限公司 | 电子装置、基于redis的异常预警方法及存储介质 |
CN110162384A (zh) * | 2019-04-19 | 2019-08-23 | 深圳壹账通智能科技有限公司 | 基于Redis分布式锁的超时时间动态调整方法及系统 |
CN111026807A (zh) * | 2019-11-25 | 2020-04-17 | 深圳壹账通智能科技有限公司 | 分布式锁的同步方法、装置、计算机设备及可读存储介质 |
US10635597B2 (en) | 2018-02-28 | 2020-04-28 | Citrix Systems, Inc. | Read caching with early refresh for eventually-consistent data store |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8854385B1 (en) * | 2013-10-03 | 2014-10-07 | Google Inc. | Merging rendering operations for graphics processing unit (GPU) performance |
CN105335102A (zh) * | 2015-10-10 | 2016-02-17 | 浪潮(北京)电子信息产业有限公司 | 一种缓存数据处理方法及装置 |
CN105760467A (zh) * | 2016-02-05 | 2016-07-13 | 浪潮(北京)电子信息产业有限公司 | 一种数据实时读写方法、装置、系统及nfs服务器 |
CN106547751A (zh) * | 2015-09-16 | 2017-03-29 | 阿里巴巴集团控股有限公司 | 缓存数据的更新方法及装置 |
CN106708993A (zh) * | 2016-12-16 | 2017-05-24 | 武汉中地数码科技有限公司 | 基于大数据技术的空间数据存储处理中间件框架实现方法 |
-
2017
- 2017-06-16 CN CN201710455738.0A patent/CN107133369A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8854385B1 (en) * | 2013-10-03 | 2014-10-07 | Google Inc. | Merging rendering operations for graphics processing unit (GPU) performance |
CN106547751A (zh) * | 2015-09-16 | 2017-03-29 | 阿里巴巴集团控股有限公司 | 缓存数据的更新方法及装置 |
CN105335102A (zh) * | 2015-10-10 | 2016-02-17 | 浪潮(北京)电子信息产业有限公司 | 一种缓存数据处理方法及装置 |
CN105760467A (zh) * | 2016-02-05 | 2016-07-13 | 浪潮(北京)电子信息产业有限公司 | 一种数据实时读写方法、装置、系统及nfs服务器 |
CN106708993A (zh) * | 2016-12-16 | 2017-05-24 | 武汉中地数码科技有限公司 | 基于大数据技术的空间数据存储处理中间件框架实现方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108280031A (zh) * | 2017-12-22 | 2018-07-13 | 努比亚技术有限公司 | redis缓存清理方法、服务器及计算机可读存储介质 |
WO2019148727A1 (zh) * | 2018-02-01 | 2019-08-08 | 平安科技(深圳)有限公司 | 电子装置、基于redis的异常预警方法及存储介质 |
US10635597B2 (en) | 2018-02-28 | 2020-04-28 | Citrix Systems, Inc. | Read caching with early refresh for eventually-consistent data store |
CN110162384A (zh) * | 2019-04-19 | 2019-08-23 | 深圳壹账通智能科技有限公司 | 基于Redis分布式锁的超时时间动态调整方法及系统 |
CN110162384B (zh) * | 2019-04-19 | 2023-04-28 | 深圳壹账通智能科技有限公司 | 基于Redis分布式锁的超时时间动态调整方法及系统 |
CN111026807A (zh) * | 2019-11-25 | 2020-04-17 | 深圳壹账通智能科技有限公司 | 分布式锁的同步方法、装置、计算机设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8949544B2 (en) | Bypassing a cache when handling memory requests | |
CN107133369A (zh) | 一种基于redis过期键的分布式读共享缓存老化方法 | |
CN101510219B (zh) | 文件数据访问方法、装置以及系统 | |
WO2017050014A1 (zh) | 一种数据存储处理方法和装置 | |
US9798655B2 (en) | Managing a cache on storage devices supporting compression | |
US8521962B2 (en) | Managing counter saturation in a filter | |
CN107729535B (zh) | 一种键值数据库内布隆过滤器的配置方法 | |
EP2437433B1 (en) | Memory access monitoring method and device | |
US20170116136A1 (en) | Reducing data i/o using in-memory data structures | |
US8868863B2 (en) | Method and apparatus for a frugal cloud file system | |
CN106599199A (zh) | 一种数据缓存与同步方法 | |
US20190370187A1 (en) | Cache Replacement Method, Apparatus, and System | |
US11113195B2 (en) | Method, device and computer program product for cache-based index mapping and data access | |
US20130290636A1 (en) | Managing memory | |
US11188467B2 (en) | Multi-level system memory with near memory capable of storing compressed cache lines | |
EP3115904B1 (en) | Method for managing a distributed cache | |
CN110750507A (zh) | 面向dfs的全局命名空间下的客户端持久缓存方法及系统 | |
CN105389135A (zh) | 一种固态盘内部缓存管理方法 | |
US9003130B2 (en) | Multi-core processing device with invalidation cache tags and methods | |
CN108959500A (zh) | 一种对象存储方法、装置、设备及计算机可读存储介质 | |
CN114817195A (zh) | 一种分布式存储缓存管理的方法、系统、存储介质及设备 | |
CN105915619B (zh) | 顾及访问热度的网络空间信息服务高性能内存缓存方法 | |
CN115080459A (zh) | 缓存管理方法及装置、计算机可读存储介质 | |
CN111488293B (zh) | 多核系统中数据访问者目录的访问方法及设备 | |
CN113495854A (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 |
Application publication date: 20170905 |
|
RJ01 | Rejection of invention patent application after publication |