CN113485642A - 数据缓存方法及装置 - Google Patents
数据缓存方法及装置 Download PDFInfo
- Publication number
- CN113485642A CN113485642A CN202110745250.8A CN202110745250A CN113485642A CN 113485642 A CN113485642 A CN 113485642A CN 202110745250 A CN202110745250 A CN 202110745250A CN 113485642 A CN113485642 A CN 113485642A
- Authority
- CN
- China
- Prior art keywords
- data
- storage area
- storage
- hot
- read
- 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 46
- 238000013508 migration Methods 0.000 claims abstract description 37
- 230000005012 migration Effects 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据缓存方法及装置,属于数据处理领域。在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
Description
技术领域
本申请属于数据处理领域,具体涉及一种数据缓存方法及装置。
背景技术
目前电子设备的动态随机存取存储器(Dynamic Random Access Memory,DRAM)的内存空间相对有限,当电子设备执行高负载任务时,经常会出现内存空间不够用问题,从而导致任务出现延迟卡顿,极大地影响了用户体验。
而现有技术中针对于内存空间不足而导致卡顿的问题,主要是通过扩大内存空间,是更多的应用程序能够驻留在后台,避免应用程序所需要的内存空间不足,导致延迟卡顿的发生,但是扩大内存空间会导致成本的增加,并且前期内存较小的电子设备仍然会面临延迟卡顿的问题。
因此如何更好的避免因为DRAM的内存空间有限而导致的卡顿,已经成为业界亟待解决的问题。
发明内容
本申请实施例的目的是提供一种数据缓存方法及装置,能够解决因为DRAM的内存空间有限而导致的卡顿的问题。
第一方面,本申请实施例提供了一种数据缓存方法,该方法包括:
在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;
基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
第二方面,本申请实施例提供了一种数据缓存装置,包括:
第一确定模块,用于在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;
第一迁移模块,用于基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
在本申请实施例中,将DRAM中存储的经常被访问的热数据存储在热存储区中,将DRAM中存储的不经常被访问的冷数据存储在冷存储区中,并且在热存储区中存储空间不足时,会热数据中访问频率较低的数据迁移到冷存储区,在冷存储中存储空间不足时,会将冷数据中访问频率交底的数据进一步迁移处理,从而保证电子设备的DRAM具备足够的存储空间,有效避免因DRAM的内存空间有限而导致的卡顿。
附图说明
图1为本申请实施例提供的数据缓存方法流程示意图;
图2为本申请实施例中所描述的数据缓存逻辑层次图;
图3为本申请实施例提供的数据处理流程示意图;
图4为本申请实施例提供的数据处理执行示意图;
图5为本申请实施例提供的数据缓存装置结构示意图;
图6为本申请实施例提供的电子设备结构示意图;
图7为实现本申请实施例的一种电子设备的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的一种数据缓存方法及装置进行详细地说明。
图1为本申请实施例提供的数据缓存方法流程示意图,如图1所示,包括:
步骤110,在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;
具体地,本申请中所描述的冷存储区具体是电子设备的DRAM中用于保存不经常被访问数据的区域,即DRAM中存储冷数据的区域。
本申请中的DRAM中还包括用于保存经常被访问数据的区域,即存储热数据的热存储区。
图2为本申请实施例中所描述的数据缓存逻辑层次图,如图2所示,动态随机存取存储器主要作用为数据缓存,根据动态随机存取存储器中数据缓冲池缓存的数据被访问的频率不同,将这些数据划分为“冷热”数据,热数据存放到热存储区中,冷数据存放到冷存储区中进行压缩,在冷存储区中的存储空间不足时,冷存储区中的数据也可以迁移到快闪存储器中。
本申请中所描述的电子设备具体可以是智能手机、平板电脑或者掌上电脑等设备。
本申请中所描述冷存储区的剩余存储空间具体可以是指,冷存储区中尚未存储数据的存储空间。
本申请中所描述的第一预设阈值具体可以是指预先设定的阈值,冷存储区的剩余存储空间小于第一预设阈值,并且还有新的数据写入时,则意味着其存储的冷数据需要进行数据迁移处理。
通过预先设定第一预设阈值来触发数据迁移,而不是在完全没有剩余存储空间后再进行数据迁移,是为使得写入与数据迁移可以并发运行,提高时间效率。
例如,第一预设阈值可以是500M,也就是说冷存储区的剩余存储空间不足500M时,并且还有新的数据写入时,则可能需要对其中存储的冷数据进行数据迁移。
本申请中所描述的各个存储块的访问信息,具体可以是指在预设时间段内各个存储块的访问次数信息,然后将预设时间内的访问次数信息进行排序,将访问次数最少的存储块作为第一目标存储块,也就是需要进行数据迁移处理的存储块。
步骤120,基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
具体地,本申请中所描述的读写标识信息具体可以包括读标识和写标识;两类,而根据存储数据对应的读写标识信息可以判断该存储数据是新写入的数据,还是从快闪存储器中备份的数据。
本申请中的数据迁移处理,具体可以是直接将该存储数据进行数据丢弃,即删除该存储数据,也可以是将该存储数据写入到快闪存储器中。
若该存储数据是快闪存储器中备份的数据,则说明快闪存储器中仍然保留有该数据,此时不需要重写将其写入快闪存储器,能够有效提高数据迁移的速度。
在本申请实施例中,将DRAM中存储的经常被访问的热数据存储在热存储区中,将DRAM中存储的不经常被访问的冷数据存储在冷存储区中,并且在热存储区中存储空间不足时,会热数据中访问频率较低的数据迁移到冷存储区,在冷存储中存储空间不足时,会将冷数据中访问频率交底的数据进一步迁移处理,从而保证电子设备的DRAM具备足够的存储空间,有效避免因DRAM的内存空间有限而导致的卡顿。
可选地,所述基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理,包括:
在所述存储数据对应的读写标识信息为读标识的情况下,将所述存储数据丢弃;
或,在所述存储数据对应的读写标识信息为写标识的情况下,将所述存储数据迁移到快闪存储器中。
具体地,本申请中所描述的存储数据对应的读写标识信息为写标识,则说明该存储数据属于新写入到DRAM中的数据,也并未备份到快闪存储器中,因此为了保证数据的完整性,不能直接丢弃该数据,而是需要将该数据存储到快闪存储器中。
本申请中所描述的存储数据对应的读写标识信息为写标识,则说明该存储数据是从快闪存储器中读取的,也就是说快闪存储器中存在该存储数据的备份,而此时若还是将该存储数据再次写入快闪存储器,则会导致不必要的重复及写入,增加数据迁移时间,降低系统效率。
而针对于写标识的存储数据,可以直接将其丢弃,这样能够有效减少写回快闪存储器的数据流,降低写回时间,有效提高系统效率。
更具体地,第一目标存储块中可能会存在多项存储数据,此时可以逐项检索第一目标存储块中每一项存储数据对应的读写标识信息,若读写标识信息为读标识r,则直接将该存储数据丢弃,若读写标识信息为读标识w,将该存储数据迁移到快闪存储器中。
在本申请实施例中,通过存储数据对应的读写标识信息,判断该存储数据是新写入到DRAM中的数据,还是从快闪存储器中写回的数据,针对于快闪存储器中写回的数据直接丢弃,能够有效降低写回时间,提高系统效率,同时降低减少写回快闪存储器中的数据量,延长快闪存储器的使用寿命。
可选地,所述方法还包括:
在热存储区和所述冷存储区均未检索到请求数据的情况下,在快闪存储器中检索所述请求数据;
在所述快闪存储器检索到所述请求数据的情况下,将所述请求数据备份到所述热存储区,并将所述请求数据所在的第二目标存储块备份到所述冷存储区。
具体地,在本申请实施例中,在DRAM收到系统传来的数据读取请求时,首先在热存储区中检索该请求数据,若在热存储区中检索到该请求数据,则直接返回该请求数据,若在热存储区未检索到该请求数据,则继续在冷存储区中进行检索,仍在冷存储区中仍未检索到该请求数据,则说明DRAM中未存储有该请求数据,其可能存储在快闪存储器中,因此在快闪存储器中检索该请求数据。
若在快闪存储器中检索到该请求数据,则返回该请求数据,并且由于该请求数据被访问了,其还可能再次被访问,为了提高热存储去访问命中几率,会将该请求数据备份到热存储区。
并且根据局部性原理,该求情数据映射项周围的映射项极有可能被再次访问,因此将该请求数据所在的第二目标存储块中的所有存储数据都备份到冷存储区中。
在本申请实施例中,通过将快闪存储器中被访问的数据备份到DRAM的热存储区,能够有效的保证热存储区数据的命中概率,降低到快闪存储器中检索数据的时间开销。
可选地,所述方法还包括:
将所述冷存储区中的第一数据迁移到热存储区中;所述第一数据是指在预设时间间隔内,被连续访问的存储数据。
具体地,本申请中所描述的预设时间间隔,可以根据实际情况预先设定,例如以三分钟为一个时间间隔,则第一存储数据的第一次访问时间和第二次访问时间相隔小于三分钟。
在本申请实施例中,若存储数据在预设时间间隔内,被连续访问,则说明其后续也有很高可能被继续调用,为了保证数据在热存储区的命中率,因此将第一存储数据迁移到热存储区中。
更具体地,在进行数据读写操作时,若该请求数据在热存储区未命中,然后在冷存储区中命中时,则访问该数据并返回该请求数据,同时记录此次在冷存储区中的访问时间,在过一段时间后该数据在冷存储区中再次被访问时。计算两次访问的时间间隔,若该时间间隔在预设时间间隔内,则将该存储数据迁移到热存储区内中,
在本申请实施例中,针对于冷存储区中在预设时间间隔内被连续访问的存储数据,可以通过将其迁移到热存储区中,以保证热存储区的数据命中率,提升数据处理时间。
可选地,所述冷存储区写入新数据之前,还包括:
在热存储区的剩余存储空间小于第二预设阈值,且所述热存储区写入请求的情况下,基于所述热存储区中各项数据的访问信息,确定所述新数据。
具体地,由于数据检索顺序,是先在热存储区中进行查找,若热存储区中未命中则会继续去冷存储区和快闪存储器中查找,而去下层查找过程会增加查找时间,因此在本申请实施例中会尽量将可能会被调用的数据优先迁移到热存储区,尽量提高热存储区的数据命中率,从而降低数据查找时间。
本申请中所描述的第二预设阈值具体可以是指预先设定的阈值,热存储区的剩余存储空间小于第二预设阈值,并且还有新的数据写入时,则意味着其存储的热数据需要进行数据迁移处理。
本申请中所描述热存储区的剩余存储空间具体可以是指,热存储区中尚未存储数据的存储空间。
在本申请实施例中,根据热存储区中各项热数据被访问的次数,来对各项数据进行排序,将访问次数较少的热数据作为将要迁移到冷存储区的新数据,从而有效提高热存储区的数据命中率,减少数据处理时间。
图3为本申请实施例提供的数据处理流程示意图,如图3所示,步骤301,接收用户命令请求;步骤302,判断该用户命令请求是读请求还是写请求,若为读请求,则进入步骤303,首先在热存储区中检索该请求数据,若在热存储区中命中,则直接返回该请求数据,若未命中,则进入步骤304,在冷存储区中检索,若仍未命中,进入步骤305,在快闪存储器中检索请求数据所在的数据库;步骤306,将请求数据备份到热存储区中,并将热存储区所在区块中的其它数据逐项备份到冷存储区中;步骤307,将该区块中所有的数据标识信息修改为读标识;最终输出读请求数据。
若用户命令请求是写请求,则进入步骤308,写请求数据写入热存储区,该存储数据的数据标识信息为写数据;步骤309,判断热存储区的剩余空间是否低于第一预设阈值,若剩余空间低于第一预设阈值,则请求数据写入完成;若剩余空间低于第一预设阈值,则进入步骤310,将热存储区中的冷数据迁移到冷存储区中;判断冷存储区中剩余空间是否低于第二预设阈值,若剩余空间不低于第二预设阈值,则请求数据写入完成;若剩余空间低于第二预设阈值,则进入步骤311,将冷存储区中数据块按照访问次数排序,选择排序访问次数最小的数据块进行数据迁移;步骤312,逐项检查数据块中所有数据的读写标识信息,判断该数据块中各项数据的读写标识信息是读标识还是写标识;若为读标识,则进入步骤313,丢弃该项数据,若为写标识,则进入步骤314,将该数据写入快闪存储器,将该数据的读写标识信息置为空;直至完成该数据块中所有数据的检查,完成请求数据的写入。
图4为本申请实施例提供的数据处理执行示意图,如图4所示,写数据41,当执行写请求时,写数据会首先存储到热存储区中。当写数据刚进入热存储区时,读写标识信息为写标识w(方便后续可能的由于数据迁移到冷存储区后,再次向快闪存储器中迁移数据时的鉴别,减少再次写入快闪存储器的数据量)。
热存储区数据迁移42:为热存储区分配一个阈值,当热存储区中的剩余空间小于该阈值时(为准备新写入数据预留空间,起缓冲作用,使得写入与数据迁移并发运行,提高时间效率),若再有数据传入热存储区时,则需要在写入新数据的同时启动热存储区的数据迁移策略:通过合适的替代算法对热存储区中的数据进行迁移操作,将最久没被访问的数据迁移到冷存储区中的合适位置,然后采用高效压缩算法对迁移进来的数据进行压缩,以节省空间占用。
冷存储区的数据迁移43:为冷存储区的存储空间分配一个阈值,当冷存储区中的剩余空间小于该阈值时(为准备新写入数据预留空间,起缓冲作用,使得写入与数据迁移并发运行,提高时间效率),若有数据传入冷存储区,则需要在写入新数据的同时启动冷存储区的数据迁移策略:通过对冷存储区中的block在最近一段时间内的访问次数排序,将访问次数最少的block作为牺牲项,逐项检索该block中的所有数据的读写标识信息,若读写标识信息为w,则将该数据写回到快闪存储器中的合适位置,然后将该数据读写标识信息置为空;若读写标识信息为r,则直接将该数据丢弃,以减少写回快闪存储器的数据量,降低写回时间,提高系统效率。
冷存储区中的活跃数据迁移到热存储区44:当上层进行数据读写操作时,若该请求数据在热存储区中未命中,然后在冷存储区中命中时,则向上层系统返回需要的数据,同时记录此次在冷存储区中的访问时间,当过一段时间后该数据在冷存储区中再次命中时,计算该数据两次访问的时间间隔,若该时间间隔小于一个特定的阈值时,将该数据转移到热存储区中的相应位置。
读数据45:当系统传来读请求时,系统首先在热存储区中检索该请求数据,若在热存储区中命中则直接返回其请求数据,若未命中,则到冷存储区中检索,若仍未命中则到快闪存储器中检索。在快闪存储器中找到该请求数据所在的block,将该block中所有数据读写标识信息置为读标识r,然后将该数据备份到热存储区的合适位置并返回上层该请求数据,该block中的其他数据逐一备份到冷存储区的合适位置(依据局部性原理,该映射项周围的映射项极有可能被再次访问,所以一起备份到数据缓冲池中)。
需要说明的是,本申请实施例提供的数据缓存方法,执行主体可以为数据缓存装置,或者该数据缓存装置中的用于执行数据缓存的方法的控制模块。本申请实施例中以数据缓存装置执行数据缓存的方法为例,说明本申请实施例提供的数据缓存的装置。
图5为本申请实施例提供的数据缓存装置结构示意图,如图5所示,包括:第一确定模块510和第一迁移模块520;其中,第一确定模块510用于在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;其中,第一迁移模块520用于基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
可选地,所述第一迁移模块,具体用于在所述存储数据对应的读写标识信息为读标识的情况下,将所述存储数据丢弃;
或,在所述存储数据对应的读写标识信息为写标识的情况下,将所述存储数据迁移到快闪存储器中。
可选地,所述装置还包括备份模块;
所述备份模块用于在热存储区和所述冷存储区均未检索到请求数据的情况下,在快闪存储器中检索所述请求数据;
在所述快闪存储器检索到所述请求数据的情况下,将所述请求数据备份到所述热存储区,并将所述请求数据所在的第二目标存储块备份到所述冷存储区。
可选地,所述装置还包括:第二迁移模块;
所述第二迁移模块用于将所述冷存储区中的第一数据迁移到热存储区中;所述第一数据是指在预设时间间隔内,被连续访问的存储数据。
可选地,所述装置还包括第二确定模块;
所述第二确定模块用于在热存储区的剩余存储空间小于第二预设阈值,且所述热存储区写入请求的情况下,基于所述热存储区中各项数据的访问信息,确定所述新数据。
在本申请实施例中,将DRAM中存储的经常被访问的热数据存储在热存储区中,将DRAM中存储的不经常被访问的冷数据存储在冷存储区中,并且在热存储区中存储空间不足时,会热数据中访问频率较低的数据迁移到冷存储区,在冷存储中存储空间不足时,会将冷数据中访问频率交底的数据进一步迁移处理,从而保证电子设备的DRAM具备足够的存储空间,有效避免因DRAM的内存空间有限而导致的卡顿。
本申请实施例中的数据缓存装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personaldigital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(NetworkAttached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的数据缓存装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的数据缓存装置能够实现图1至图4的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,图6为本申请实施例提供的电子设备结构示意图;如图6所示,本申请实施例还提供一种电子设备600,包括处理器601,存储器602,存储在存储器602上并可在所述处理器601上运行的程序或指令,该程序或指令被处理器601执行时实现上述数据缓存方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
图7为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备700包括但不限于:射频单元701、网络模块702、音频输出单元703、输入单元704、传感器705、显示单元706、用户输入单元707、接口单元708、存储器709、以及处理器710等部件。
本领域技术人员可以理解,电子设备700还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器710逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图7中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
其中,处理器710用于在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;
处理器710用于基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
其中,处理器710用于在所述存储数据对应的读写标识信息为读标识的情况下,将所述存储数据丢弃;
或,在所述存储数据对应的读写标识信息为写标识的情况下,将所述存储数据迁移到快闪存储器中。
其中,处理器710用于在热存储区和所述冷存储区均未检索到请求数据的情况下,在快闪存储器中检索所述请求数据;
在所述快闪存储器检索到所述请求数据的情况下,将所述请求数据备份到所述热存储区,并将所述请求数据所在的第二目标存储块备份到所述冷存储区。
其中,处理器710用于将所述冷存储区中的第一数据迁移到热存储区中;所述第一数据是指在预设时间间隔内,被连续访问的存储数据。
其中,处理器710用于在热存储区的剩余存储空间小于第二预设阈值,且所述热存储区写入请求的情况下,基于所述热存储区中各项数据的访问信息,确定所述新数据。
在本申请实施例中,将DRAM中存储的经常被访问的热数据存储在热存储区中,将DRAM中存储的不经常被访问的冷数据存储在冷存储区中,并且在热存储区中存储空间不足时,会热数据中访问频率较低的数据迁移到冷存储区,在冷存储中存储空间不足时,会将冷数据中访问频率较低的数据进一步迁移处理,从而保证电子设备的DRAM具备足够的存储空间,有效避免因DRAM的内存空间有限而导致的卡顿。
应理解的是,本申请实施例中,输入单元704可以包括图形处理器(GraphicsProcessing Unit,GPU)7041和麦克风7042,图形处理器7041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元706可包括显示面板7061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板7061。用户输入单元707包括触控面板7071以及其他输入设备7072。触控面板7071,也称为触摸屏。触控面板7071可包括触摸检测装置和触摸控制器两个部分。其他输入设备7072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。存储器709可用于存储软件程序以及各种数据,包括但不限于应用程序和操作系统。处理器710可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器710中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述数据缓存方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述数据缓存方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (10)
1.一种数据缓存方法,其特征在于,包括:
在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;
基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
2.根据权利要求1所述的数据缓存方法,其特征在于,所述基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理,包括:
在所述存储数据对应的读写标识信息为读标识的情况下,将所述存储数据丢弃;
或,在所述存储数据对应的读写标识信息为写标识的情况下,将所述存储数据迁移到快闪存储器中。
3.根据权利要求1所述的数据缓存方法,其特征在于,所述方法还包括:
在热存储区和所述冷存储区均未检索到请求数据的情况下,在快闪存储器中检索所述请求数据;
在所述快闪存储器检索到所述请求数据的情况下,将所述请求数据备份到所述热存储区,并将所述请求数据所在的第二目标存储块备份到所述冷存储区。
4.根据权利要求1所述的数据缓存方法,其特征在于,所述方法还包括:
将所述冷存储区中的第一数据迁移到热存储区中;所述第一数据是指在预设时间间隔内被连续访问的存储数据。
5.根据权利要求1所述的数据缓存方法,其特征在于,所述冷存储区写入新数据之前,还包括:
在热存储区的剩余存储空间小于第二预设阈值,且所述热存储区写入请求的情况下,基于所述热存储区中各项数据的访问信息,确定所述新数据。
6.一种数据缓存装置,其特征在于,包括:
第一确定模块,用于在冷存储区的剩余存储空间小于第一预设阈值,且所述冷存储区写入新数据的情况下,基于所述冷存储区中各个存储块的访问信息,确定第一目标存储块;
第一迁移模块,用于基于所述第一目标存储块中存储数据对应的读写标识信息,对所述存储数据进行数据迁移处理。
7.根据权利要求6所述的数据缓存装置,其特征在于,所述第一迁移模块,具体用于在所述存储数据对应的读写标识信息为读标识的情况下,将所述存储数据丢弃;
或,在所述存储数据对应的读写标识信息为写标识的情况下,将所述存储数据迁移到快闪存储器中。
8.根据权利要求6所述的数据缓存装置,其特征在于,所述装置还包括备份模块;
所述备份模块用于在热存储区和所述冷存储区均未检索到请求数据的情况下,在快闪存储器中检索所述请求数据;
在所述快闪存储器检索到所述请求数据的情况下,将所述请求数据备份到所述热存储区,并将所述请求数据所在的第二目标存储块备份到所述冷存储区。
9.根据权利要求6所述的数据缓存装置,其特征在于,所述装置还包括:第二迁移模块;
所述第二迁移模块用于将所述冷存储区中的第一数据迁移到热存储区中;所述第一数据是指在预设时间间隔内,被连续访问的存储数据。
10.根据权利要求6所述的数据缓存装置,其特征在于,所述装置还包括第二确定模块;
所述第二确定模块用于在热存储区的剩余存储空间小于第二预设阈值,且所述热存储区写入请求的情况下,基于所述热存储区中各项数据的访问信息,确定所述新数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110745250.8A CN113485642A (zh) | 2021-07-01 | 2021-07-01 | 数据缓存方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110745250.8A CN113485642A (zh) | 2021-07-01 | 2021-07-01 | 数据缓存方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113485642A true CN113485642A (zh) | 2021-10-08 |
Family
ID=77939250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110745250.8A Pending CN113485642A (zh) | 2021-07-01 | 2021-07-01 | 数据缓存方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113485642A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490749A (zh) * | 2021-12-28 | 2022-05-13 | 珠海大横琴科技发展有限公司 | 一种资源访问的方法和装置 |
CN118466853A (zh) * | 2024-07-09 | 2024-08-09 | 成都佰维存储科技有限公司 | 存储器数据管理方法、装置、可读存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120117297A1 (en) * | 2010-11-08 | 2012-05-10 | Mark Ish | Storage tiering with minimal use of dram memory for header overhead |
CN107391398A (zh) * | 2016-05-16 | 2017-11-24 | 中国科学院微电子研究所 | 一种闪存缓存区的管理方法及系统 |
CN110442309A (zh) * | 2019-07-24 | 2019-11-12 | 广东紫晶信息存储技术股份有限公司 | 一种基于光存储的冷热数据交换方法及系统 |
CN111159066A (zh) * | 2020-01-07 | 2020-05-15 | 杭州电子科技大学 | 一种动态调整的缓存数据管理及淘汰方法 |
-
2021
- 2021-07-01 CN CN202110745250.8A patent/CN113485642A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120117297A1 (en) * | 2010-11-08 | 2012-05-10 | Mark Ish | Storage tiering with minimal use of dram memory for header overhead |
CN107391398A (zh) * | 2016-05-16 | 2017-11-24 | 中国科学院微电子研究所 | 一种闪存缓存区的管理方法及系统 |
CN110442309A (zh) * | 2019-07-24 | 2019-11-12 | 广东紫晶信息存储技术股份有限公司 | 一种基于光存储的冷热数据交换方法及系统 |
CN111159066A (zh) * | 2020-01-07 | 2020-05-15 | 杭州电子科技大学 | 一种动态调整的缓存数据管理及淘汰方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490749A (zh) * | 2021-12-28 | 2022-05-13 | 珠海大横琴科技发展有限公司 | 一种资源访问的方法和装置 |
CN118466853A (zh) * | 2024-07-09 | 2024-08-09 | 成都佰维存储科技有限公司 | 存储器数据管理方法、装置、可读存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11822805B2 (en) | Method and terminal for reclaiming memory after freezing program | |
US10216629B2 (en) | Log-structured storage for data access | |
US11194710B2 (en) | Garbage collection—automatic data placement | |
CN108268219B (zh) | 一种处理io请求的方法及装置 | |
US9779027B2 (en) | Apparatus, system and method for managing a level-two cache of a storage appliance | |
US20150039837A1 (en) | System and method for tiered caching and storage allocation | |
CN109815425B (zh) | 缓存数据处理方法、装置、计算机设备和存储介质 | |
US20170168959A1 (en) | Managing and organizing web browser cache | |
CN104102695B (zh) | 智能设备启动过程的数据处理方法及智能设备 | |
CN110945486B (zh) | 一种存储碎片管理方法及终端 | |
CN107888687B (zh) | 一种基于分布式存储系统的代理客户端存储加速方法及系统 | |
CN110989937A (zh) | 一种数据存储方法、装置、设备及计算机可读存储介质 | |
CN110554999A (zh) | 基于日志式文件系统和闪存设备的冷热属性识别和分离方法、装置以及相关产品 | |
WO2018082616A1 (zh) | 一种基于dram的存储缓存方法和智能终端 | |
CN113485642A (zh) | 数据缓存方法及装置 | |
WO2019128542A1 (zh) | 应用处理方法、电子设备、计算机可读存储介质 | |
CN115470157A (zh) | 预取方法、电子设备、存储介质及程序产品 | |
CN109597707A (zh) | 克隆卷数据拷贝方法、装置及计算机可读存储介质 | |
US9851925B2 (en) | Data allocation control apparatus and data allocation control method | |
CN115455058A (zh) | 缓存数据的处理方法、装置、计算机设备及存储介质 | |
CN117742593A (zh) | Ssd缓存回刷处理方法、系统、设备及储存介质 | |
KR20220154612A (ko) | 파일 속성에 따른 캐시 관리 방법 및 파일 속성에 따라 동작하는 캐시 관리 장치 | |
CN116225319A (zh) | 一种垃圾数据回收时减少数据迁移的方法及装置 | |
CN115495020A (zh) | 文件处理方法、装置、电子设备和可读存储介质 | |
CN115827959A (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 |