CN110990354B - 私有客户端缓存数据刷新方法、装置、设备及介质 - Google Patents
私有客户端缓存数据刷新方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN110990354B CN110990354B CN201911121558.4A CN201911121558A CN110990354B CN 110990354 B CN110990354 B CN 110990354B CN 201911121558 A CN201911121558 A CN 201911121558A CN 110990354 B CN110990354 B CN 110990354B
- Authority
- CN
- China
- Prior art keywords
- refreshing
- page
- file
- data
- private 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000012544 monitoring process Methods 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000009191 jumping Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001052 transient effect Effects 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/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- 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
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)
- Information Transfer Between Computers (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本申请公开了私有客户端缓存数据刷新方法,该方法通过新增一个刷新线程来取代操作系统相应线程,在传统数据刷新方法中不进行数据刷新(page页不满足一个对象大小)时,若检测到文件查找刷新次数少,或者很久没有刷新时,触发数据刷新,可以保证所有的文件数据得到及时和均衡的刷新,间接实现了客户端缓存的Qos功能,同时该线程非封闭,可以根据实际使用进行相应调整,实现了数据刷新机制调整的灵活性。本申请还提供了一种私有客户端缓存数据刷新装置、设备及一种可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及分布式存储技术领域,特别涉及一种私有客户端缓存数据刷新方法、装置、设备及一种可读存储介质。
背景技术
每个文件在内核中都有一个radix tree(基数树结构,用于管理该文件映射的所有的page页(page页为Linux内核内存管理的基本单位,一个page大小为4KB),当page中的数据被修改了,但是尚未被保存到磁盘时,该page就会被标记为脏页。当向私有客户端中写入数据时,实际上是将数据写到了一系列的page页中。然后操作系统的后台刷新线程每隔一定时间会遍历所有的文件,并从文件对应的radix tree中查找待刷新的page页,当找到的page页中待刷新的内容满足一个对象大小(例如4MB)时,会将page页中的数据发送给后端存储系统。
而在后端存储系统中在一个刷新周期内刷新哪些文件是由操作系统决定的,私有客户端无法干预,且数据刷新机制固定,这就导致在一段时间内总是刷新同一个文件,而其它文件都在阻塞。反映到上层应用就是有的文件写的快,有的文件写的慢,影响文件刷新效率以及用户体验;而且操作系统的刷新线程有时间间隔,对于单流极限写的场景无法做到实时刷新,影响数据实时性。
发明内容
本申请的目的是提供一种私有客户端缓存数据刷新方法,该方法可以保证所有的文件数据得到及时和均衡的刷新;本申请的另一目的是提供一种私有客户端缓存数据刷新装置、设备及一种可读存储介质。
为解决上述技术问题,本申请提供一种私有客户端缓存数据刷新方法,包括:
私有客户端监测到数据写入时,确定写入的文件,并在所述文件的radix tree中查找待刷新的page页;
判断所述page页是否满足一个对象大小;
若所述page页不满足一个对象大小,确定所述文件的查找次数以及距离上次刷新的时间间隔;
当所述查找次数低于查找阈值,或,所述时间间隔大于间隔阈值时,将所述page页发送至后端存储,以进行数据刷新,并更新所述文件的查找次数以及刷新时间;
当所述查找次数低于查找阈值,且,所述时间间隔大于间隔阈值时,更新所述文件的查找次数。
可选地,所述私有客户端缓存数据刷新方法还包括:
判断所述page页是否连续;
若所述page页不连续,则跳转至确定所述文件的查找次数以及距离上次刷新的时间间隔的步骤。
可选地,所述私有客户端缓存数据刷新方法还包括:
若所述page页满足一个对象大小,且连续时,则执行将所述page页发送至后端存储的步骤。
可选地,所述私有客户端缓存数据刷新方法还包括:
若系统中调用了fsync接口,则执行将所述page页发送至后端存储的步骤。
可选地,所述私有客户端缓存数据刷新方法还包括:
当接收到cap消息时,则执行将所述page页发送至后端存储的步骤。
可选地,所述私有客户端缓存数据刷新方法还包括:
私有客户端监测到存在数据写入时,将预先设置的刷新标识调整为存在数据写入状态;
当检测到所述刷新标识为所述存在数据写入状态时,触发所述在文件的radixtree中查找待刷新的page页的步骤。
本申请公开一种私有客户端缓存数据刷新装置,基于私有客户端,包括:
数据确定单元,用于监测到数据写入时,确定写入的文件,并在所述文件的radixtree中查找待刷新的page页;
大小判断单元,用于判断所述page页是否满足一个对象大小;若所述page页不满足一个对象大小,触发刷新信息确定单元;
所述刷新信息确定单元,用于确定所述文件的查找次数以及距离上次刷新的时间间隔;
数据发送单元,用于当所述查找次数低于查找阈值,或,所述时间间隔大于间隔阈值时,将所述page页发送至后端存储,以进行数据刷新,并更新所述文件的查找次数以及刷新时间;
查找次数更新单元,用于当所述查找次数低于查找阈值,且,所述时间间隔大于间隔阈值时,更新所述文件的查找次数。
可选地,所述私有客户端缓存数据刷新装置还包括:连续判断单元;
所述连续判断单元用于判断所述page页是否连续;若所述page页不连续,触发所述刷新信息确定单元。
本申请公开一种私有客户端缓存数据刷新设备,包括:
存储器,用于存储程序;
处理器,用于执行所述程序时实现所述私有客户端缓存数据刷新方法的步骤。
本申请公开一种可读存储介质,其特征在于,所述可读存储介质上存储有程序,所述程序被处理器执行时实现所述私有客户端缓存数据刷新方法的步骤。
本申请所提供的私有客户端缓存数据刷新方法,包括:私有客户端监测到数据写入时,确定写入的文件,并在文件的radix tree中查找待刷新的page页;判断page页是否满足一个对象大小;若page页不满足一个对象大小,确定文件的查找次数以及距离上次刷新的时间间隔;当查找次数低于查找阈值,或,时间间隔大于间隔阈值时,将page页发送至后端存储,以进行数据刷新,并更新文件的查找次数以及刷新时间;当查找次数低于查找阈值,且,时间间隔大于间隔阈值时,更新文件的查找次数。
该方法通过新增一个刷新线程来取代操作系统相应线程,在传统数据刷新方法中不进行数据刷新(page页不满足一个对象大小)时,若检测到文件查找刷新次数少,或者很久没有刷新时,触发数据刷新,可以保证所有的文件数据得到及时和均衡的刷新,间接实现了客户端缓存的Qos(Quality of Service服务质量)功能,同时该线程非封闭,可以根据实际使用进行相应调整,实现了数据刷新机制调整的灵活性。
本申请还提供了一种私有客户端缓存数据刷新装置、设备及一种可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的私有客户端缓存数据刷新方法的流程图;
图2为本申请实施例提供的私有客户端缓存数据刷新执行过程示意图;
图3为本申请实施例提供的私有客户端缓存数据刷新装置的结构框图;
图4为本申请实施例提供的私有客户端缓存数据刷新设备的结构示意图。
具体实施方式
本申请的核心是提供一种私有客户端缓存数据刷新方法,该方法可以保证所有的文件数据得到及时和均衡的刷新;本申请的另一核心是提供一种私有客户端缓存数据刷新装置、设备及一种可读存储介质。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本实施例提供的私有客户端缓存数据刷新方法的流程图;该方法主要包括:
步骤s110、私有客户端监测到数据写入时,确定写入的文件,并在文件的radixtree中查找待刷新的page页;
私有客户端,也称为内核态客户端。
私有客户端监测数据是否写入的方式不做限定,可以在接收到数据写入执行后确定;另外,可以在私有客户端中添加一个监测触发线程,用于在监测到数据写入后触发后续的数据刷新线程,也可以在私有客户端监测到数据写入时进行标识设置,在数据刷新线程中添加标识监测线程,该线程用于根据标识触发数据刷新。优选地,可以按照以下步骤触发数据刷新:
私有客户端监测到存在数据写入时,将预先设置的刷新标识调整为存在数据写入状态;
当检测到刷新标识为存在数据写入状态时,触发在文件的radix tree中查找待刷新的page页的步骤。
在私有客户端中新增一个全局的刷新标识,当有数据写入时将其设置为存在数据写入状态(true),此时触发自定义的刷新线程开始查找page,启动数据刷新流程。该方式可以简单快速地实现数据刷新线程的调用,实现数据的快速刷新,缩短数据刷新时延。
本实施例中仅以上述触发过程为例进行介绍,其它触发方式在此不再赘述,均可参照本实施例的介绍。
步骤s120、判断page页是否满足一个对象大小;
其中,一个对象大小指传统数据刷新方法中的刷新阈值,一般指4MB。
步骤s130、若page页不满足一个对象大小,确定文件的查找次数以及距离上次刷新的时间间隔;
若page页满足一个对象大小,可以按照图1中所示直接触发相应的数据刷新,本实施例中对此不做限定。
查找次数指示该文件在一段时间内被刷新的次数,若查找次数少则指示历史刷新纪录中该文件可能经常得不到刷新;距离上次刷新的时间间隔指示刷新间隔,若时间间隔长指示该文件即使可能存在很多待刷新的数据但是可能很久触发刷新。
本实施例中以文件的查找次数以及距离上次刷新的时间间隔作为文件刷新的判断依据,在传统数据缓存中不会触发数据刷新的条件下(page页不满足一个对象大小),进一步引入其他数据刷新判断的依据,可以防止某些场景下文件的数据总是得不到刷新的情况发生。当然,在上述两种判断依据的基础上,还可以进一步根据实际数据刷新需要引入其他判断条件,本实施例中对此不做限定。
步骤s140、当查找次数低于查找阈值,或,时间间隔大于间隔阈值时,将page页发送至后端存储,以进行数据刷新,并更新文件的查找次数以及刷新时间;
需要说明的是,本实施例中对查找次数不低于查找阈值,且,时间间隔不大于间隔阈值的情况不做限定,可以如图1中所示不进行数据刷新。另外,对判断查找次数以及时间间隔的执行顺序不做限定,可以根据实际调用需要进行设置。
传统方法中在page页不满足一个对象大小时不启动数据刷新,从而会导致一系列的数据刷新不均衡的问题,影响用户体验,本实施例提供的数据刷新方法中,在查找次数低于查找阈值,或,时间间隔大于间隔阈值时,将page页强制刷到后端存储进行数据刷新,可以防止某些场景下文件的数据总是得不到刷新的情况,提升用户体验。
另外,由于本实施例提供的数据刷新线程设置于内核中,需要替换原有基于操作系统的刷新机制,用于将写入私有客户端的数据受控地刷到后端存储系统中,因此在补充判断依据外,还可以进一步添加便于数据刷新控制的原有流程,以满足用户用于数据刷新的需求,本实施例中对该些步骤的添加不做限定,比如可以在步骤s130之外,增加“若page页满足一个对象大小时,触发将page页发送至后端存储”的步骤。
优选地,可以进一步执行:若系统中调用了fsync接口,则执行将page页发送至后端存储的步骤。
当系统中调用了fsync接口时,为保证数据的正常响应,需要立即刷新脏数据。
优选地,也可以进一步执行:当接收到cap消息时,则执行将page页发送至后端存储的步骤。
当一个私有客户端写入了数据,但是尚未将其刷新到后端磁盘时,此时另一个客户端读取该数据,后端存储系统中的元数据服务器会向第一个客户端发送cap消息,为保证数据写入正常,需要立即刷新。
本实施例中仅以上述步骤的添加为例进行介绍,其它基于传统数据刷新方法的流程添加在此不再赘述。
步骤s150、当查找次数低于查找阈值,且,时间间隔大于间隔阈值时,更新文件的查找次数。
当查找次数低于查找阈值,且,时间间隔大于间隔阈值时,指示在临近时间内,或一段时间内已进行的足量的数据刷新,为减少每次接收到数据请求后立即进行数据刷新带来的磁盘压力,因此,本实施例中在述查找次数低于查找阈值,且,时间间隔大于间隔阈值时,仅更新文件的查找次数,而不触发将page页发送至后端存储的数据刷新步骤,以避免底层的大量写入对于磁盘的压力,同时可以降低磁盘带宽。
基于上述介绍,本实施例提供的私有客户端缓存数据刷新方法,通过新增一个刷新线程来取代操作系统相应线程,在传统数据刷新方法中不进行数据刷新(page页不满足一个对象大小)时,若检测到文件查找刷新次数少,或者很久没有刷新时,触发数据刷新,可以保证所有的文件数据得到及时和均衡的刷新,间接实现了客户端缓存的Qos功能,同时该线程非封闭,可以根据实际使用进行相应调整,实现了数据刷新机制调整的灵活性。
基于上述实施例,由于传统数据刷新方法中,在page页不连续时,即跳跃写时,由于操作系统每次只刷新很少的page,导致存储系统的底层对象文件产生大量的修改写,增加了磁盘的压力,降低了磁盘带宽。
为避免上述情况,优选地,可以进一步执行以下步骤:
步骤s160、判断page页是否连续;
步骤s170、若page页不连续,则跳转至确定文件的查找次数以及距离上次刷新的时间间隔的步骤。
需要说明的是,步骤s160与步骤s170可以在步骤s110之后,步骤s130之前的任意时间节点执行,本实施例中对此不做限定,为减少时间占用,可以与步骤s120并行执行。
本实施例中,在page页不连续时,仍旧判断该文件的朝赵次数以及距离上次刷新的时间间隔,给予了page页不连续时的数据堆叠机会以及数据刷新机会,既可以保证数据的均衡刷新,也可以缓解不连续写带来的磁盘压力。
另外,若同时判断page页满足一个对象以及其连续性,本实施例中对page页满足一个对象大小,且连续时的处理方式不做限定,为保证数据的正常快速刷新流程的顺序执行,可以在page页满足一个对象大小,且连续时,则执行将page页发送至后端存储的步骤。
本实施例中,由于采用了延时刷新机制(检测到数据写入时触发数据刷新),相当于在缓存层对写入数据做了聚合,在某些场景下(例如跳跃写和随机写)可以降低后端的磁盘压力,提高整体的写入带宽。
为加深对上述实施例中私有客户端缓存数据刷新执行过程的理解,本实施例中介绍一种整体实现流程示意,图2所示为本实施例提供的执行过程示意图,其它基于上述实施例的实现过程均可参照本实施例的介绍,在此不再赘述。
(1)首先在私有客户端中新增一个全局的刷新标识,当有数据写入时将其设置为true,此时自定义的刷新线程开始查找page。
(2)刷新线程循环从文件的radix tree中查找待刷新的page页,未找到时将刷新标识设置为false,等待下一次循环。
(3)找到page页时,分别判断page页是否连续和是否满足一个对象大小,都满足时将数据发送到后端存储,同时更新文件的刷新时间并重置查找次数;不满足时需要判断该文件的查找次数和两次刷新的时间间隔,如果查找次数或时间间隔有一个大于阈值(可配置),则将page页强制刷到后端存储,防止某些场景下文件的数据总是得不到刷新,然后更新文件的刷新时间并重置查找次数。如果都小于阈值,则累加文件的查找次数,然后继续处理其它文件,当前文件等待下次处理。
(4)另外,当系统中调用了fsync接口时,将page页强制刷到后端存储;
(5)当接收到cap消息时,将page页强制刷到后端存储。
本实施例提供的数据刷新流程,提供了对私有客户端中数据刷新的一整套机制,取代操作系统相应线程,可以保证所有的文件数据得到及时和均衡的刷新,解决了分布式存储领域私有客户端缓存刷新不均衡,以及在某些场景下刷新效率不高的问题。
请参考图3,图3为本实施例提供的私有客户端缓存数据刷新装置的结构框图;该装置可以包括:数据确定单元210、大小判断单元220、刷新信息确定单元230、数据发送单元240以及查找次数更新单元250。本实施例提供的私有客户端缓存数据刷新装置可与上述私有客户端缓存数据刷新方法相互对照。
其中,数据确定单元210主要用于监测到数据写入时,确定写入的文件,并在文件的radix tree中查找待刷新的page页;
大小判断单元220主要用于判断page页是否满足一个对象大小;若page页不满足一个对象大小,触发刷新信息确定单元;
刷新信息确定单元230主要用于确定文件的查找次数以及距离上次刷新的时间间隔;
数据发送单元240主要用于当查找次数低于查找阈值,或,时间间隔大于间隔阈值时,将page页发送至后端存储,以进行数据刷新,并更新文件的查找次数以及刷新时间;
查找次数更新单元250主要用于当查找次数低于查找阈值,且,时间间隔大于间隔阈值时,更新文件的查找次数。
可选地,私有客户端缓存数据刷新装置中可以进一步还包括:连续判断单元;
连续判断单元用于判断page页是否连续;若page页不连续,触发刷新信息确定单元。
本实施例提供的私有客户端缓存数据刷新装置可以保证所有的文件数据得到及时和均衡的刷新。
本实施例提供一种私有客户端缓存数据刷新设备,包括:存储器以及处理器。
其中,存储器用于存储程序;
处理器用于执行程序时实现如上述实施例介绍的私有客户端缓存数据刷新方法的步骤,具体可参照上述私有客户端缓存数据刷新方法的介绍。
请参考图4,为本实施例提供的私有客户端缓存数据刷新设备的结构示意图,该私有客户端缓存数据刷新设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在私有客户端缓存数据刷新设备301上执行存储介质330中的一系列指令操作。
私有客户端缓存数据刷新设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
上面图1所描述的私有客户端缓存数据刷新方法中的步骤可以由本实施例介绍的私有客户端缓存数据刷新设备的结构实现。
本实施例公开一种可读存储介质,其上存储有程序,程序被处理器执行时实现如上述实施例介绍的私有客户端缓存数据刷新方法的步骤,具体可参照上述实施例中对私有客户端缓存数据刷新方法的介绍。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的私有客户端缓存数据刷新方法、装置、设备及可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种私有客户端缓存数据刷新方法,其特征在于,包括:
私有客户端监测到数据写入时,确定写入的文件,并在所述文件的radix tree中查找待刷新的page页;
判断所述page页是否满足一个对象大小;
若所述page页不满足一个对象大小,确定所述文件的查找次数以及距离上次刷新的时间间隔;
当所述查找次数低于查找阈值,或,所述时间间隔大于间隔阈值时,将所述page页发送至后端存储,以进行数据刷新,并更新所述文件的查找次数以及刷新时间;
当所述查找次数低于查找阈值,且,所述时间间隔大于间隔阈值时,更新所述文件的查找次数。
2.如权利要求1所述的私有客户端缓存数据刷新方法,其特征在于,还包括:
判断所述page页是否连续;
若所述page页不连续,则跳转至确定所述文件的查找次数以及距离上次刷新的时间间隔的步骤。
3.如权利要求2所述的私有客户端缓存数据刷新方法,其特征在于,还包括:
若所述page页满足一个对象大小,且连续时,则执行将所述page页发送至后端存储的步骤。
4.如权利要求1所述的私有客户端缓存数据刷新方法,其特征在于,还包括:
若系统中调用了fsync接口,则执行将所述page页发送至后端存储的步骤。
5.如权利要求1所述的私有客户端缓存数据刷新方法,其特征在于,还包括:
当接收到cap消息时,则执行将所述page页发送至后端存储的步骤。
6.如权利要求1所述的私有客户端缓存数据刷新方法,其特征在于,还包括:
私有客户端监测到存在数据写入时,将预先设置的刷新标识调整为存在数据写入状态;
当检测到所述刷新标识为所述存在数据写入状态时,进入至所述在所述文件的radixtree中查找待刷新的page页的步骤。
7.一种私有客户端缓存数据刷新装置,其特征在于,基于私有客户端,包括:
数据确定单元,用于监测到数据写入时,确定写入的文件,并在所述文件的radix tree中查找待刷新的page页;
大小判断单元,用于判断所述page页是否满足一个对象大小;若所述page页不满足一个对象大小,触发刷新信息确定单元;
所述刷新信息确定单元,用于确定所述文件的查找次数以及距离上次刷新的时间间隔;
数据发送单元,用于当所述查找次数低于查找阈值,或,所述时间间隔大于间隔阈值时,将所述page页发送至后端存储,以进行数据刷新,并更新所述文件的查找次数以及刷新时间;
查找次数更新单元,用于当所述查找次数低于查找阈值,且,所述时间间隔大于间隔阈值时,更新所述文件的查找次数。
8.如权利要求7所述的私有客户端缓存数据刷新装置,其特征在于,还包括:连续判断单元;
所述连续判断单元用于判断所述page页是否连续;若所述page页不连续,触发所述刷新信息确定单元。
9.一种私有客户端缓存数据刷新设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述程序时实现如权利要求1至6任一项所述私有客户端缓存数据刷新方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如权利要求1至6任一项所述私有客户端缓存数据刷新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911121558.4A CN110990354B (zh) | 2019-11-15 | 2019-11-15 | 私有客户端缓存数据刷新方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911121558.4A CN110990354B (zh) | 2019-11-15 | 2019-11-15 | 私有客户端缓存数据刷新方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110990354A CN110990354A (zh) | 2020-04-10 |
CN110990354B true CN110990354B (zh) | 2022-06-10 |
Family
ID=70084396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911121558.4A Active CN110990354B (zh) | 2019-11-15 | 2019-11-15 | 私有客户端缓存数据刷新方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110990354B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107197050A (zh) * | 2017-07-27 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种分布式存储系统中文件写入的方法及系统 |
CN107479931A (zh) * | 2017-08-18 | 2017-12-15 | 郑州云海信息技术有限公司 | 一种linux系统应用层刷新BIOS的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8539160B2 (en) * | 2009-09-10 | 2013-09-17 | Red Hat, Inc. | Asynchronous cache refresh for systems with a heavy load |
-
2019
- 2019-11-15 CN CN201911121558.4A patent/CN110990354B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107197050A (zh) * | 2017-07-27 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种分布式存储系统中文件写入的方法及系统 |
CN107479931A (zh) * | 2017-08-18 | 2017-12-15 | 郑州云海信息技术有限公司 | 一种linux系统应用层刷新BIOS的方法 |
Non-Patent Citations (2)
Title |
---|
"A charge recycle refresh for Gb-scale DRAMs in file applications";Kawahara等;《Symposium 1993 on VLSI Circuits》;20020806;第1-2页 * |
"基于页面优先级策略的文件回写机制研究";吴纪锋等;《小型微型计算机系统》;20140131;第30-33页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110990354A (zh) | 2020-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9606703B2 (en) | Techniques for detecting inactive browser windows | |
CN110764708A (zh) | 一种数据读取方法、装置、设备及存储介质 | |
EP2437168A2 (en) | Method and device for balancing load of multiprocessor system | |
US9081623B1 (en) | Service resource allocation | |
US20130097402A1 (en) | Data prefetching method for distributed hash table dht storage system, node, and system | |
CN108874324B (zh) | 一种访问请求处理方法、装置、设备及可读存储介质 | |
US10771358B2 (en) | Data acquisition device, data acquisition method and storage medium | |
US10055134B2 (en) | Data compression method and storage system | |
CN109582649B (zh) | 一种元数据存储方法、装置、设备及可读存储介质 | |
CN111708642B (zh) | Vr系统中处理器性能优化方法、装置及vr设备 | |
CN111176569A (zh) | 一种流量配额方法、装置、系统和设备及可读存储介质 | |
CN110930291A (zh) | 一种gpu显存管理控制方法及相关装置 | |
CN113835624A (zh) | 基于异构内存的数据迁移方法及装置 | |
CN110045924B (zh) | 分级存储方法、装置、电子设备及计算机可读存储介质 | |
CN110990354B (zh) | 私有客户端缓存数据刷新方法、装置、设备及介质 | |
CN111177079A (zh) | 网络文件系统数据读取方法、装置、设备、介质 | |
CN111143053A (zh) | 一种定时任务的调度方法、服务器以及存储装置 | |
CN110688360A (zh) | 分布式文件系统存储管理方法、装置、设备及存储介质 | |
CN106357557A (zh) | 一种消息处理方法及装置 | |
CN114461323A (zh) | 一种卡顿处理方法、装置、电子设备及存储介质 | |
CN109992213B (zh) | 数据删除方法、系统、装置及计算机可读存储介质 | |
CN109582244B (zh) | 一种元数据落盘方法、装置、终端及计算机可读存储介质 | |
CN113923485A (zh) | 一种调整码率的方法、装置、及计算机可读存储介质 | |
CN107589917B (zh) | 一种分布式存储系统及方法 | |
CN111104220A (zh) | 基于Arm架构的服务器配置方法、系统及相关设备 |
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 |