CN110413229A - 一种数据写入方法 - Google Patents
一种数据写入方法 Download PDFInfo
- Publication number
- CN110413229A CN110413229A CN201910620406.2A CN201910620406A CN110413229A CN 110413229 A CN110413229 A CN 110413229A CN 201910620406 A CN201910620406 A CN 201910620406A CN 110413229 A CN110413229 A CN 110413229A
- Authority
- CN
- China
- Prior art keywords
- file
- small documents
- group
- write request
- address space
- 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
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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/0643—Management of files
-
- 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/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
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
本发明公开了一种数据写入方法,包括:文件***层将预设时间段内收到的多个写请求进行缓存;文件***层将多个写请求中相同文件的写请求聚集,并将多个写请求中所有小文件的写请求聚集;文件***层将聚集的所有小文件的写请求分配到小文件组地址空间,小文件组地址空间为连续的地址空间;小文件组地址空间采用异地更新策略;小文件的写请求聚集后写入地址连续的小文件组地址空间所带来的RAID校验值更新次数小于累加RAID校验值更新次数,累加RAID校验值更新次数为聚集的小文件的写请求中所有单次单个小文件的写请求写入地址空间所带来的RAID校验值更新次数之和。本发明降低了更新校验值带来的写放大,使得RAID的写性能得到了提升。
Description
技术领域
本发明属于数据存储技术领域,更具体地,涉及一种数据写入方法。
背景技术
在如今的存储***中,存储设备的性能逐渐成为***性能的瓶颈,难以满足日益增长的数据量对存储性能的需求。独立硬盘冗余阵列(Redundant Array of IndependentDisks,RAID)作为后端存储被广泛应用于大量企业中。RAID将多个存储设备合并为一个,可以在提供高并行性的同时,也可以提供不错的数据冗余功能。以5盘位的RAID 5为例,一个条带的数据存放在4个盘中,校验值存放在1个盘中。当发生单个数据盘故障时,可以通过其它盘的数据与校验值通过异或操作将故障盘的数据恢复出来。
然而,校验值在提供容错功能的同时,也为***性能带来了一些不利的影响。校验值是根据同一条带中的其它数据进行异或操作生成的,当更新数据时,需要同时更改校验值以保证容错性,这样就带来了额外的写放大,降低了***性能。
现有技术中,大部分方案选择在块层降低校验值更新带来的写放大。然而,块层无法获取上层的文件布局,无法知道某个块属于哪个特定的文件,即这些方案不区分校验块和数据块,按照同样的方式处理,没有将校验值更新的情况考虑进来。添加缓存来降低校验值更新带来的写放大也是一种常用的方案,然而其效果却和添加的缓存大小不匹配。因此,我们需要一种方案来显式地处理校验值更新,同时充分利用缓存。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种数据写入方法,其目的在于解决现有的RAID中校验值频繁更新,严重影响***性能的问题。
为实现上述目的,本发明提供一种数据写入方法,包括如下步骤:
文件***层将预设时间段内收到的多个写请求进行缓存;所述写请求为对小文件或大文件进行写操作的请求,若所述写请求所属的文件的长度小于预设长度,则该写请求对应的文件为小文件,否则该写请求对应的文件为大文件;
文件***层将所述多个写请求中相同文件的写请求聚集,并将所述多个写请求中所有小文件的写请求聚集;
文件***层将聚集的所有小文件的写请求分配到小文件组地址空间,所述小文件组地址空间为连续的地址空间;所述小文件组地址空间采用异地更新策略;小文件的写请求聚集后写入地址连续的小文件组地址空间所带来的RAID校验值更新次数小于累加RAID校验值更新次数,所述累加RAID校验值更新次数为聚集的小文件的写请求中所有单次单个小文件的写请求写入地址空间所带来的RAID校验值更新次数之和。
具体地,写请求的聚集指的是将相同文件的写请求数据放在一起以增加局部性。例如:如果同一个文件的两个写请求的地址是连续衔接的,则将这两个写请求聚集指的是将这两个写请求合并,如果同一个文件的两个写请求的地址是不连续的,则将这两个写请求聚集指的是将这两个写请求放在一起下发地址空间。
可选地,该方法还包括如下步骤:
文件***层将所述多个写请求中所有大文件的写请求聚集,将聚集的所有大文件的写请求分配到大文件组地址空间,所述小文件组地址空间为连续的地址空间;所述大文件组地址空间采用原地更新策略。
可选地,所述小文件组地址空间采用异地更新策略,具体包括:
将写请求对应的小文件分配到小文件组地址空间的空闲空间,优先分配到空闲的小文件条带,其次分配到连续空闲页多的小文件条带;小文件组地址空间包括多个小文件条带。
可选地,所述大文件组地址空间采用原地更新策略,具体包括:
当写请求对应的大文件不是新创建的大文件时,将该写请求写入大文件之前存放的位置;
当写请求对应的大文件是新创建的大文件时,将该写请求写入大文件组地址空间的空闲空间,优先分配到空闲的大文件条带,其次分配到连续空闲页多的大文件条带;大文件组地址空间包括多个大文件条带。
具体地,将地址空间分大文件组和小文件组,是为了将访问特性相近的文件放在一起,提升文件访问的局部性。
可选地,文件***层将预设时间段内收到的多个写请求进行缓存,其中,当缓存空间的剩余空间低于预设阈值时,则将缓存的写请求写入地址空间。
可选地,文件***层将写请求写入地址空间,具体包括如下步骤:
将地址空间划分成多个条带,基于划分的条带将文件***层的逻辑空间划分为多个文件组,每个文件组中包含数量相同的条带;其中,将划分的多个文件组分为大文件组和小文件组;
如果当前待写入的文件是大文件时,若该文件是一个新文件,则将该文件分配到一个大文件组中,查看当前大文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为新的大文件组;若否,则将该文件分配到当前大文件组;若该文件不是一个新文件,将该大文件分配到原有的大文件组;
如果当前待写入的文件是小文件时,将该文件分配到一个小文件组中,查看当前小文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为新的小文件组;若否,则将该文件分配到当前小文件组。
可选地,如果当前待写入的文件是小文件时,若有足够的空闲条带,则直接分配新的条带;若所有的空闲条带被用尽,则选取一个包含最多连续空闲页的条带分配,按照连续空闲页的长度由长至短的顺序利用各个条带中的空闲空间。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)本发明提供的数据写入方法,将文件***层的逻辑空间按照条带为单位进行划分;根据大文件和小文件更新特点的不同划分了大文件组和小文件组;由此使得在文件***层能够感知底层RAID的结构,更新数据的粒度更符合RAID的特点,从而降低了RAID中的写放大。在文件***层将对文件的操作缓存,将对同一个文件的写操作聚合在一起。对于大文件,可以将对属于同一个文件的同一个条带的多个更新一起下刷,减少对同一个条带校验值的多次更新;对于小文件,可以将多个文件写入到同一个条带中,降低因多个文件更新而带来的多次校验值更新;利用文件***中延迟分配的特性,只有在下刷数据到持久化存储设备时,才为待下刷的数据分配空间,使得属于同一个文件数据聚合在一起,同时能以条带为单位下刷,从而降低校验值更新带来的写放大。
(2)本发明提供的数据写入方法,利用文件***延迟分配特性来降低RAID校验值更新带来的写放大的方法,利用的是文件***中延迟分配的特性将数据缓存在内存中,其中延迟分配指的是只有在需要写入数据时才分配空间;而已经有很多现代文件***支持延迟分配特性,因此本发明具有较好的应用空间;传统文件***,如:Ext4使用的伙伴算法以2n为单位分配页,对于小请求会浪费一定的空间,如:对于一个18个页大小的请求分配32个页大小的空间(24<18<25)。本发明中的缓存算法将请求拆分为多个2n的子请求,相比较而言能节省一定的空间。
附图说明
图1为本发明提供的数据写入方法流程图;
图2为本发明实施例中的所基于的存储***的结构示意图;
图3为本发明实施例中的利用文件***延迟分配特性来降低RAID校验值更新带来的写放大的方法的流程图;
图4为本发明实施例中文件***的数据布局结构图;
图5为本发明实施例中步骤(2)的细化流程图;
图6为本发明实施例中步骤(3)的细化流程图;
图7为本发明实施例中步骤(4)的细化流程图;
图8为本发明实施例中步骤(5)的细化流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
图1为本发明提供的数据写入方法,如图1所示,包括如下步骤:
S101,文件***层将预设时间段内收到的多个写请求进行缓存;所述写请求为对小文件或大文件进行写操作的请求,若所述写请求所属的文件的长度小于预设长度,则该写请求对应的文件为小文件,否则该写请求对应的文件为大文件;
S102,文件***层将所述多个写请求中相同文件的写请求聚集,并将所述多个写请求中所有小文件的写请求聚集;
S103,文件***层将聚集的所有小文件的写请求分配到小文件组地址空间,所述小文件组地址空间为连续的地址空间;所述小文件组地址空间采用异地更新策略;小文件的写请求聚集后写入地址连续的小文件组地址空间所带来的RAID校验值更新次数小于累加RAID校验值更新次数,所述累加RAID校验值更新次数为聚集的小文件的写请求中所有单次单个小文件的写请求写入地址空间所带来的RAID校验值更新次数之和。
具体地,在文件层将地址空间划分为多个文件组,每个文件组中包含数量相同的条带,每个条带包含多个页;文件组有三种类型:大文件组、小文件组和空闲文件组,其中大文件组仅存放大文件,小文件组仅存放小文件,空闲文件组中未存放文件。当前文件组的空间用完时,可以选择一个空闲文件组作为大文件组或者小文件组。若待写入文件的长度大于或等于预设长度阈值,所述待写入文件为大文件,否则,所述待写入文件为小文件;在一个示例中,该预设长度阈值可以为4kB。
当待写入文件为大文件时,若该大文件为一个新创建的文件,查看当前大文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为大文件组,为该文件分配空间;若否,则从当前正在使用的大文件组中为该文件分配空间;
当待写入文件为大文件时,若该大文件不是一个新创建的文件,则采用就地更新策略,对该文件在它之前存放的位置进行修改;
当待写入文件为小文件时,将该小文件为一个新创建的文件,则将该小文件分配到一个小文件组中,查看当前小文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为新的小文件组;若否,则从正在使用的小文件组中为该文件分配空间;
当待写入文件为小文件时,若该小文件不是一个新创建的文件,则采用异地更新策略,将从当前正在使用的小文件组选择一个空闲的条带用于存放该文件;
在文件***层将对文件的操作缓存,将对同一个文件的写操作聚合在一起。对于大文件,可以将对属于同一个文件的同一个条带的多个更新一起下刷,减少对同一个条带校验值的多次更新;对于小文件,可以将多个文件写入到同一个条带中,降低因多个文件更新而带来的多次校验值更新。
本发明利用文件***中延迟分配的特性,只有在下刷数据到持久化存储设备时,才为待下刷的数据分配空间,使得属于同一个文件数据聚合在一起,同时能以条带为单位下刷,从而降低校验值更新带来的写放大。
本发明提供给的上述利用文件***延迟分配特性来降低RAID校验值更新带来的写放大的方法,利用延迟分配的特性将写入的数据缓存在内存中,从而降低RAID中更新校验值带来的写放大,达到提升性能的目的。本发明提供的利用文件***延迟分配特性来降低RAID校验值更新带来的写放大的方法,利用延迟分配的特性,将数据缓存在内存中,同时在文件***层使用RAID友好型的布局,使下发请求的粒度与底层RAID更新的粒度保持一致,从而降低RAID中更新校验值带来的写放大。
下面将结合实施例及附图,具体说明本发明利用文件***延迟分配特性来降低RAID校验值更新带来的写放大的方法。
本发明实施例基于图2中所示的存储***;上层应用下发向底层***发送写请求,在文件***层利用延迟分配的特性将数据缓存在内存中;当达到特定的阈值时,以条带为粒度向底层RAID写入数据,从而降低RAID更新校验值带来的写放大,提升***性能,其流程如图3所示,具体包括一下步骤:
(1)将地址空间划分为以条带为单位,使更新数据的粒度与RAID条带对齐;
(2)根据文件大小将地址空间划分为大文件组和小文件组,分别采用就地更新和异地更新的策略更新数据;
(3)利用延迟分配的特性,将写请求缓存在内存中,尽可能地使同一文件的数据缓存在一起;
(4)当达到预定的条件时(如:缓存时间过长等),以条带为单位将数据组织起来准备写入到存储设备中;
(5)以条带为粒度为写操作分配写入的位置,对于大文件组,直接返回原条带号,原地更新数据;对于小文件组,若有足够的空闲空间,则直接分配新的条带;若没有足够的空闲空间,则分配最长的空闲连续空间。
具体地,优先分配空闲的条带,即条带中所有的页均是空闲的。当空闲条带用尽时,那么就需要找到包含尽可能多的空闲页的条带,从而保证更新一次校验值能更新更多的数据,把写放大尽可能降到最低。在一个实例中:写空闲条带是更新4个页的数据加1个页的校验值,当空闲页用完时,更新3个页的数据加1个页的校验值相比于更新1个页的数据加1个页的校验值带来的写放大更低,即从比例上来看更新无用数据的比例更低。
实施例中,步骤(1)中的逻辑空间划分如图4所示。文件***中将逻辑空间划分为多个等大小的条带。而由于操作***中层与层之间是透明的,在文件***层的条带只有RAID中条带的数据部分,两层之间条带概念的区别如图中所示。
实施例中,步骤(2)的流程如图5所示,具体如下:
(2-1)根据(1)中划分的条带,文件***层的逻辑空间被划分为多个文件组,每个文件组中包含数量相同的条带;
(2-2)判断当前待写入的文件是否是大文件,若是,则进入步骤(2-3),若否,则进入步骤(2-6);
(2-3)判断该文件是否是一个新文件,若是,则进入步骤(2-4),若否,则进入步骤(2-5);
(2-4)将该文件分配到一个大文件组中,查看当前大文件组的空间是否已用完,若是,则从可用的文件组中选取一个文件组作为新的大文件组;若否,则将该文件分配到当前大文件组;
(2-5)由于大文件采用就地更新的策略,将该大文件分配到原有的大文件组;
(2-6)判断该文件是否是一个小文件,若是,将该文件分配到一个小文件组中。查看当前小文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为新的小文件组;若否,则将该文件分配到当前小文件组;
(2-7)由于小文件采用异地更新的策略,将该小文件分配到一个新的位置。若有足够的空闲条带,则直接分配新的条带;若所有的空闲条带被用尽,则选取一个包含最长空闲空间的条带分配,用于存放新的数据,从而使更新一次校验值的同时能更新尽可能多的数据。
实施例中,步骤(3)的流程如图6所示,具体如下:
(3-1)建立粒度为2n(n=0,1,2……)的链表,链表中的项分别指向大小为2n个page的数据;
(3-2)写入的数据以2n(n=0,1,2……)为粒度分割,存放在不同的链表中;
(3-3)为每个文件建立一个B+树,其根节点存放在VFS层的inode中,叶子节点指向(3-1)链表中的项。
实施例中,步骤(4)的流程如图7所示,具体如下:
(4-1)判断缓存中的空闲空间是否低于一个特定的阈值,若是,则调用一个后台线程开始将缓存中的数据刷回存储设备中;
(4-2)判断缓存中的脏数据缓存的时间是否超过一个阈值,若是,则调用后台线程将脏数据写回到存储设备中;
(4-3)当上层应用程序调用fsync等命令强制刷回缓存中的数据时,调用后台线程将缓存中的数据写回到存储设备中。
实施例中,步骤(5)的流程如图8所示,具体如下:
(5-1)根据步骤(1)中划分的条带建立链表,链表中的每一级中的项指向包含n个空闲页的条带(n为一个条带的页数量);
(5-2)判断当前写操作是否是对大文件的写,若是,进入步骤(5-3);若否,进入步骤(5-4);
(5-3)对大文件的写操作,只需要返回原条带号,进行原地更新即可;
(5-4)对小文件的写操作,判断空闲空间是否足够,若是,则分配一个空闲的条带;若否,则分配一个连续空闲页最多的条带;
(5-5)更新多级链表中条带的状态,保证一致性。
本实施例中,每次写操作在文件***层利用延迟分配的特性缓存在内存中,尽可能地使同一个文件中的数据聚集,降低了RAID中校验值更新带来的写放大,提升了***的性能。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种数据写入方法,其特征在于,包括如下步骤:
文件***层将预设时间段内收到的多个写请求进行缓存;所述写请求为对小文件或大文件进行写操作的请求,若所述写请求所属的文件的长度小于预设长度,则该写请求对应的文件为小文件,否则该写请求对应的文件为大文件;
文件***层将所述多个写请求中相同文件的写请求聚集,并将所述多个写请求中所有小文件的写请求聚集;
文件***层将聚集的所有小文件的写请求分配到小文件组地址空间,所述小文件组地址空间为连续的地址空间;所述小文件组地址空间采用异地更新策略;小文件的写请求聚集后写入地址连续的小文件组地址空间所带来的RAID校验值更新次数小于累加RAID校验值更新次数,所述累加RAID校验值更新次数为聚集的小文件的写请求中所有单次单个小文件的写请求写入地址空间所带来的RAID校验值更新次数之和。
2.根据权利要求1所述的数据写入方法,其特征在于,还包括如下步骤:
文件***层将所述多个写请求中所有大文件的写请求聚集,将聚集的所有大文件的写请求分配到大文件组地址空间,所述小文件组地址空间为连续的地址空间;所述大文件组地址空间采用原地更新策略。
3.根据权利要求1所述的数据写入方法,其特征在于,所述小文件组地址空间采用异地更新策略,具体包括:
将写请求对应的小文件分配到小文件组地址空间的空闲空间,优先分配到空闲的小文件条带,其次分配到连续空闲页多的小文件条带;小文件组地址空间包括多个小文件条带。
4.根据权利要求2所述的数据写入方法,其特征在于,所述大文件组地址空间采用原地更新策略,具体包括:
当写请求对应的大文件不是新创建的大文件时,将该写请求写入大文件之前存放的位置;
当写请求对应的大文件是新创建的大文件时,将该写请求写入大文件组地址空间的空闲空间,优先分配到空闲的大文件条带,其次分配到连续空闲页多的大文件条带;大文件组地址空间包括多个大文件条带。
5.根据权利要求1至4任一项所述的数据写入方法,其特征在于,文件***层将预设时间段内收到的多个写请求进行缓存,其中,当缓存空间的剩余空间低于预设阈值时,则将缓存的写请求写入地址空间。
6.根据权利要求1至4任一项所述的数据写入方法,其特征在于,文件***层将写请求写入地址空间,具体包括如下步骤:
将地址空间划分成多个条带,基于划分的条带将文件***层的逻辑空间划分为多个文件组,每个文件组中包含数量相同的条带;其中,将划分的多个文件组分为大文件组和小文件组;
如果当前待写入的文件是大文件时,若该文件是一个新文件,则将该文件分配到一个大文件组中,查看当前大文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为新的大文件组;若否,则将该文件分配到当前大文件组;若该文件不是一个新文件,将该大文件分配到原有的大文件组;
如果当前待写入的文件是小文件时,将该文件分配到一个小文件组中,查看当前小文件组的空间是否已用完,若是,则从空闲的文件组中选取一个文件组作为新的小文件组;若否,则将该文件分配到当前小文件组。
7.根据权利要求6所述的数据写入方法,其特征在于,如果当前待写入的文件是小文件时,若有足够的空闲条带,则直接分配新的条带;若所有的空闲条带被用尽,则选取一个包含最多连续空闲页的条带分配,按照连续空闲页的长度由长至短的顺序利用各个条带中的空闲空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910620406.2A CN110413229A (zh) | 2019-07-10 | 2019-07-10 | 一种数据写入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910620406.2A CN110413229A (zh) | 2019-07-10 | 2019-07-10 | 一种数据写入方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110413229A true CN110413229A (zh) | 2019-11-05 |
Family
ID=68360946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910620406.2A Pending CN110413229A (zh) | 2019-07-10 | 2019-07-10 | 一种数据写入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110413229A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076062A (zh) * | 2021-03-30 | 2021-07-06 | 山东英信计算机技术有限公司 | 一种提升qlcssd寿命的方法和设备 |
CN115469797A (zh) * | 2021-09-09 | 2022-12-13 | 上海江波龙数字技术有限公司 | 一种数据写入方法、存储装置及计算机可读存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130073821A1 (en) * | 2011-03-18 | 2013-03-21 | Fusion-Io, Inc. | Logical interface for contextual storage |
CN103458023A (zh) * | 2013-08-30 | 2013-12-18 | 清华大学 | 分布式闪存存储*** |
CN103605587A (zh) * | 2013-11-20 | 2014-02-26 | 上海爱数软件有限公司 | 一种磁带库数据备份归档方法 |
CN103744961A (zh) * | 2014-01-06 | 2014-04-23 | 清华大学 | 用可重构的文件***目录树提高非易失性存储寿命的方法 |
CN104915145A (zh) * | 2014-03-11 | 2015-09-16 | 华为技术有限公司 | 一种降低LSM Tree写放大的方法和装置 |
CN105373396A (zh) * | 2015-08-14 | 2016-03-02 | 腾讯科技(深圳)有限公司 | 插件平台中的插件更新方法和装置 |
US20160070652A1 (en) * | 2014-09-04 | 2016-03-10 | Fusion-Io, Inc. | Generalized storage virtualization interface |
US20160357776A1 (en) * | 2014-01-08 | 2016-12-08 | Netapp, Inc. | Flash optimized, log-structured layer of a file system |
CN106970764A (zh) * | 2017-02-24 | 2017-07-21 | 中国科学院计算技术研究所 | 一种基于条带版本的瓦记录raid写顺序化方法及*** |
US20190102253A1 (en) * | 2017-09-29 | 2019-04-04 | Apple Inc. | Techniques for managing parity information for data stored on a storage device |
-
2019
- 2019-07-10 CN CN201910620406.2A patent/CN110413229A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130073821A1 (en) * | 2011-03-18 | 2013-03-21 | Fusion-Io, Inc. | Logical interface for contextual storage |
CN103458023A (zh) * | 2013-08-30 | 2013-12-18 | 清华大学 | 分布式闪存存储*** |
CN103605587A (zh) * | 2013-11-20 | 2014-02-26 | 上海爱数软件有限公司 | 一种磁带库数据备份归档方法 |
CN103744961A (zh) * | 2014-01-06 | 2014-04-23 | 清华大学 | 用可重构的文件***目录树提高非易失性存储寿命的方法 |
US20160357776A1 (en) * | 2014-01-08 | 2016-12-08 | Netapp, Inc. | Flash optimized, log-structured layer of a file system |
CN104915145A (zh) * | 2014-03-11 | 2015-09-16 | 华为技术有限公司 | 一种降低LSM Tree写放大的方法和装置 |
US20160070652A1 (en) * | 2014-09-04 | 2016-03-10 | Fusion-Io, Inc. | Generalized storage virtualization interface |
CN105373396A (zh) * | 2015-08-14 | 2016-03-02 | 腾讯科技(深圳)有限公司 | 插件平台中的插件更新方法和装置 |
CN106970764A (zh) * | 2017-02-24 | 2017-07-21 | 中国科学院计算技术研究所 | 一种基于条带版本的瓦记录raid写顺序化方法及*** |
US20190102253A1 (en) * | 2017-09-29 | 2019-04-04 | Apple Inc. | Techniques for managing parity information for data stored on a storage device |
Non-Patent Citations (2)
Title |
---|
TANG CHENLEI等: "RAFS: A RAID-Aware File System to Reduce the Parity Update Overhead for SSD RAID", 《 2019 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE)》 * |
刘志远: "基于RAID条带分配的文件***数据组织方法设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076062A (zh) * | 2021-03-30 | 2021-07-06 | 山东英信计算机技术有限公司 | 一种提升qlcssd寿命的方法和设备 |
CN115469797A (zh) * | 2021-09-09 | 2022-12-13 | 上海江波龙数字技术有限公司 | 一种数据写入方法、存储装置及计算机可读存储介质 |
CN115469797B (zh) * | 2021-09-09 | 2023-12-29 | 上海江波龙数字技术有限公司 | 一种数据写入方法、存储装置及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106708427B (zh) | 一种适用于键值对数据的存储方法 | |
CN110347336A (zh) | 一种基于nvm与ssd混合存储结构的键值存储*** | |
CN107943867B (zh) | 支持异构存储的高性能层次化存储*** | |
CN104317742B (zh) | 一种优化空间管理的自动精简配置方法 | |
CN107463447B (zh) | 一种基于远程直接非易失内存访问的b+树管理方法 | |
CN103885728B (zh) | 一种基于固态盘的磁盘缓存*** | |
CN105872040B (zh) | 一种利用网关节点缓存优化分布式块存储写性能的方法 | |
CN100565512C (zh) | 消除文件存储***中冗余文件的***及方法 | |
CN106095342B (zh) | 一种动态可变长条带的瓦记录磁盘阵列构建方法及*** | |
CN109284299B (zh) | 重构具有存储感知的混合索引的方法 | |
CN104331478B (zh) | 一种自精简存储***数据一致性管理方法 | |
CN107066393A (zh) | 提高地址映射表中映射信息密度的方法 | |
CN104899156A (zh) | 一种面向大规模社交网络的图数据存储及查询方法 | |
CN101997918A (zh) | 异构san环境中的海量存储资源按需分配的实现方法 | |
US20080229003A1 (en) | Storage system and method of preventing deterioration of write performance in storage system | |
CN104731799B (zh) | 内存数据库管理装置 | |
CN106844740B (zh) | 基于内存对象缓存***的数据预读方法 | |
CN105550371A (zh) | 一种面向大数据环境的元数据组织方法和*** | |
CN102262512A (zh) | 一种实现磁盘阵列缓存分区管理的***、装置及方法 | |
CN110058822A (zh) | 一种磁盘阵列横向拓展方法 | |
CN103645859A (zh) | 一种虚拟ssd与ssd异构镜像的磁盘阵列缓存方法 | |
CN110413229A (zh) | 一种数据写入方法 | |
CN110196818A (zh) | 缓存数据的方法、缓存设备和存储*** | |
CN103488685A (zh) | 一种基于分布式存储***的碎片文件存储方法 | |
CN113377292B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191105 |