CN103514106A - 一种数据缓存方法 - Google Patents
一种数据缓存方法 Download PDFInfo
- Publication number
- CN103514106A CN103514106A CN201210209630.0A CN201210209630A CN103514106A CN 103514106 A CN103514106 A CN 103514106A CN 201210209630 A CN201210209630 A CN 201210209630A CN 103514106 A CN103514106 A CN 103514106A
- Authority
- CN
- China
- Prior art keywords
- data
- zone
- hot
- cold
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种数据缓存方法。该方法包括:将放入缓存的数据进行序列化处理;将缓存分为两个区域,称为冷区和热区,冷区和热区都采用双向链表结构;将数据插入到缓存时,先将数据放到冷区;当缓存中的数据被命中时,如果该数据是冷区数据,判断该数据是否已命中了预设次数,是则将其转移到热区的尾部,否则将其转移到冷区链表的首部,如果该数据是热区数据,将其转移热区链表的首部。本发明的技术方案有效提高了对热数据的缓存效率。
Description
技术领域
本发明涉及网络通信技术领域,特别涉及一种数据缓存方法。
背景技术
随着即时通讯产品用户数量的增长和用户活跃度的提升,即时通讯产品的好友数量成几何倍数的增长,系统对数据访问的压力必然越来越大,而其中的对数据库大量并发随机访问通常是系统的瓶颈,因为用户获取其所有好友的相关数据是一种很随机的访问,数据库对磁盘的随机IO读取能力受到磁盘本身随机读写能力的限制。
因此只有想办法确定热数据,并缓存尽可能多的热数据(热数据是指被访问次数较多的数据,也可以称为活跃数据,相对地,非活跃数据称为冷数据),才可以减少业务对数据库的访问。
发明内容
有鉴于此,本发明提供了一种数据缓存方法,该方法提高了对热数据的缓存效率。
为达到上述目的,本发明的技术方案是这样实现的:
本发明公开了一种数据缓存方法,该方法包括:
将放入缓存的数据进行序列化处理;
在缓存中划分出两个区域,称为冷区和热区,冷区和热区都采用双向链表结构;
将数据插入到缓存时,先将数据放到冷区;
当缓存中的数据被命中时,如果该数据是冷区数据,判断该数据是否已命中了预设次数,是则将其转移到热区的尾部,否则将其转移到冷区链表的首部,如果该数据是热区数据,将其转移热区链表的首部。
该方法进一步包括:
当冷区满时,先判断热区是否有一定的空闲区域,是则将从冷区链表首部起不大于该空闲区域的一定量的数据转移到热区的尾部,否则删除从冷区链表尾部起的一定量的数据;
当热区满时,先判断冷区是否有一定的空闲区域,是则将从热区链表尾部起不大于该空闲区域的一定量的数据转移到冷区的首部,否则删除从热区链表尾部起的一定量的数据。
在上述方法中,热区/冷区存储数据的引用,数据的实际缓存内容存储到一个字典中;
则上述删除从热区/冷区链表尾部起的一定量的数据具体包括:
删除该数据在热区/冷区中的引用,并删除该数据在所述字典中的对应内容。
所述将放入缓存的数据的进行序列化处理包括:
对于字符串数据,如果都是ASCII字符,每个字符占一个字节,如果包含除ASCII以外的字符,则用UNICODE编码;
对于长整型数据,如果长度不够8个字节,则保留其实际数字需要的字节数。
所述将放入缓存的数据的进行序列化处理还包括:将缓存对象的元数据全部剔除,只保留对象字段的编号。
该方法进一步包括:
每隔设定时间将热区中的数据持久化到磁盘中,然后将热区数据的更新情况记录到日志文件中;
当缓存数据丢失时,用所述磁盘中的数据恢复热区数据,并读取日志文件内容,从恢复的热区数据中删除日志文件中所记录的发生更新的数据。
所述将热区中的数据持久化到磁盘中,将热区数据的更新情况记录到日志文件中包括:
将热区数据的引用读到一个热区数据列表中;
将热区数据列表中的引用所对应的数据写到磁盘文件中,将这期间的热区数据的更新情况记录在第一哈希表中;
将第一哈希表中内容写到日志文件中,并将热区数据的后续更新情况记录到日志文件。
所述将热区数据列表中的引用所对应的数据写到磁盘文件包括:将热区数据列表中的引用所对应的数据先写到第二磁盘文件中,写入完成后将第二磁盘文件和第一磁盘文件的文件名互换;
当缓存数据丢失时,用当前第一磁盘文件中的数据恢复热区数据。
所述将热区数据的引用读到一个热区数据列表中包括:对热区加锁,然后将热区数据的引用读到一个热区数据列表中;
该方法进一步包括:在将热区数据的引用读到一个热区数据列表期间,用一个标记使得对热区数据的读访问返回空数据,而对热区数据的写访问则将所访问的数据的标识记录到第二哈希表中;
在将热区数据列表中的引用所对应的数据写到磁盘文件中之前,遍历第二哈希表,将其中所记录的数据从热区数据列表中删除。
由上述可见,本发明这种,将放入缓存的数据进行序列化处理;将缓存分为两个区域,称为冷区和热区,冷区和热区都采用双向链表结构;将数据插入到缓存时,先将数据放到冷区;当缓存中的数据被命中时,如果是冷区数据,判断该数据是否已命中了预设次数,是则将其转移到热区的尾部,否则将其转移到冷区链表的首部,如果是热区数据,将其转移热区链表的首部的技术方案,由于将放入缓存的数据进行了序列化处理,减少了数据对缓存的占用,提高了缓存的存储能力,并且实现了冷热数据的分离,避免了由于大量的随机访问使得热数据被淘汰。
附图说明
图1是本发明实施例中的应用访问数据的流程示意图;
图2是本发明实施例中的双向链表结构的示意图;
图3是本发明实施例中的持久化的一个流程示意图;
图4是本发明实施例中服务重启时热区数据的恢复流程图。
具体实施方式
本发明的核心思想是:将放入缓存的数据进行序列化处理,减少占用的内存,以尽可能多地缓存数据,并采用一种新的缓存管理方法实现冷热数据的分离,避免由于大量的随机访问使得热数据被淘汰。
此外,数据缓存后,由于服务异常启动后,内存缓存丢失,大量的业务访问会“穿透”缓存直接访问数据库。
对此,本发明中进一步定期将缓存的热数据持久化到磁盘形成一个dmp文件,然后将缓存的更新情况记录到日志(log)文件中。如果服务重启,则用dmp文件恢复缓存中的热区数据,并读取log文件(记录了持久化后对缓存的修改),将log文件中对应的修改记录从恢复后的缓存中删除,即可保证缓存的正确性。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
1、将缓存数据序列化
将缓存数据按字段序列化到字节数据中,具体有如下特点:
对于字符串(string)数据,如果都是ASCII字符,每个字符占一个字节,如果包含除ASCII以外的字符,如中文等特殊字符,则用UNICODE编码,而不是UTF-8编码,因为UNICODE对中文编码是2字节,UTF-8通常是3字节;
对于长整型(long)数据,如果长度不够8个字节,则保留其实际数字需要的字节数。
这样即可高效地完成序列化,将缓存对象的元数据全部剔除,只保留对象字段的编号,占1-2字节,并且序列化后的字节数据会相当小。
图1是本发明实施例中的应用访问数据的流程示意图。如图1所示,当应用从缓存获取不到数据时访问数据库获取数据,同时该数据被序列化(缓存可以通过调用外部工具生成的缓存类对数据进行序列化)后插入到缓存中,当应用再次获取同一数据时,从缓存中获取该数据的序列化缓存,反序列化后返回给应用。
2、新的缓存管理方法
本发明中给出了一种近似的最近最少使用(LRU,Least Recently Used)算法,因为绝对的LRU算法实现代价太大,不适合在实际环境使用。本发明中的近似LRU算法的为:
在缓存中划分出两个区域,称为冷区和热区(例如冷区占总缓存的1/3,热区占总缓存的2/3),冷区和热区都采用双向链表结构,包括多个节点,图2是本发明实施例中的双向链表结构的示意图;将数据插入到缓存时,先将数据放到冷区;当缓存中的数据被命中时,如果是冷区数据,判断该数据是否已命中了预设次数(如3次),是则将其转移到热区的尾部,否则将其转移到冷区链表的首部(具体来说将该数据从原冷区链表位置删除,将其转移到冷区链表的首部,相应修改各个相关数据中的链表指针),如果是热区数据,将其转移到热区链表的首部(具体来说将数据从原冷区链表位置删除,将其转移到热区链表的首部,相应修改各个相关数据中的链表指针);
当冷区满时,先判断热区是否有一定的空闲区域(例如500个空闲节点),是则将从冷区链表首部起不大于该空闲区域的一定量(例如300个)的数据转移到热区的尾部,否则删除从冷区链表尾部的一定量(例如300个)的数据;
当热区满时,先判断冷区是否有一定的空闲区域,是则将从热区链表尾部起不大于该空闲区域的一定量的数据转移到冷区的首部,否则删除从热区链表尾部起的一定量的数据。
这种做法,使得经常被访问的数据被放到热区或冷区靠近首部的位置,不易被淘汰。
在本发明的一个实施例中,热区/冷区只存储数据的引用,数据的实际缓存内容存储到一个字典中,即数据的实际内容存储在缓存中的一个字典中;因此,删除从热区/冷区链表尾部起的一定量的数据时,除了删除该数据在热区/冷区中的引用,还要删除其在所述字典中的对应内容。
3、持久化方法
每隔设定时间(例如1小时)将热区中的数据持久化到磁盘中,然后将热区数据的更新情况记录到日志文件中;当缓存数据丢失时,用磁盘中的数据恢复热区数据,并读取日志文件内容,从恢复的热区数据中删除日志文件中所记录的发生更新的数据。
其中,将热区中的数据持久化到磁盘中,将热区数据的更新情况记录到日志文件中具体为:
将热区数据的引用读到一个热区数据列表中;
将热区数据列表中的引用所对应的数据写到磁盘文件中,将这期间的热区数据的更新情况记录在第一哈希表中;
将第一哈希表中内容写到日志文件中,并将热区数据的后续更新情况记录到日志文件。
将热区数据列表中的引用所对应的数据写到磁盘文件具体为:将热区数据列表中的引用所对应的数据先写到第二磁盘文件中,写入完成后将第二磁盘文件和第一磁盘文件的文件名互换,即将第二磁盘文件重命名为第一磁盘文件,而将原第一磁盘文件重命名为第二磁盘文件;
当缓存数据丢失时,用当前第一磁盘文件中的数据恢复热区数据。
将热区数据的引用读到一个热区数据列表中包括:对热区加锁,然后将热区数据的引用读到一个热区数据列表中;
进一步地,在将热区数据的引用读到一个热区数据列表期间,用一个标记使得对热区数据的读访问返回空数据,而对热区数据的写访问则将所访问的数据的标识记录到第二哈希表中;在将热区数据列表中的引用所对应的数据写到磁盘文件中之前,遍历第二哈希表,将其中所记录的数据从热区数据列表中删除。
图3是本发明实施例中的持久化的一个流程示意图。本例中以缓存的数据为即时通讯用户的数据,热区和冷区只缓存数据的引用(这里为用户的Id),数据的实际内容缓存到一个字典中为例,下面参考图3对本发明中的持久化方案举例说明:
定期将缓存的热区数据持久化到磁盘,持久化的过程包括如下步骤:
S11,对缓存中的热区数据引用加锁;
S12,将加锁的热区数据引用读到热区数据列表HotList中,在该过程中,用一个标记使得对热区数据的读访问返回空数据,而对热区数据的写访问则将对应的用户Id记录到第二Hash表中。将加锁的热区数据引用读到热区数据列表的这个过程非常快,是毫秒级别的,但是为了防止期间有数据读取或修改可能会锁争用(毫秒级别也可能产生数十个业务访问),用一个标记,使得这些读的业务直接返回空数据,即没有查到缓存,写的访问则将对应的用户Id记录到内存的一个第二Hash表中(保证Id不重复,以减少后续操作)。
S13,遍历第二Hash表,并将其中所记录用户Id从HotList中删除。
S14,将HotList中的用户Id所指示的字典中的数据写到磁盘文件UserCacheBak.dmp,并将期间对缓存的修改记录到第一Hash表中。
S15,写完UserCacheBak.dmp文件后,将其重命名为UserCache.dmp,而将原UserCache.dmp重命名为UserCacheBak.dmp。这个UserCache.dmp即作为最终的持久化文件。因为可能会遇到写UserCacheBak.dmp文件时,服务维护性重启或异常重启的极少数情况,这样缓存文件就会不完整,所以要待其写好后再以重命名文件的方式形成最终的持久化文件。
S16,重写日志文件,即先清空日志文件,然后把第一Hash表中记录的(写UserCacheBak.dmp过程中产生的修改记录的)用户Id写到日志文件,之后后台线程会记录相应修改的用户Id到日志文件,这样可以使日志保持最小化的情况下,确保缓存的正确性。
服务重启时,热区数据的恢复如图4所示。
图4是本发明实施例中服务重启时热区数据的恢复流程图。如图4所示,包括如下步骤:
S21,在磁盘中检查是否存在UserCache.dmp文件;
S22,若存在,则使用UserCache.dmp恢复热区数据;
S23,读取日志文件,将日志文件中记录的用户Id对应的修改记录从恢复的热区数据中删除。可用UserCache.dmp将上一次Dump时缓存的热区数据恢复,并读取日志文件(记录了持久化后对缓存的修改),把其中记录的用户Id对应的修改记录从恢复后的缓存删除,即可保证缓存的正确性。当服务重启时,所有的热区数据基本都会恢复,即可保证大量的业务访问能够命中缓存。
综上所述,本发明的技术方案提高了缓存的数量及命中率,有效降低了MySQL数据库一半以上的CPU占用;并且实现了缓存的持久化功能,可以保证在缓存服务在异常重启后缓存中的热区数据不会丢失,从而不会使得大量业务访问直接“穿透”缓存到数据库
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种数据缓存方法,其特征在于,该方法包括:
将放入缓存的数据进行序列化处理;
在缓存中划分出两个区域,称为冷区和热区,冷区和热区都采用双向链表结构;
将数据插入到缓存时,先将数据放到冷区;
当缓存中的数据被命中时,如果该数据是冷区数据,判断该数据是否已命中了预设次数,是则将其转移到热区的尾部,否则将其转移到冷区链表的首部,如果该数据是热区数据,将其转移热区链表的首部。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
当冷区满时,先判断热区是否有一定的空闲区域,是则将从冷区链表首部起不大于该空闲区域的一定量的数据转移到热区的尾部,否则删除从冷区链表尾部起的一定量的数据;
当热区满时,先判断冷区是否有一定的空闲区域,是则将从热区链表尾部起不大于该空闲区域的一定量的数据转移到冷区的首部,否则删除从热区链表尾部起的一定量的数据。
3.根据权利要求2所述的方法,其特征在于,
热区/冷区存储数据的引用,数据的实际缓存内容存储到一个字典中;
则上述删除从热区/冷区链表尾部起的一定量的数据具体包括:
删除该数据在热区/冷区中的引用,并删除该数据在所述字典中的对应内容。
4.根据权利要求1所述的方法,其特征在于,所述将放入缓存的数据的进行序列化处理包括:
对于字符串数据,如果都是ASCII字符,每个字符占一个字节,如果包含除ASCII以外的字符,则用UNICODE编码;
对于长整型数据,如果长度不够8个字节,则保留其实际数字需要的字节数。
5.根据权利要求1至4中任一项所述的方法,其特征在于,该方法进一步包括:
每隔设定时间将热区中的数据持久化到磁盘中,然后将热区数据的更新情况记录到日志文件中;
当缓存数据丢失时,用所述磁盘中的数据恢复热区数据,并读取日志文件内容,从恢复的热区数据中删除日志文件中所记录的发生更新的数据。
6.根据权利要求5所述的方法,其特征在于,所述将热区中的数据持久化到磁盘中,将热区数据的更新情况记录到日志文件中包括:
将热区数据的引用读到一个热区数据列表中;
将热区数据列表中的引用所对应的数据写到磁盘文件中,将这期间的热区数据的更新情况记录在第一哈希表中;
将第一哈希表中内容写到日志文件中,并将热区数据的后续更新情况记录到日志文件。
7.根据权利要求6所述的方法,其特征在于,
所述将热区数据列表中的引用所对应的数据写到磁盘文件包括:将热区数据列表中的引用所对应的数据先写到第二磁盘文件中,写入完成后将第二磁盘文件和第一磁盘文件的文件名互换;
当缓存数据丢失时,用当前第一磁盘文件中的数据恢复热区数据。
8.根据权利要求6所述的方法,其特征在于,所述将热区数据的引用读到一个热区数据列表中包括:对热区加锁,然后将热区数据的引用读到一个热区数据列表中;
该方法进一步包括:在将热区数据的引用读到一个热区数据列表期间,用一个标记使得对热区数据的读访问返回空数据,而对热区数据的写访问则将所访问的数据的标识记录到第二哈希表中;
在将热区数据列表中的引用所对应的数据写到磁盘文件中之前,遍历第二哈希表,将其中所记录的数据从热区数据列表中删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210209630.0A CN103514106B (zh) | 2012-06-20 | 2012-06-20 | 一种数据缓存方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210209630.0A CN103514106B (zh) | 2012-06-20 | 2012-06-20 | 一种数据缓存方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103514106A true CN103514106A (zh) | 2014-01-15 |
CN103514106B CN103514106B (zh) | 2016-06-22 |
Family
ID=49896860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210209630.0A Active CN103514106B (zh) | 2012-06-20 | 2012-06-20 | 一种数据缓存方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103514106B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636500A (zh) * | 2014-10-21 | 2015-05-20 | 北京国双科技有限公司 | 一种查询热数据的方法及装置 |
CN105095353A (zh) * | 2015-06-19 | 2015-11-25 | 中国科学院计算技术研究所 | 一种并行网络文件系统中预读小文件后忙等的系统及方法 |
WO2016141735A1 (zh) * | 2015-03-11 | 2016-09-15 | 华为技术有限公司 | 缓存数据的确定方法及装置 |
CN106201924A (zh) * | 2016-07-19 | 2016-12-07 | 深圳欧德蒙科技有限公司 | 一种数据缓存方法、装置及系统 |
CN107124466A (zh) * | 2017-05-23 | 2017-09-01 | 努比亚技术有限公司 | 一种防止缓存穿透方法及装置、计算机可读存储介质 |
CN107305475A (zh) * | 2016-04-22 | 2017-10-31 | 中国科学院微电子研究所 | 一种flashcache混合存储系统的缓存调度方法及系统 |
CN107577618A (zh) * | 2017-09-13 | 2018-01-12 | 武大吉奥信息技术有限公司 | 一种三路均衡缓存淘汰方法及装置 |
CN107741962A (zh) * | 2017-09-26 | 2018-02-27 | 平安科技(深圳)有限公司 | 数据缓存方法及服务器 |
CN107870729A (zh) * | 2016-09-23 | 2018-04-03 | 伊姆西Ip控股有限责任公司 | 一种用于缓存数据的方法、设备和系统 |
CN108459972A (zh) * | 2016-12-12 | 2018-08-28 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多通道固态硬盘的高效缓存管理设计方法 |
CN108647304A (zh) * | 2018-05-09 | 2018-10-12 | 中国平安人寿保险股份有限公司 | 报表显示系统、方法、计算机设备及存储介质 |
CN108829343A (zh) * | 2018-05-10 | 2018-11-16 | 中国科学院软件研究所 | 一种基于人工智能的缓存优化方法 |
CN108920096A (zh) * | 2018-06-06 | 2018-11-30 | 深圳忆联信息系统有限公司 | 一种ssd的数据储存方法、装置、计算机设备及存储介质 |
CN109344095A (zh) * | 2018-09-18 | 2019-02-15 | 深圳市德名利电子有限公司 | 一种闪存热数据识别方法 |
CN109582233A (zh) * | 2018-11-21 | 2019-04-05 | 网宿科技股份有限公司 | 一种数据的缓存方法和装置 |
CN110555118A (zh) * | 2018-03-28 | 2019-12-10 | 武汉斗鱼网络科技有限公司 | 一种加载图片的方法及装置 |
CN111159066A (zh) * | 2020-01-07 | 2020-05-15 | 杭州电子科技大学 | 一种动态调整的缓存数据管理及淘汰方法 |
CN111190834A (zh) * | 2019-12-24 | 2020-05-22 | 华东师范大学 | 一种非对称读延迟感知的数据放置方法 |
CN111736753A (zh) * | 2019-03-25 | 2020-10-02 | 贵州白山云科技股份有限公司 | 一种持久缓存方法、装置和计算机设备 |
CN111880735A (zh) * | 2020-07-24 | 2020-11-03 | 北京浪潮数据技术有限公司 | 一种存储系统中数据迁移方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101968795A (zh) * | 2010-09-03 | 2011-02-09 | 清华大学 | 一种数据块长度可变的文件系统缓存方法 |
CN102207830A (zh) * | 2011-05-27 | 2011-10-05 | 杭州宏杉科技有限公司 | 一种缓存动态分配管理方法及装置 |
CN102231139A (zh) * | 2011-06-29 | 2011-11-02 | 内蒙古大学 | 基于子组的自适应高速缓冲存储器块替换策略 |
-
2012
- 2012-06-20 CN CN201210209630.0A patent/CN103514106B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101968795A (zh) * | 2010-09-03 | 2011-02-09 | 清华大学 | 一种数据块长度可变的文件系统缓存方法 |
CN102207830A (zh) * | 2011-05-27 | 2011-10-05 | 杭州宏杉科技有限公司 | 一种缓存动态分配管理方法及装置 |
CN102231139A (zh) * | 2011-06-29 | 2011-11-02 | 内蒙古大学 | 基于子组的自适应高速缓冲存储器块替换策略 |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636500B (zh) * | 2014-10-21 | 2018-10-16 | 北京国双科技有限公司 | 一种查询热数据的方法及装置 |
CN104636500A (zh) * | 2014-10-21 | 2015-05-20 | 北京国双科技有限公司 | 一种查询热数据的方法及装置 |
WO2016141735A1 (zh) * | 2015-03-11 | 2016-09-15 | 华为技术有限公司 | 缓存数据的确定方法及装置 |
CN105095353A (zh) * | 2015-06-19 | 2015-11-25 | 中国科学院计算技术研究所 | 一种并行网络文件系统中预读小文件后忙等的系统及方法 |
CN105095353B (zh) * | 2015-06-19 | 2018-12-04 | 中国科学院计算技术研究所 | 一种并行网络文件系统中预读小文件后忙等的系统及方法 |
CN107305475A (zh) * | 2016-04-22 | 2017-10-31 | 中国科学院微电子研究所 | 一种flashcache混合存储系统的缓存调度方法及系统 |
CN106201924A (zh) * | 2016-07-19 | 2016-12-07 | 深圳欧德蒙科技有限公司 | 一种数据缓存方法、装置及系统 |
US10860497B2 (en) | 2016-09-23 | 2020-12-08 | EMC IP Holding Company, LLC | Method, apparatus, and system for caching data |
CN107870729A (zh) * | 2016-09-23 | 2018-04-03 | 伊姆西Ip控股有限责任公司 | 一种用于缓存数据的方法、设备和系统 |
CN107870729B (zh) * | 2016-09-23 | 2020-11-20 | 伊姆西Ip控股有限责任公司 | 一种用于缓存数据的方法、设备和系统 |
CN108459972A (zh) * | 2016-12-12 | 2018-08-28 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多通道固态硬盘的高效缓存管理设计方法 |
CN108459972B (zh) * | 2016-12-12 | 2022-03-15 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多通道固态硬盘的高效缓存管理设计方法 |
CN107124466B (zh) * | 2017-05-23 | 2020-12-29 | 努比亚技术有限公司 | 一种防止缓存穿透方法及装置、计算机可读存储介质 |
CN107124466A (zh) * | 2017-05-23 | 2017-09-01 | 努比亚技术有限公司 | 一种防止缓存穿透方法及装置、计算机可读存储介质 |
CN107577618A (zh) * | 2017-09-13 | 2018-01-12 | 武大吉奥信息技术有限公司 | 一种三路均衡缓存淘汰方法及装置 |
CN107741962A (zh) * | 2017-09-26 | 2018-02-27 | 平安科技(深圳)有限公司 | 数据缓存方法及服务器 |
CN110555118A (zh) * | 2018-03-28 | 2019-12-10 | 武汉斗鱼网络科技有限公司 | 一种加载图片的方法及装置 |
CN110555118B (zh) * | 2018-03-28 | 2022-08-16 | 武汉斗鱼网络科技有限公司 | 一种加载图片的方法及装置 |
CN108647304A (zh) * | 2018-05-09 | 2018-10-12 | 中国平安人寿保险股份有限公司 | 报表显示系统、方法、计算机设备及存储介质 |
CN108647304B (zh) * | 2018-05-09 | 2023-11-21 | 中国平安人寿保险股份有限公司 | 报表显示系统、方法、计算机设备及存储介质 |
CN108829343B (zh) * | 2018-05-10 | 2020-08-04 | 中国科学院软件研究所 | 一种基于人工智能的缓存优化方法 |
CN108829343A (zh) * | 2018-05-10 | 2018-11-16 | 中国科学院软件研究所 | 一种基于人工智能的缓存优化方法 |
CN108920096A (zh) * | 2018-06-06 | 2018-11-30 | 深圳忆联信息系统有限公司 | 一种ssd的数据储存方法、装置、计算机设备及存储介质 |
CN109344095A (zh) * | 2018-09-18 | 2019-02-15 | 深圳市德名利电子有限公司 | 一种闪存热数据识别方法 |
CN109344095B (zh) * | 2018-09-18 | 2021-05-04 | 深圳市德明利技术股份有限公司 | 一种闪存热数据识别方法 |
CN109582233A (zh) * | 2018-11-21 | 2019-04-05 | 网宿科技股份有限公司 | 一种数据的缓存方法和装置 |
CN111736753A (zh) * | 2019-03-25 | 2020-10-02 | 贵州白山云科技股份有限公司 | 一种持久缓存方法、装置和计算机设备 |
CN111190834A (zh) * | 2019-12-24 | 2020-05-22 | 华东师范大学 | 一种非对称读延迟感知的数据放置方法 |
CN111190834B (zh) * | 2019-12-24 | 2023-03-31 | 华东师范大学 | 一种非对称读延迟感知的数据放置方法 |
CN111159066A (zh) * | 2020-01-07 | 2020-05-15 | 杭州电子科技大学 | 一种动态调整的缓存数据管理及淘汰方法 |
CN111880735A (zh) * | 2020-07-24 | 2020-11-03 | 北京浪潮数据技术有限公司 | 一种存储系统中数据迁移方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103514106B (zh) | 2016-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103514106A (zh) | 一种数据缓存方法 | |
US8949191B2 (en) | Using versioning to back up multiple versions of a stored object | |
KR101926674B1 (ko) | 로그 레코드 관리 | |
CN102331993B (zh) | 分布式数据库的数据迁移方法和分布式数据库迁移系统 | |
CN101707633B (zh) | 一种基于文件系统的消息中间件持久消息的存储方法 | |
CN103294710B (zh) | 一种数据存取方法和装置 | |
CN106708427A (zh) | 一种适用于键值对数据的存储方法 | |
US20140359233A1 (en) | Read-write control method for memory, and corresponding memory and server | |
CN106202173B (zh) | 一种文件仓库存储的智能排重方法及系统 | |
CN111694863B (zh) | 一种数据库缓存的刷新方法、系统和装置 | |
KR20150132472A (ko) | 인 플레이스 스냅샷들 | |
CN102035881A (zh) | 一种云端存储系统的数据缓存方法 | |
US10997153B2 (en) | Transaction encoding and transaction persistence according to type of persistent storage | |
CN102696010A (zh) | 用于将数据高速缓存在固态存储设备上的装置、系统和方法 | |
CN103838830A (zh) | 一种HBase数据库的数据管理方法及系统 | |
CN101176093A (zh) | 管理数据删除的方法和装置 | |
CN101459559B (zh) | 一种对监控用户配置信息进行存储及管理的方法与系统 | |
CN111198856B (zh) | 文件管理方法、装置、计算机设备和存储介质 | |
CN112653730A (zh) | 一种用户态网络文件存储方法和系统 | |
US11347711B2 (en) | Sparse infrastructure for tracking ad-hoc operation timestamps | |
CN103595797A (zh) | 一种分布式存储系统中的缓存方法 | |
CN113703873A (zh) | 客户端的冷启动方法、装置、介质、设备和程序产品 | |
CN111241090B (zh) | 存储系统中管理数据索引的方法和装置 | |
CN105988899A (zh) | 实现数据缓存的方法和装置 | |
CN105930520A (zh) | 一种基于集群文件系统的缓存保护方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: Room 818, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080 Patentee after: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd. Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building 6 storey block A Room 601 Patentee before: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd. |