CN109800185A - 一种数据存储***中的数据缓存方法 - Google Patents

一种数据存储***中的数据缓存方法 Download PDF

Info

Publication number
CN109800185A
CN109800185A CN201811638676.8A CN201811638676A CN109800185A CN 109800185 A CN109800185 A CN 109800185A CN 201811638676 A CN201811638676 A CN 201811638676A CN 109800185 A CN109800185 A CN 109800185A
Authority
CN
China
Prior art keywords
data
write
buffer area
read
file
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
Application number
CN201811638676.8A
Other languages
English (en)
Other versions
CN109800185B (zh
Inventor
李小勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Xiaoyun Mdt Infotech Ltd
Original Assignee
Shanghai Xiaoyun Mdt Infotech Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Xiaoyun Mdt Infotech Ltd filed Critical Shanghai Xiaoyun Mdt Infotech Ltd
Priority to CN201811638676.8A priority Critical patent/CN109800185B/zh
Publication of CN109800185A publication Critical patent/CN109800185A/zh
Application granted granted Critical
Publication of CN109800185B publication Critical patent/CN109800185B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供一种数据存储***中的数据缓存方法,涉及数据存储领域,对读缓存和写缓存分开管理,读缓存区分配大比例的内存,写缓存区分配小比例的内存,读缓存和写缓存的索引,以<inode,offset,fsid>或<inode,fsid>为索引主键,对写缓存的容量大小和缓存时间进行精确的控制。本发明能够兼容数据存储***的性能和可靠性,减小数据存储***的结构复杂度,提高重负载写入时的性能。

Description

一种数据存储***中的数据缓存方法
技术领域
本发明涉及数据存储领域,尤其涉及一种数据存储***中的数据缓存方法。
背景技术
缓存是数据存储***中提升读写性能的重要途经,将经常访问的数据保存于数据存储***的内存中,当访问数据时,如果已经位于内存中,则不需要访问硬盘,由于内存读写性能高于机械硬盘,从而提高数据读写的性能。在现有的数据存储***中,普遍根据数据访问的频率缓存数据。例如,在Linux操作***中广泛使用的EXT4、XFS文件***,windows平台使用的NTFS文件***,都是综合考虑数据访问的频率和时间,将最近一段时间内访问过,且访问频率最高的数据缓存到内存中。将数据缓存到内存中的方式虽然提高数据读写性能,但是会影响数据的可靠性。由于写入的数据保存于内存中,如果发生硬件故障导致存储设备重启或者断电时,则保存在内存中的数据则会丢失。
为了解决断电后内存数据丢失问题,一些存储***中加入了大容量电池,当发生断电时由存储设备自带的电池提供电源,把缓存中的数据写入到硬盘中,从而避免数据丢失。但是这种方法提高了产品的成本,电池需要定期检查和更新,也增加了运维的复杂度。另外一些存储***,包括Netapp的WAFL文件***[NetApp(File System Design for anNFS File Server Appliance(WAFL)]、开源软件分布式存储***Ceph[Ceph:Reliable,scalable,and high-performance distributed storage],需要使用特殊的存储器件,例如高性能的PCIE接口固态盘(SSD:Solid State Disk)作为写缓存设备。当写入数据时,首先写入到SSD盘,然后以后台运行方式,定期将SSD的数据写入到硬盘中。此方法可以提高存储***的随机写性能,但增加了存储***的成本;由于所有数据都要首先写入SSD,会影响SSD的使用寿命;在持续大流量写入时,会降低写入性能。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种数据存储***中的数据缓存方法,读缓存和写缓存分开管理,将内存主要作用于读缓存,仅使用少量内存作用于写缓存;或者不使用写缓存,将写数据立即写入硬盘,因此能够兼容数据存储***的性能和可靠性,减小数据存储***的结构复杂度,提高重负载写入时的性能。
本发明提供一种数据存储***中的数据缓存方法,读缓存和写缓存分开管理,读缓存区分配大比例的内存,写缓存区分配小比例的内存,读缓存和写缓存的索引,以<inode,offset,fsid>或<inode,fsid>为索引主键,对写缓存的容量大小和缓存时间进行精确的控制。
进一步的,当读缓存和写缓存的文件为小文件时,将文件缓存到内存中,缓存的索引主键为<inode,fsid>;当读缓存和写缓存的文件为大文件时,将文件划分为固定大小的数据块缓存到内存中,缓存的牵引主键为<inode,offset,fsid>,其中,inode为文件的索引节点号,offset为读写偏移量,fsid为文件***id。
进一步的,读缓存步骤具体如下:
步骤1:应用程序调用open()函数来打开文件,输入参数为文件名,读写模式;
步骤2:应用程序调用read()函数来执行读操作,输入参数为文件描述符fd,接收数据的内存地址和长度;
步骤3:根据文件描述符fd获取文件inode,文件***fsid;
步骤4:根据<inode,fsid>查找读缓存区;
步骤5:如果命中,则将读缓存区中的数据拷贝到接收内存中,将读缓存区的访问次数加1;结束返回;
步骤6:如果未命中,则根据<inode,fsid>查找写缓存区;
步骤7:如果写缓存区命中,则将写缓存区中的数据拷贝到接收内存中,结束返回;
步骤8:尝试分配读缓存区,如果有空闲缓存区,跳转到步骤10;
步骤9:如果无空闲缓存区,则随机选择一组已分配的读缓存区,根据访问次数排序,回收访问次数最少的读缓存区;
步骤10:启动异步读,将文件数据读取到读缓存区中;
步骤11:将数据读缓存区中的数据拷贝到接收内存;
步骤12:结束返回。
进一步的,写缓存步骤具体如下:
S1:应用程序调用open()函数来打开文件,输入参数为文件名,读写模式;
S2:应用程序调用write()函数来执行写操作,输入参数为文件描述fd,写入数据的内存地址和长度;
S3:根据文件描述符fd获取文件inode,文件***fsid;
S4:根据<inode,fsid>查找写缓存区;
S5:如果命中,跳转到S6,否则跳转到S10;
S6:将写入数据拷贝到写缓存区中;
S7:检查该缓存区状态,如果为clean,则将数据写入时间更新为当前时间,结束返回;否则继续S8;
S8:检查该文件数据缓存时间,如果未超过阈值则返回,否则继续S9;
S9:如果超过阈值,则启动异步写,将该缓存区的数据写入到对应的硬盘中,并将缓存区状态修改为clean;结束返回;
S10:如果未命中,则根据<inode,fsid>随机选组一组缓存区,检查是否有状态为clean的缓存区,如成功则根据访问次数排序,选择回收访问次数最少的缓存区,将写入数据拷贝到写缓存区中,将数据写入时间更新为当前时间,结束返回;
S11:选择写入时间最早的缓存区,将数据以同步方式写入到硬盘中,回收该缓存区;
S12:将写入数据拷贝到写缓存区中,将数据写入时间更新为当前时间;
S13:结束返回。
如上所述,本发明的一种数据存储***中的数据缓存方法,具有以下有益效果:读缓存和写缓存分开管理,将内存主要作用于读缓存,仅使用少量内存作用于写缓存;或者不使用写缓存,将写数据立即写入硬盘,因此能够对写缓存进行精确的数据量和缓存时间的控制,兼容数据存储***的性能和可靠性,减小数据存储***的结构复杂度,提高重负载写入时的性能。
附图说明
图1显示为本发明实施例中公开的数据存储***结构示意图;
图2显示为本发明实施例中公开的软件模块结构示意图;
图3显示为本发明实施例中公开的读缓存区结构示意图;
图4显示为本发明实施例中公开的写缓存区结构示意图;
图5显示为本发明实施例中公开的读缓存流程图;
图6显示为本发明实施例中公开的写缓存流程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明提供一种数据存储***,如图1所示,所述***包括一个或者多个处理器(CPU)和内存(DRAM),多个磁盘或者固态盘,一个或者多个网络接口(支持网络方式,例如FC、以太网、Infiniband等)访问存储***中的数据,所述磁盘通过I/O总线(例如SATA、SAS、PCIE等)接入***,存储***中的硬盘(包括磁盘或固态盘)可以以独立方式工作,也可以将多个硬盘组织为冗余阵列方式,例如RAID5、RAID6等方式。
本发明提供的方法在不同的硬盘组织方式中都能使用,以硬盘独立方式举例说明工作过程。如图2所示,在每个硬盘上,都有独立的文件***软件来管理硬盘的存储空间和数据,不同的文件***共用读缓存区和写缓存区,通常情况下,为读缓存区分配较多的内存空间,比如85%,而为写缓存区分配较少的内存空间,比如15%;也可以将内存空间全部用于读缓存区。
读缓存区和写缓存区能同时缓存多个文件的全部或者部分数据,针对不同的应用场景选择不同的方法,比如存储的文件为小文件时,可以将文件的全部数据缓存在内存中;如果存储的文件为大文件,可以将文件数据划分为固定大小的数据块,比如:64KB,以数据块为单位进行缓存管理。如果进行全部文件数据,则缓存的索引主键为<inode,fsid>;如果以数据块进行缓存管理,则缓存的索引主键为<inode,offset,fsid>;其中,inode为每个文件的索引节点号,在一个文件***内容具有唯一性;fsid为文件***id号,每个硬盘的文件***具有存储***内部唯一的id,offset为数据块在文件***内部的偏移量。
以inode作为索引主键,如图3所示,读缓存区结构使用单向链表链接,而不是使用打开文件描述符或文件名作为索引主键,其优点在于可以支持文件链接(包括硬链接或软链接)、快照与克隆等功能,多个文件可以共享同一缓存;文件多次打开和关闭时缓存仍然有效。
写缓存区具有2种状态:clean和dirty,写入的数据位于写缓存区中,还未写入到硬盘中,则状态为dirty;写入的数据位于写缓存区,数据已经写入到硬盘中,则状态为clean,写缓存区的状态保存在索引主键结构中,这样可以减少用于保存状态的内存申请与释放操作。
不同文件的缓存区可以使用哈希链表、B树等数据结构进行组织;属于同一磁盘文件***的写缓存区,还使用单向链表链接,如图4所示,当对该磁盘文件***执行flush或卸载硬盘等操作时,可以根据该链表找到将该文件***对应的写缓存区,将其中的数据全部写入到硬盘。
如图5所示,读缓存时,具体步骤:
1.应用程序调用open()函数来打开文件,输入参数为文件名,读写模式等;
2.应用程序调用read()函数来执行读操作,输入参数为文件描述符fd,接收数据的内存地址和长度;
3.根据文件描述符fd获取文件inode,文件***fsid;
4.根据<inode,fsid>查找读缓存区;
5.如果命中,则将读缓存区中的数据拷贝到接收内存中,将读缓存区的访问次数加1;结束返回;
6.如果未命中,则根据<inode,fsid>查找写缓存区;
7.如果写缓存区命中,则将写缓存区中的数据拷贝到接收内存中,结束返回;
8.尝试分配读缓存区,如果有空闲缓存区,跳转到步骤10;
9.如果无空闲缓存区,则随机选择一组已分配的读缓存区,根据访问次数排序,回收访问次数最少的读缓存区;
10.启动异步读,将文件数据读取到读缓存区中;
11.将数据读缓存区中的数据拷贝到接收内存;
12.结束返回。
如图6所示,写缓存时,具体步骤:
1.应用程序调用open()函数来打开文件,输入参数为文件名,读写模式等;
2.应用程序调用write()函数来执行写操作,输入参数为文件描述fd,写入数据的内存地址和长度;
3.根据文件描述符fd获取文件inode,文件***fsid;
4.根据<inode,fsid>查找写缓存区;
5.如果命中,跳转到步骤6,否则跳转到步骤10;
6.将写入数据拷贝到写缓存区中;
7.检查该缓存区状态,如果为clean,则将数据写入时间更新为当前时间,结束返回;否则继续步骤8;
8.检查该文件数据缓存时间,如果未超过阈值则返回;否则继续步骤9;
9.如果超过阈值,则启动异步写,将该缓存区的数据写入到对应的硬盘中,并将缓存区状态修改为clean;结束返回;
10.如果未命中,则根据<inode,fsid>随机选组一组缓存区,检查是否有状态为clean的缓存区;如成功则根据访问次数排序,选择回收访问次数最少的缓存区,将写入数据拷贝到写缓存区中,将数据写入时间更新为当前时间,结束返回;
11.选择写入时间最早的缓存区,将数据以同步方式写入到硬盘中,回收该缓存区;
12.将写入数据拷贝到写缓存区中,将数据写入时间更新为当前时间;
13.结束返回。
综上所述,本发明对读缓存和写缓存分开管理,将内存主要作用于读缓存,仅使用少量内存作用于写缓存;或者不使用写缓存,将写数据立即写入硬盘,因此能够兼容数据存储***的性能和可靠性,减小数据存储***的结构复杂度,提高重负载写入时的性能。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (4)

1.一种数据存储***中的数据缓存方法,其特征在于:读缓存和写缓存分开管理,读缓存区分配大比例的内存,写缓存区分配小比例的内存,读缓存和写缓存的索引,以<inode,offset,fsid>或<inode,fsid>为索引主键,对写缓存的容量大小和缓存时间进行精确的控制。
2.根据权利要求1所述的数据存储***中的数据缓存方法,其特征在于:当读缓存和写缓存的文件为小文件时,将文件缓存到内存中,缓存的索引主键为<inode,fsid>;当读缓存和写缓存的文件为大文件时,将文件划分为固定大小的数据块缓存到内存中,缓存的牵引主键为<inode,offset,fsid>,其中,inode为文件的索引节点号,offset为读写偏移量,fsid为文件***id。
3.根据权利要求2所述的数据存储***中的数据缓存方法,其特征在于,读缓存步骤具体如下:
步骤1:应用程序调用open()函数来打开文件,输入参数为文件名,读写模式;
步骤2:应用程序调用read()函数来执行读操作,输入参数为文件描述符fd,接收数据的内存地址和长度;
步骤3:根据文件描述符fd获取文件inode,文件***fsid;
步骤4:根据<inode,fsid>查找读缓存区;
步骤5:如果命中,则将读缓存区中的数据拷贝到接收内存中,将读缓存区的访问次数加1;结束返回;
步骤6:如果未命中,则根据<inode,fsid>查找写缓存区;
步骤7:如果写缓存区命中,则将写缓存区中的数据拷贝到接收内存中,结束返回;
步骤8:尝试分配读缓存区,如果有空闲缓存区,跳转到步骤10;
步骤9:如果无空闲缓存区,则随机选择一组已分配的读缓存区,根据访问次数排序,回收访问次数最少的读缓存区;
步骤10:启动异步读,将文件数据读取到读缓存区中;
步骤11:将数据读缓存区中的数据拷贝到接收内存;
步骤12:结束返回。
4.根据权利要求2所述的数据存储***中的数据缓存方法,其特征在于,写缓存步骤具体如下:
S1:应用程序调用open()函数来打开文件,输入参数为文件名,读写模式;
S2:应用程序调用write()函数来执行写操作,输入参数为文件描述fd,写入数据的内存地址和长度;
S3:根据文件描述符fd获取文件inode,文件***fsid;
S4:根据<inode,fsid>查找写缓存区;
S5:如果命中,跳转到S6,否则跳转到S10;
S6:将写入数据拷贝到写缓存区中;
S7:检查该缓存区状态,如果为clean,则将数据写入时间更新为当前时间,结束返回;否则继续S8;
S8:检查该文件数据缓存时间,如果未超过阈值,结束返回,否则继续S9;
S9:如果超过阈值,则启动异步写,将该缓存区的数据写入到对应的硬盘中,并将缓存区状态修改为clean;结束返回;
S10:如果未命中,则根据<inode,fsid>随机选组一组写缓存区,检查是否有状态为clean的缓存区,如成功则根据访问次数排序,选择回收访问次数最少的缓存区,将写入数据拷贝到写缓存区中,将数据写入时间更新为当前时间,结束返回;
S11:选择写入时间最早的缓存区,将数据以同步方式写入到硬盘中,回收该缓存区;
S12:将写入数据拷贝到写缓存区中,将数据写入时间更新为当前时间;
S13:结束返回。
CN201811638676.8A 2018-12-29 2018-12-29 一种数据存储***中的数据缓存方法 Active CN109800185B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811638676.8A CN109800185B (zh) 2018-12-29 2018-12-29 一种数据存储***中的数据缓存方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811638676.8A CN109800185B (zh) 2018-12-29 2018-12-29 一种数据存储***中的数据缓存方法

Publications (2)

Publication Number Publication Date
CN109800185A true CN109800185A (zh) 2019-05-24
CN109800185B CN109800185B (zh) 2023-10-20

Family

ID=66558288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811638676.8A Active CN109800185B (zh) 2018-12-29 2018-12-29 一种数据存储***中的数据缓存方法

Country Status (1)

Country Link
CN (1) CN109800185B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026681A (zh) * 2019-10-30 2020-04-17 烽火通信科技股份有限公司 一种基于Ceph的缓存方法、***及存储介质
CN111581018A (zh) * 2020-04-20 2020-08-25 深圳震有科技股份有限公司 一种数据恢复方法、智能终端及存储介质
CN111722797A (zh) * 2020-05-18 2020-09-29 西安交通大学 面向ssd与ha-smr混合存储***数据管理方法、存储介质及设备
CN112347044A (zh) * 2020-11-10 2021-02-09 北京赛思信安技术股份有限公司 一种基于spdk的对象存储优化方法
CN112667858A (zh) * 2020-12-25 2021-04-16 深圳创新科技术有限公司 采用hash链存储数据的方法及数据写入、读取方法
CN113448490A (zh) * 2020-03-25 2021-09-28 伊姆西Ip控股有限责任公司 用于存储的方法、设备和计算机程序产品
CN113655962A (zh) * 2021-08-18 2021-11-16 天津津航计算技术研究所 一种缩短VxWorks7嵌入式操作***下写文件时间的方法
WO2024066597A1 (zh) * 2022-09-29 2024-04-04 华为云计算技术有限公司 一种数据存储方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070174551A1 (en) * 2006-01-20 2007-07-26 Cornwell Michael J Variable caching policy system and method
CN101149668A (zh) * 2007-11-02 2008-03-26 杭州华三通信技术有限公司 一种包括读写缓存的存储设备及缓存实现方法
CN101488153A (zh) * 2009-02-12 2009-07-22 浙江大学 嵌入式Linux下大容量闪存文件***的实现方法
CN103902474A (zh) * 2014-04-11 2014-07-02 华中科技大学 一种支持固态盘缓存动态分配的混合存储***和方法
CN104951464A (zh) * 2014-03-27 2015-09-30 华为技术有限公司 数据存储方法及***
US20150347022A1 (en) * 2014-05-28 2015-12-03 International Business Machines Corporation Reading and writing via file system for tape recording system
CN105630405A (zh) * 2015-04-29 2016-06-01 上海磁宇信息科技有限公司 一种存储***及采用该存储***的读写方法
CN107346209A (zh) * 2016-05-08 2017-11-14 上海霄云信息科技有限公司 一种多磁盘聚合式数据存储***及其实现方法与应用方法
CN108427647A (zh) * 2017-02-15 2018-08-21 三星电子株式会社 读取数据的方法以及混合存储器模块
CN108604277A (zh) * 2015-07-13 2018-09-28 净睿存储股份有限公司 用于访问文件的方法和***

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070174551A1 (en) * 2006-01-20 2007-07-26 Cornwell Michael J Variable caching policy system and method
CN101149668A (zh) * 2007-11-02 2008-03-26 杭州华三通信技术有限公司 一种包括读写缓存的存储设备及缓存实现方法
CN101488153A (zh) * 2009-02-12 2009-07-22 浙江大学 嵌入式Linux下大容量闪存文件***的实现方法
CN104951464A (zh) * 2014-03-27 2015-09-30 华为技术有限公司 数据存储方法及***
CN103902474A (zh) * 2014-04-11 2014-07-02 华中科技大学 一种支持固态盘缓存动态分配的混合存储***和方法
US20150347022A1 (en) * 2014-05-28 2015-12-03 International Business Machines Corporation Reading and writing via file system for tape recording system
CN105630405A (zh) * 2015-04-29 2016-06-01 上海磁宇信息科技有限公司 一种存储***及采用该存储***的读写方法
CN108604277A (zh) * 2015-07-13 2018-09-28 净睿存储股份有限公司 用于访问文件的方法和***
CN107346209A (zh) * 2016-05-08 2017-11-14 上海霄云信息科技有限公司 一种多磁盘聚合式数据存储***及其实现方法与应用方法
CN108427647A (zh) * 2017-02-15 2018-08-21 三星电子株式会社 读取数据的方法以及混合存储器模块

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SCHIEFER K B: "DB2 universal database performance tuning", 《IEEE DATA ENG》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026681A (zh) * 2019-10-30 2020-04-17 烽火通信科技股份有限公司 一种基于Ceph的缓存方法、***及存储介质
CN113448490A (zh) * 2020-03-25 2021-09-28 伊姆西Ip控股有限责任公司 用于存储的方法、设备和计算机程序产品
CN111581018A (zh) * 2020-04-20 2020-08-25 深圳震有科技股份有限公司 一种数据恢复方法、智能终端及存储介质
CN111722797A (zh) * 2020-05-18 2020-09-29 西安交通大学 面向ssd与ha-smr混合存储***数据管理方法、存储介质及设备
CN111722797B (zh) * 2020-05-18 2021-06-29 西安交通大学 面向ssd与ha-smr混合存储***数据管理方法、存储介质及设备
CN112347044A (zh) * 2020-11-10 2021-02-09 北京赛思信安技术股份有限公司 一种基于spdk的对象存储优化方法
CN112347044B (zh) * 2020-11-10 2024-04-12 北京赛思信安技术股份有限公司 一种基于spdk的对象存储优化方法
CN112667858A (zh) * 2020-12-25 2021-04-16 深圳创新科技术有限公司 采用hash链存储数据的方法及数据写入、读取方法
CN113655962A (zh) * 2021-08-18 2021-11-16 天津津航计算技术研究所 一种缩短VxWorks7嵌入式操作***下写文件时间的方法
WO2024066597A1 (zh) * 2022-09-29 2024-04-04 华为云计算技术有限公司 一种数据存储方法及装置

Also Published As

Publication number Publication date
CN109800185B (zh) 2023-10-20

Similar Documents

Publication Publication Date Title
CN109800185A (zh) 一种数据存储***中的数据缓存方法
CN107168657B (zh) 一种基于分布式块存储的虚拟磁盘分层缓存设计方法
US8909887B1 (en) Selective defragmentation based on IO hot spots
US9582421B1 (en) Distributed multi-level caching for storage appliances
CN104899156B (zh) 一种面向大规模社交网络的图数据存储及查询方法
Lu et al. A forest-structured bloom filter with flash memory
CN101556557B (zh) 一种基于对象存储设备的对象文件组织方法
US10810123B1 (en) Flush strategy for using DRAM as cache media system and method
CN106066896B (zh) 一种应用感知的大数据重复删除存储***及方法
CN106708427A (zh) 一种适用于键值对数据的存储方法
US20150127691A1 (en) Efficient implementations for mapreduce systems
US20180107601A1 (en) Cache architecture and algorithms for hybrid object storage devices
CN110825748A (zh) 利用差异化索引机制的高性能和易扩展的键值存储方法
CN109074226A (zh) 一种存储***中重复数据删除方法、存储***及控制器
CN113821171B (zh) 一种基于哈希表与lsm树的键值存储方法
CN114546296B (zh) 一种基于zns固态硬盘的全闪存***和地址映射方法
CN107798130A (zh) 一种分布式存储的快照方法
CN106066890B (zh) 一种分布式高性能数据库一体机***
CN109766312A (zh) 一种区块链存储方法、***、装置及计算机可读存储介质
CN104111804A (zh) 一种分布式文件***
US20170161329A1 (en) Direct lookup for identifying duplicate data in a data deduplication system
CN104616680B (zh) 基于光盘存储的重复数据删除***及数据操作方法、装置
CN104462389A (zh) 基于分级存储的分布式文件***实现方法
CN102521419A (zh) 分级存储的实现方法和***
CN113377868A (zh) 一种基于分布式kv数据库的离线存储***

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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A Data Caching Method in Data Storage Systems

Granted publication date: 20231020

Pledgee: Minhang Branch of Shanghai Rural Commercial Bank Co.,Ltd.

Pledgor: SHANGHAI XIAO YUN INFO. TECH. CO.,LTD.

Registration number: Y2024310000129