CN115617742B - 一种数据缓存的方法、系统、设备和存储介质 - Google Patents

一种数据缓存的方法、系统、设备和存储介质 Download PDF

Info

Publication number
CN115617742B
CN115617742B CN202211634314.8A CN202211634314A CN115617742B CN 115617742 B CN115617742 B CN 115617742B CN 202211634314 A CN202211634314 A CN 202211634314A CN 115617742 B CN115617742 B CN 115617742B
Authority
CN
China
Prior art keywords
data
new
hard disk
check
original
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
Application number
CN202211634314.8A
Other languages
English (en)
Other versions
CN115617742A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211634314.8A priority Critical patent/CN115617742B/zh
Publication of CN115617742A publication Critical patent/CN115617742A/zh
Application granted granted Critical
Publication of CN115617742B publication Critical patent/CN115617742B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/781On-chip cache; Off-chip memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供一种数据缓存的方法、系统、设备和存储介质,方法包括:在RAID管理芯片上设置片上缓存;从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。本发明通过引入片上缓存,解耦了RAID数据处理过程中对传统片外DDR有限带宽的依赖,最大化释放了RAID处理芯片的IO性能,匹配了PCIe接口性能代际倍增的增长节奏。

Description

一种数据缓存的方法、系统、设备和存储介质
技术领域
本发明涉及硬件领域,更具体地,特别是指一种数据缓存的方法、系统、设备和存储介质。
背景技术
RAID(Redundant Arrays of Independent Disks,独立冗余磁盘阵列)组一般由n个数据盘和m个校验盘组成。依据不同的组织方式和算法,RAID可以分类成不同的RAID级别,常见的有RAID0(n=k,m=0),RAID1(n=1,m=1),RAID10(n=k,m=k),RAID5(n=k,m=1),RAID6(n=k,m=2)等,其中k为正整数。在RAID组响应上位机的写IO请求的过程中,硬RAID处理模块会先将数据从上位机内存搬移到本地的存储空间,并依据RAID级别和其在RAID条带中的位置,读取对应硬盘上的数据到本地存储后,再调用硬RAID计算加速引擎计算出新的校验数据,并将新数据和校验数据落盘。这个过程中,上位机的一次写IO会放大成RAID处理模块对相关硬盘的多次读/写IO,这种现象被称为“写放大”。
在“写放大”的过程中,潜在的一个性能瓶颈点是本地存储的带宽。以RAID5的4KB修改写为例,一次写IO会造成9次对本地存储的读/写访问,消耗掉36KB的存储带宽。通常本地存储通过片外DDR(Double Data Rate,双倍速率同步动态随机存储器)实现,以128位的双通道DDR4-3200为例,其理论带宽为51GB/s,按DDR4利用率60%估算,其实际带宽仅为30GB/s左右,从而得到其可以提供给上位机的RAID5 4KB随机写的IOPS(Input / OutputOperations Per Second,每秒IO操作数)为833K。而RAID模块同上位机之间的数据链路一般为PCIe链路,以PCIe Gen5 X16的链路为例,其单向链路带宽为64GB/s,在RAID5 4KB随机写场景下,其链路占用率仅为5%左右。同时,如果组成RAID的硬盘是NVMe(NVM Express,非易失性内存主机控制器接口规范) SSD(Solid State Drive,固态硬盘),其IO性能释放也极大地受限于片外DDR的带宽上限。综上,当前在面向NVMe SSD的硬RAID的解决方案主要受限于传统片外DDR的带宽上限限制。
发明内容
有鉴于此,本发明实施例的目的在于提出一种数据缓存的方法、系统、计算机设备及计算机可读存储介质,本发明面向NVMe SSD进行RAID加速计算场景,通过位于RAID加速管理芯片内的MB级别片上缓存进行数据缓存,并提供关键性能场景所需的高存储带宽;面向NVMe SSD组RAID场景,RAID卡不在需要片外的DDR进行数据缓存;针对高存储带宽需求,引入多片OCB(On Chip Buffer,片上缓存)的设计,降低工程实现难度,并通过多个并联通道来实现整体性能的达成。
基于上述目的,本发明实施例的一方面提供了一种数据缓存的方法,包括如下步骤:在RAID管理芯片上设置片上缓存;从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。
在一些实施方式中,所述根据当前RAID组的类型和所述新的数据计算得到新的校验数据包括:响应于RAID组为第一类型,根据所述新的数据的大小确定计算所述新的校验数据的方式;以及响应于RAID组为第二类型,根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据。
在一些实施方式中,所述根据所述新的数据的大小确定计算所述新的校验数据的方式包括:响应于所述新的数据不超过第一阈值,根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据;以及响应于所述新的数据超过第一阈值,根据所述新的数据计算得到所述新的校验数据。
在一些实施方式中,所述根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据包括:从第一数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,并从第一校验硬盘上读取所述原始校验数据到所述片上缓存中。
在一些实施方式中,所述方法还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述原始校验数据写入所述片上缓存的第三空间,并将所述新的校验数据写入所述片上缓存的第四空间。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据发送到所述第一数据硬盘中,并将所述新的校验数据发送到所述第一校验硬盘中。
在一些实施方式中,所述方法还包括:并发执行从主机DDR读取所述新的数据、从所述第一数据硬盘上读取所述新的数据对应的原始数据以及从所述第一校验硬盘上读取所述原始校验数据。
在一些实施方式中,所述方法还包括:并发执行将所述新的数据落盘到所述第一数据硬盘中以及将所述新的校验数据落盘到所述第一校验硬盘中。
在一些实施方式中,所述方法还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的校验数据写入所述片上缓存的第四空间。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据平均分成多个部分,将每个部分传输到每个对应的数据硬盘,并将所述新的校验数据传输到对应的校验硬盘。
在一些实施方式中,所述方法还包括:并发执行将所述新的数据的每个部分传输到每个对应的数据硬盘。
在一些实施方式中,所述根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据包括:根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到新的第一校验数据和第二校验数据。
在一些实施方式中,所述方法还包括:从第二数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,从第二校验硬盘上读取所述第一原始校验数据到所述片上缓存中,并从第三校验硬盘上读取所述第二原始校验数据到所述片上缓存中。
在一些实施方式中,所述方法还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述第一原始校验数据写入所述片上缓存的第三空间,将所述第二原始校验数据写入所述片上缓存的第四空间,将所述新的第一校验数据写入所述片上缓存的第五空间,并将所述新的第二校验数据写入所述片上缓存的第六空间。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据发送到所述第二数据硬盘,将所述新的第一校验数据发送到所述第二校验硬盘,并将所述新的第二校验数据发送到所述第三校验硬盘。
在一些实施方式中,所述方法还包括:并发执行从主机DDR读取所述新的数据、从所述第二数据硬盘上读取所述新的数据对应的原始数据、从所述第二校验硬盘上读取所述第一原始校验数据以及从所述第三校验硬盘上读取所述第二原始校验数据。
在一些实施方式中,所述方法还包括:并发执行将所述新的数据落盘到所述第二数据硬盘中、将所述新的第一校验数据落盘到所述第二校验硬盘中以及将所述新的第二校验数据落盘到所述第三校验硬盘中。
本发明实施例的另一方面,提供了一种数据缓存的系统,包括:设置模块,配置用于在RAID管理芯片上设置片上缓存;计算模块,配置用于从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及发送模块,配置用于将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。
本发明实施例的又一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现如上方法的步骤。
本发明实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
本发明具有以下有益技术效果:
1、针对NVMe SSD基于半导体存储的IO特点,通过引入MB级别的片上缓存,解耦了RAID数据处理过程中对传统片外DDR有限带宽的依赖,最大化释放了RAID处理芯片的IO性能,以匹配PCIe接口性能代际倍增的增长节奏;
2、针对纯粹的NVMe SSD挂盘场景,RAID加速管理芯片可以完全移除传统的DDR接口,进一步降低系统功耗,增加RAID卡直连挂盘数量;
3、因为仅需对片上MB级别数据进行异常掉电后的数据保护,异常备电能量需求相较于传统RAID卡也会大幅减少。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明提供的数据缓存的方法的实施例的示意图;
图2为本发明提供的第一类型进行数据缓存的实施例的示意图;
图3为本发明提供的第一类型进行数据缓存的另一实施例的示意图;
图4为本发明提供的第二类型进行数据缓存的实施例的示意图;
图5为本发明提供的数据缓存的架构示意图;
图6为本发明提供的数据缓存的系统的实施例的示意图;
图7为本发明提供的数据缓存的计算机设备的实施例的硬件结构示意图;
图8为本发明提供的数据缓存的计算机存储介质的实施例的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
本发明实施例的第一个方面,提出了一种数据缓存的方法的实施例。图1示出的是本发明提供的数据缓存的方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:
S1、在RAID管理芯片上设置片上缓存;
S2、从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及
S3、将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。
RAID技术通过将多个独立的存储介质(SSD或者HDD硬盘)有机的结合成一个整体,对上位机呈现为一个带数据冗余保护的存储设备,并响应上位机的管理和读/写IO请求。以RAID0为例,它将上位机的一次IO请求变为对多个独立存储介质的并发操作,从而提高了整体的带宽和时延性能。本发明实施例特别的针对NVMe SSD组RAID,并基于硬件进行的RAID加速场景,引入OCB(片上缓存)作为数据缓存,在提供了高存储带宽的同时,仅需要有限数MB级别的缓存空间,可以大幅度的提高RAID写IO性能。
在RAID管理芯片上设置片上缓存。从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据。
在一些实施方式中,所述根据当前RAID组的类型和所述新的数据计算得到新的校验数据包括:响应于RAID组为第一类型,根据所述新的数据的大小确定计算所述新的校验数据的方式;以及响应于RAID组为第二类型,根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据。
在一些实施方式中,所述根据所述新的数据的大小确定计算所述新的校验数据的方式包括:响应于所述新的数据不超过第一阈值,根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据;以及响应于所述新的数据超过第一阈值,根据所述新的数据计算得到所述新的校验数据。例如,第一阈值可以是4KB,如果新的数据不超过4KB,就根据新的数据、新的数据对应的原始数据以及原始校验数据计算得到新的校验数据,如果新的数据超过4KB,就根据新的数据计算得到所述新的校验数据。
图2为本发明提供的第一类型进行数据缓存的实施例的示意图,本发明中第一类型以RAID5为例进行说明。
如图2所示为一次RAID5的4KB数据随机写IO处理流程,箭头上的数字序号为可能的数据操作顺序。D’为主机新的数据,D为硬盘上对应的将要被覆盖的原始数据,P为原始校验数据,P’为新计算出的校验数据,它们的大小均为4KB,不同于常规的基于DDR的数据缓存,本发明RAID处理相关数据缓存于RAID处理芯片内存储介质中。
在一些实施方式中,所述根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据包括:从第一数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,并从第一校验硬盘上读取所述原始校验数据到所述片上缓存中。
在一些实施方式中,所述方法还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述原始校验数据写入所述片上缓存的第三空间,并将所述新的校验数据写入所述片上缓存的第四空间。也即是,如图2所示,从主机DDR将新的数据D’读取到片上缓存空间U;从对应的SSD上读取新的数据对应的原始数据D到片上缓存空间V;从对应的SSD上读取原始校验数据P到片上缓存空间W;通过D’,D和P计算出新的校验数据P’并将其存储到片上缓存空间X。
将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据发送到所述第一数据硬盘中,并将所述新的校验数据发送到所述第一校验硬盘中。也即是,将新的数据D’落盘到对应SSD,将新的校验数据P’落盘到对应SSD。
在一些实施方式中,所述方法还包括:并发执行从主机DDR读取所述新的数据、从所述第一数据硬盘上读取所述新的数据对应的原始数据以及从所述第一校验硬盘上读取所述原始校验数据。
在一些实施方式中,所述方法还包括:并发执行将所述新的数据落盘到所述第一数据硬盘中以及将所述新的校验数据落盘到所述第一校验硬盘中。
针对NVMe SSD,设定NVMe SSD盘读IO延时为
Figure 471429DEST_PATH_IMAGE001
,写IO延时为
Figure 87219DEST_PATH_IMAGE002
,RAID计算处理耗时为
Figure 272475DEST_PATH_IMAGE003
,则单个IO处理时长可以近似的等于
Figure 719636DEST_PATH_IMAGE004
。设定系统的小IO(4KB)随机写的IOPS 设计目标值为
Figure 315834DEST_PATH_IMAGE005
,那么需要的片上缓存大小为:
Figure 746815DEST_PATH_IMAGE006
;片上缓存带 宽为:
Figure 765456DEST_PATH_IMAGE007
。为了进一步的缩短单次IO的处理时延,将上述步骤并发执行,那么单 次IO的延时可以缩短为
Figure 473649DEST_PATH_IMAGE008
,相应的所需的片上缓存大小可以减少为:
Figure 365381DEST_PATH_IMAGE009
;在上述处理过程中,也可以将P’存储到空间W中,覆盖原始校 验数据,相应的所需的片上缓存空间为:
Figure 644178DEST_PATH_IMAGE010
图3为本发明提供的第一类型进行数据缓存的另一实施例的示意图,如图3所示为一次RAID5(5块硬盘组RAID5,条带单元大小为64KB)的256KB写IO处理流程,RAID加速管理芯片内部会将其按照满条带聚合并处理。D’是256KB的新的数据,P’为64KB计算得到的新的校验数据。本发明RAID处理相关数据缓存于RAID处理芯片内存储介质中。
在一些实施方式中,所述方法还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的校验数据写入所述片上缓存的第四空间。如图3所示,从主机DDR将新的数据D’(256KB)读取到片上缓存空间U;通过D’计算出新的校验数据P’并将其存储到片上存储空间X。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据平均分成多个部分,将每个部分传输到每个对应的数据硬盘,并将所述新的校验数据传输到对应的校验硬盘。如图3所示,将第一部分新数据D’(64KB)落盘到对应SSD;将第二部分新数据D’(64KB)落盘到对应SSD;将第三部分新数据D’(64KB)落盘到对应SSD;将第四部分新数据D’(64KB)落盘到对应SSD;将新的校验数据P’(64KB)落盘到对应SSD。
在一些实施方式中,所述方法还包括:并发执行将所述新的数据的每个部分传输到每个对应的数据硬盘。
更一般的,针对“
Figure 545138DEST_PATH_IMAGE011
”盘组RAID5/RAID6(
Figure 842258DEST_PATH_IMAGE012
为数据盘数量,
Figure 170472DEST_PATH_IMAGE013
为校验盘数量, RAID5场景下
Figure 435100DEST_PATH_IMAGE014
,RAID6场景下
Figure 811854DEST_PATH_IMAGE015
),设定NVMe接口的SSD写延时为
Figure 353694DEST_PATH_IMAGE002
,RAID计算处理 耗时为
Figure 478907DEST_PATH_IMAGE003
,系统设定的顺序写带宽设计目标为
Figure 106198DEST_PATH_IMAGE016
那么所需要的片上缓存大小为:
Figure 224326DEST_PATH_IMAGE017
;片上缓存带宽为:
Figure 355093DEST_PATH_IMAGE018
为了进一步的缩短单次IO的处理时延,按照上述并发执行,那么单次IO的延时可 以缩短为
Figure 149743DEST_PATH_IMAGE019
相应的所需的片上缓存大小可以减少为:
Figure 264329DEST_PATH_IMAGE020
图4为本发明提供的第二类型进行数据缓存的实施例的示意图。本发明实施例第二类型以RAID6为例进行说明。
如图4所示为一次RAID6的4KB数据随机写IO处理流程,箭头上的数字序号为可能的数据操作顺序。D’为主机新写入数据,D为硬盘上对应的将要被覆盖的原始数据,P/Q为第一原始校验数据和第二原始校验数据,P’/Q’为新计算出的第一校验数据和第二校验数据,它们的大小均为4KB,不同于常规的基于DDR的数据缓存,本发明RAID处理相关数据缓存于RAID处理芯片内存储介质中。
在一些实施方式中,所述根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据包括:根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到新的第一校验数据和第二校验数据。
在一些实施方式中,所述方法还包括:从第二数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,从第二校验硬盘上读取所述第一原始校验数据到所述片上缓存中,并从第三校验硬盘上读取所述第二原始校验数据到所述片上缓存中。
在一些实施方式中,所述方法还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述第一原始校验数据写入所述片上缓存的第三空间,将所述第二原始校验数据写入所述片上缓存的第四空间,将所述新的第一校验数据写入所述片上缓存的第五空间,并将所述新的第二校验数据写入所述片上缓存的第六空间。如图4所示,从主机DDR将新的数据D’读取到片上缓存空间U;从对应的SSD上读取老数据D到片上缓存空间V;从对应的SSD上读取老校验数据P到片上缓存空间W;从对应的SSD上读取老校验数据Q到片上缓存空间X;通过D’,D,P和Q计算出新的校验数据P’和Q’并将其存储到片上缓存空间Y和Z。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据发送到所述第二数据硬盘,将所述新的第一校验数据发送到所述第二校验硬盘,并将所述新的第二校验数据发送到所述第三校验硬盘。也即是将新的数据D’落盘到对应SSD;将新的校验数据P’和Q’落盘到对应SSD。
在一些实施方式中,所述方法还包括:并发执行从主机DDR读取所述新的数据、从所述第二数据硬盘上读取所述新的数据对应的原始数据、从所述第二校验硬盘上读取所述第一原始校验数据以及从所述第三校验硬盘上读取所述第二原始校验数据。
在一些实施方式中,所述方法还包括:并发执行将所述新的数据落盘到所述第二数据硬盘中、将所述新的第一校验数据落盘到所述第二校验硬盘中以及将所述新的第二校验数据落盘到所述第三校验硬盘中。
针对NVMe SSD,设定NVMe SSD盘读IO延时为
Figure 920570DEST_PATH_IMAGE001
,写IO延时为
Figure 437002DEST_PATH_IMAGE002
,RAID计算处理耗时为
Figure 712474DEST_PATH_IMAGE003
,则单个IO处理时长可以近似的等于
Figure 189723DEST_PATH_IMAGE021
。设定系统的小IO(4KB)随机写的IOPS 设计目标值为
Figure 774288DEST_PATH_IMAGE005
。那么需要的片上缓存大小为:
Figure 269860DEST_PATH_IMAGE022
,片上缓存带 宽为:
Figure 281679DEST_PATH_IMAGE023
为了进一步的缩短单次IO的处理时延,按照上述并发执行,那么单次IO的延时可 以缩短为
Figure 715065DEST_PATH_IMAGE008
,相应的所需的片上缓存大小可以减少为:
Figure 103321DEST_PATH_IMAGE024
。在上述处理过程中,也可以将P’和Q’存储到空间W和X中,覆盖原始校验数据,相应的所需 的片上缓存空间为:
Figure 954865DEST_PATH_IMAGE025
随着NVMe SSD的接口逐步支持到PCIe Gen5,虽然对RAID芯片的片上缓存空间的 需求只有数十MB级别,但对OCB的带宽需求可能需要几百个GB/s以上,这对工程实现也带来 了挑战。本发明引入了多片OCB的方案,通过多个并联通道来实现整体性能的达成,其结构 示意图如图5所示,由
Figure 137584DEST_PATH_IMAGE012
片OCB组成,每片OCB达成1/n的容量和带宽。
需要特别指出的是,上述数据缓存的方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于数据缓存的方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种数据缓存的系统。如图2所示,系统200包括如下模块:设置模块,配置用于在RAID管理芯片上设置片上缓存;计算模块,配置用于从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及发送模块,配置用于将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。
在一些实施方式中,所述计算模块配置用于:响应于RAID组为第一类型,根据所述新的数据的大小确定计算所述新的校验数据的方式;以及响应于RAID组为第二类型,根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据。
在一些实施方式中,所述计算模块配置用于:响应于所述新的数据不超过第一阈值,根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据;以及响应于所述新的数据超过第一阈值,根据所述新的数据计算得到所述新的校验数据。
在一些实施方式中,所述计算模块配置用于:从第一数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,并从第一校验硬盘上读取所述原始校验数据到所述片上缓存中。
在一些实施方式中,所述系统还包括写入模块,配置用于:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述原始校验数据写入所述片上缓存的第三空间,并将所述新的校验数据写入所述片上缓存的第四空间。
在一些实施方式中,所述发送模块配置用于:将所述新的数据发送到所述第一数据硬盘中,并将所述新的校验数据发送到所述第一校验硬盘中。
在一些实施方式中,所述系统还包括第一执行模块,配置用于:并发执行从主机DDR读取所述新的数据、从所述第一数据硬盘上读取所述新的数据对应的原始数据以及从所述第一校验硬盘上读取所述原始校验数据。
在一些实施方式中,所述系统还包括第二执行模块,配置用于:并发执行将所述新的数据落盘到所述第一数据硬盘中以及将所述新的校验数据落盘到所述第一校验硬盘中。
在一些实施方式中,所述系统还包括第二写入模块,配置用于:将所述新的数据写入所述片上缓存的第一空间,将所述新的校验数据写入所述片上缓存的第四空间。
在一些实施方式中,所述发送模块配置用于:将所述新的数据平均分成多个部分,将每个部分传输到每个对应的数据硬盘,并将所述新的校验数据传输到对应的校验硬盘。
在一些实施方式中,所述系统还包括第三执行模块,配置用于:并发执行将所述新的数据的每个部分传输到每个对应的数据硬盘。
在一些实施方式中,所述计算模块配置用于:根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到新的第一校验数据和第二校验数据。
在一些实施方式中,所述系统还包括读取模块,配置用于:从第二数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,从第二校验硬盘上读取所述第一原始校验数据到所述片上缓存中,并从第三校验硬盘上读取所述第二原始校验数据到所述片上缓存中。
在一些实施方式中,所述系统还包括第三写入模块,配置用于:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述第一原始校验数据写入所述片上缓存的第三空间,将所述第二原始校验数据写入所述片上缓存的第四空间,将所述新的第一校验数据写入所述片上缓存的第五空间,并将所述新的第二校验数据写入所述片上缓存的第六空间。
在一些实施方式中,所述发送模块配置用于:将所述新的数据发送到所述第二数据硬盘,将所述新的第一校验数据发送到所述第二校验硬盘,并将所述新的第二校验数据发送到所述第三校验硬盘。
在一些实施方式中,所述系统还包括第四执行模块,配置用于:并发执行从主机DDR读取所述新的数据、从所述第二数据硬盘上读取所述新的数据对应的原始数据、从所述第二校验硬盘上读取所述第一原始校验数据以及从所述第三校验硬盘上读取所述第二原始校验数据。
在一些实施方式中,所述系统还包括第五执行模块,配置用于:并发执行将所述新的数据落盘到所述第二数据硬盘中、将所述新的第一校验数据落盘到所述第二校验硬盘中以及将所述新的第二校验数据落盘到所述第三校验硬盘中。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行以实现如下步骤:S1、在RAID管理芯片上设置片上缓存;S2、从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及S3、将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中。
在一些实施方式中,所述根据当前RAID组的类型和所述新的数据计算得到新的校验数据包括:响应于RAID组为第一类型,根据所述新的数据的大小确定计算所述新的校验数据的方式;以及响应于RAID组为第二类型,根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据。
在一些实施方式中,所述根据所述新的数据的大小确定计算所述新的校验数据的方式包括:响应于所述新的数据不超过第一阈值,根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据;以及响应于所述新的数据超过第一阈值,根据所述新的数据计算得到所述新的校验数据。
在一些实施方式中,所述根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据包括:从第一数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,并从第一校验硬盘上读取所述原始校验数据到所述片上缓存中。
在一些实施方式中,所述步骤还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述原始校验数据写入所述片上缓存的第三空间,并将所述新的校验数据写入所述片上缓存的第四空间。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据发送到所述第一数据硬盘中,并将所述新的校验数据发送到所述第一校验硬盘中。
在一些实施方式中,所述步骤还包括:并发执行从主机DDR读取所述新的数据、从所述第一数据硬盘上读取所述新的数据对应的原始数据以及从所述第一校验硬盘上读取所述原始校验数据。
在一些实施方式中,所述步骤还包括:并发执行将所述新的数据落盘到所述第一数据硬盘中以及将所述新的校验数据落盘到所述第一校验硬盘中。
在一些实施方式中,所述步骤还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的校验数据写入所述片上缓存的第四空间。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据平均分成多个部分,将每个部分传输到每个对应的数据硬盘,并将所述新的校验数据传输到对应的校验硬盘。
在一些实施方式中,所述步骤还包括:并发执行将所述新的数据的每个部分传输到每个对应的数据硬盘。
在一些实施方式中,所述根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据包括:根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到新的第一校验数据和第二校验数据。
在一些实施方式中,所述步骤还包括:从第二数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,从第二校验硬盘上读取所述第一原始校验数据到所述片上缓存中,并从第三校验硬盘上读取所述第二原始校验数据到所述片上缓存中。
在一些实施方式中,所述步骤还包括:将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述第一原始校验数据写入所述片上缓存的第三空间,将所述第二原始校验数据写入所述片上缓存的第四空间,将所述新的第一校验数据写入所述片上缓存的第五空间,并将所述新的第二校验数据写入所述片上缓存的第六空间。
在一些实施方式中,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:将所述新的数据发送到所述第二数据硬盘,将所述新的第一校验数据发送到所述第二校验硬盘,并将所述新的第二校验数据发送到所述第三校验硬盘。
在一些实施方式中,所述步骤还包括:并发执行从主机DDR读取所述新的数据、从所述第二数据硬盘上读取所述新的数据对应的原始数据、从所述第二校验硬盘上读取所述第一原始校验数据以及从所述第三校验硬盘上读取所述第二原始校验数据。
在一些实施方式中,所述步骤还包括:并发执行将所述新的数据落盘到所述第二数据硬盘中、将所述新的第一校验数据落盘到所述第二校验硬盘中以及将所述新的第二校验数据落盘到所述第三校验硬盘中。
如图3所示,为本发明提供的上述数据缓存的计算机设备的一个实施例的硬件结构示意图。
以如图3所示的装置为例,在该装置中包括一个处理器301以及一个存储器302。
处理器301和存储器302可以通过总线或者其他方式连接,图3中以通过总线连接为例。
存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的数据缓存的方法对应的程序指令/模块。处理器301通过运行存储在存储器302中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现数据缓存的方法。
存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据数据缓存的方法的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器302可选包括相对于处理器301远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个数据缓存的方法对应的计算机指令303存储在存储器302中,当被处理器301执行时,执行上述任意方法实施例中的数据缓存的方法。
执行上述数据缓存的方法的计算机设备的任何一个实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时执行数据缓存的方法的计算机程序。
如图4所示,为本发明提供的上述数据缓存的计算机存储介质的一个实施例的示意图。以如图4所示的计算机存储介质为例,计算机可读存储介质401存储有被处理器执行时执行如上方法的计算机程序402。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,数据缓存的方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (19)

1.一种数据缓存的方法,其特征在于,包括如下步骤:
在RAID管理芯片上设置片上缓存;
从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及
将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中,
所述根据当前RAID组的类型和所述新的数据计算得到新的校验数据包括:
响应于RAID组为第一类型,根据所述新的数据的大小确定计算所述新的校验数据的方式,
所述根据所述新的数据的大小确定计算所述新的校验数据的方式包括:
响应于所述新的数据不超过第一阈值,根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据;以及
响应于所述新的数据超过第一阈值,根据所述新的数据计算得到所述新的校验数据,
其中,所述新的数据对应的原始数据是指所述新的数据在硬盘上对应的将要被覆盖的原始数据。
2.根据权利要求1所述的方法,其特征在于,所述根据当前RAID组的类型和所述新的数据计算得到新的校验数据包括:
响应于RAID组为第二类型,根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据。
3.根据权利要求2所述的方法,其特征在于,所述根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据包括:
从第一数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,并从第一校验硬盘上读取所述原始校验数据到所述片上缓存中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述原始校验数据写入所述片上缓存的第三空间,并将所述新的校验数据写入所述片上缓存的第四空间。
5.根据权利要求4所述的方法,其特征在于,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:
将所述新的数据发送到所述第一数据硬盘中,并将所述新的校验数据发送到所述第一校验硬盘中。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
并发执行从主机DDR读取所述新的数据、从所述第一数据硬盘上读取所述新的数据对应的原始数据以及从所述第一校验硬盘上读取所述原始校验数据。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
并发执行将所述新的数据落盘到所述第一数据硬盘中以及将所述新的校验数据落盘到所述第一校验硬盘中。
8.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将所述新的数据写入所述片上缓存的第一空间,将所述新的校验数据写入所述片上缓存的第四空间。
9.根据权利要求8所述的方法,其特征在于,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:
将所述新的数据平均分成多个部分,将每个部分传输到每个对应的数据硬盘,并将所述新的校验数据传输到对应的校验硬盘。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
并发执行将所述新的数据的每个部分传输到每个对应的数据硬盘。
11.根据权利要求2所述的方法,其特征在于,所述根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到所述新的校验数据包括:
根据所述新的数据、所述新的数据对应的原始数据、第一原始校验数据和第二原始校验数据计算得到新的第一校验数据和第二校验数据。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
从第二数据硬盘上读取所述新的数据对应的原始数据到所述片上缓存中,从第二校验硬盘上读取所述第一原始校验数据到所述片上缓存中,并从第三校验硬盘上读取所述第二原始校验数据到所述片上缓存中。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
将所述新的数据写入所述片上缓存的第一空间,将所述新的数据对应的原始数据写入所述片上缓存的第二空间,将所述第一原始校验数据写入所述片上缓存的第三空间,将所述第二原始校验数据写入所述片上缓存的第四空间,将所述新的第一校验数据写入所述片上缓存的第五空间,并将所述新的第二校验数据写入所述片上缓存的第六空间。
14.根据权利要求13所述的方法,其特征在于,所述将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中包括:
将所述新的数据发送到所述第二数据硬盘,将所述新的第一校验数据发送到所述第二校验硬盘,并将所述新的第二校验数据发送到所述第三校验硬盘。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
并发执行从主机DDR读取所述新的数据、从所述第二数据硬盘上读取所述新的数据对应的原始数据、从所述第二校验硬盘上读取所述第一原始校验数据以及从所述第三校验硬盘上读取所述第二原始校验数据。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
并发执行将所述新的数据落盘到所述第二数据硬盘中、将所述新的第一校验数据落盘到所述第二校验硬盘中以及将所述新的第二校验数据落盘到所述第三校验硬盘中。
17.一种数据缓存的系统,其特征在于,包括:
设置模块,配置用于在RAID管理芯片上设置片上缓存;
计算模块,配置用于从主机DDR中将新的数据读取到所述片上缓存中,并根据当前RAID组的类型和所述新的数据计算得到新的校验数据;以及
发送模块,配置用于将所述新的数据发送到RAID组对应的数据硬盘中,并将所述新的校验数据发送到RAID组对应的校验硬盘中,
所述计算模块配置用于:
响应于RAID组为第一类型,根据所述新的数据的大小确定计算所述新的校验数据的方式,
所述计算模块还配置用于:
响应于所述新的数据不超过第一阈值,根据所述新的数据、所述新的数据对应的原始数据以及原始校验数据计算得到所述新的校验数据;以及
响应于所述新的数据超过第一阈值,根据所述新的数据计算得到所述新的校验数据,
其中,所述新的数据对应的原始数据是指所述新的数据在硬盘上对应的将要被覆盖的原始数据。
18.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-16任意一项所述方法的步骤。
19.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-16任意一项所述方法的步骤。
CN202211634314.8A 2022-12-19 2022-12-19 一种数据缓存的方法、系统、设备和存储介质 Active CN115617742B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211634314.8A CN115617742B (zh) 2022-12-19 2022-12-19 一种数据缓存的方法、系统、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211634314.8A CN115617742B (zh) 2022-12-19 2022-12-19 一种数据缓存的方法、系统、设备和存储介质

Publications (2)

Publication Number Publication Date
CN115617742A CN115617742A (zh) 2023-01-17
CN115617742B true CN115617742B (zh) 2023-03-28

Family

ID=84880526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211634314.8A Active CN115617742B (zh) 2022-12-19 2022-12-19 一种数据缓存的方法、系统、设备和存储介质

Country Status (1)

Country Link
CN (1) CN115617742B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115826882B (zh) * 2023-02-15 2023-05-30 苏州浪潮智能科技有限公司 一种存储方法、装置、设备及存储介质
CN117055822B (zh) * 2023-10-11 2024-02-06 苏州元脑智能科技有限公司 NVME SSD Raid卡板载备电系统及控制方法
CN117851304A (zh) * 2024-03-07 2024-04-09 济南浪潮数据技术有限公司 一种硬盘更换方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539842A (zh) * 2009-04-27 2009-09-23 杭州华三通信技术有限公司 磁盘阵列系统的数据写入方法及磁盘阵列系统
CN102122235A (zh) * 2011-01-24 2011-07-13 武汉固捷联讯科技有限公司 一种raid4系统及其数据读写方法
CN107885613A (zh) * 2017-11-09 2018-04-06 郑州云海信息技术有限公司 一种基于raid5的数据写入方法、装置及介质
CN113391947A (zh) * 2021-06-22 2021-09-14 深圳忆联信息系统有限公司 Ssd raid条带掉电快速恢复方法、装置、计算机设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539842A (zh) * 2009-04-27 2009-09-23 杭州华三通信技术有限公司 磁盘阵列系统的数据写入方法及磁盘阵列系统
CN102122235A (zh) * 2011-01-24 2011-07-13 武汉固捷联讯科技有限公司 一种raid4系统及其数据读写方法
CN107885613A (zh) * 2017-11-09 2018-04-06 郑州云海信息技术有限公司 一种基于raid5的数据写入方法、装置及介质
CN113391947A (zh) * 2021-06-22 2021-09-14 深圳忆联信息系统有限公司 Ssd raid条带掉电快速恢复方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN115617742A (zh) 2023-01-17

Similar Documents

Publication Publication Date Title
CN115617742B (zh) 一种数据缓存的方法、系统、设备和存储介质
CN102122235B (zh) 一种raid4系统及其数据读写方法
US9483404B2 (en) Write admittance policy for a memory cache
US9176810B2 (en) Bit error reduction through varied data positioning
US10592110B2 (en) Techniques for dynamically adjusting over-provisioning space of a flash controller based on workload characteristics
US9263102B2 (en) Apparatus, system, and method for data transformations within a data storage device
US9645758B2 (en) Apparatus, system, and method for indexing data of an append-only, log-based structure
CN103049222B (zh) 一种raid5的写io优化处理方法
US8972478B1 (en) Using append only log format in data storage cluster with distributed zones for determining parity of reliability groups
US8806111B2 (en) Apparatus, system, and method for backing data of a non-volatile storage device using a backing store
US20130080679A1 (en) System and method for optimizing thermal management for a storage controller cache
US20160179403A1 (en) Storage controller, storage device, storage system, and semiconductor storage device
WO2016090541A1 (zh) 数据存储系统和数据存储方法
US20130290613A1 (en) Storage system and storage apparatus
WO2014169015A1 (en) Multiprocessor system with independent direct access to bulk solid state memory resources
CN109358809B (zh) 一种raid数据存储系统及方法
CN103019893A (zh) 一种多盘容错的二维混合盘raid4系统架构及其读写方法
CN110502188A (zh) 一种基于数据库读写性能的数据存储方法与装置
CN116126251B (zh) 一种实现多并发写入的方法、控制器和固态存储设备
US11625193B2 (en) RAID storage device, host, and RAID system
CN103645995B (zh) 写数据的方法及装置
WO2022007225A1 (zh) 数据存储方法、存储系统、存储设备及存储介质
CN110737395B (zh) I/o管理方法、电子设备和计算机可读存储介质
CN111949624A (zh) 一种数据重删操作的pl超限控制方法、装置及可读存储介质
CN117348789A (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
GR01 Patent grant
GR01 Patent grant