一种数据写入方法、装置、电子设备及存储介质制造方法及图纸

技术编号:27609638 阅读:29 留言:0更新日期:2021-03-10 10:35
本申请公开了一种数据写入方法,应用于RAID5系统,包括:接收数据写入指令,并根据所述数据写入指令确定目标条带;确定所述目标条带中的第一数据块和第二数据块;根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量;在所述第一数据块中写入所述数据写入指令对应的新数据,根据所述第一数据块中的新数据和所述临时变量计算新校验值并将所述新校验值写入所述校验块。本申请能够降低存储系统放大写系数,提高数据写入效率。本申请还公开了一种数据写入装置、一种电子设备及一种存储介质,具有以上有益效果。具有以上有益效果。具有以上有益效果。

【技术实现步骤摘要】
一种数据写入方法、装置、电子设备及存储介质


[0001]本申请涉及数据存储
,特别涉及一种数据写入方法、装置、一种电子设备及一种存储介质。

技术介绍

[0002]在数据存储领域,系统处理数据的效率是影响系统整机性能的关键因素。在整个数据处理流程中,硬盘的读写操作非常耗时,但是在处理用户数据时不可避免的存在写放大情况,即访盘数据量会大于实际用户写入数据量,从而增加系统处理时间。
[0003]因此,如何降低存储系统放大写系数,提高数据写入效率是本领域技术人员目前需要解决的技术问题。

技术实现思路

[0004]本申请的目的是提供一种数据写入方法、装置、一种电子设备及一种存储介质,能够降低存储系统放大写系数,提高数据写入效率。
[0005]为解决上述技术问题,本申请提供一种数据写入方法,应用于RAID5系统,该数据写入方法包括:
[0006]接收数据写入指令,并根据所述数据写入指令确定目标条带;其中,所述目标条带包括数据块和校验块;
[0007]确定所述目标条带中的第一数据块和第二数据块;其中,所述第一数据块为用于写入所述数据写入指令对应的新数据的数据块,所述第二数据块为所述目标条带中除所述第一数据块之外的其他数据块;
[0008]根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量;其中,所述临时变量为所有所述第二数据块中的原始数据的异或计算结果;
[0009]在所述第一数据块中写入所述数据写入指令对应的新数据,根据所述第一数据块中的新数据和所述临时变量计算新校验值并将所述新校验值写入所述校验块。
[0010]可选的,在将所述校验值写入所述校验块之后,还包括:
[0011]根据所述数据写入指令对应的新数据、所述第一数据块对应的原始数据、所述校验块对应的原始校验值、所述校验块中的新校验值计算写放大系数,并将所述写放大系数显示至用户界面。
[0012]可选的,根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量,包括:
[0013]将所有所述第一数据块中的原始数据和所述校验块中的原始校验值进行异或计算得到异或计算结果,并将所述异或计算结果作为所述临时变量;其中,所述原始校验值由所有所述第一数据块和所有所述第二数据块中的原始数据进行异或计算得到。
[0014]可选的,根据所述第一数据块中的新数据和所述临时变量计算新校验值,包括:
[0015]将所有所述第一数据块中的新数据和所述临时变量进行异或计算得到所述新校
验值。
[0016]可选的,将所述新校验值写入所述校验块包括:
[0017]删除所述校验块中的原始校验值,并将所述新校验值写入所述校验块。
[0018]可选的,确定所述目标条带中的第一数据块和第二数据块,包括:
[0019]确定所述数据写入指令对应的新数据大小;
[0020]按照数据块编号从小到大的顺序在所述目标条带中选取N个数据块作为所述第一数据块;其中,所有所述数据块的数据容量总和大于或等于所述新数据大小;
[0021]将所述目标条带中除了所述第一数据块之外的其他数据块作为所述第二数据块。
[0022]可选的,在根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量之后,还包括:
[0023]将所述临时变量存储至目标文件夹;
[0024]若用于写入下一条数据写入指令对应的新数据的数据块为所有所述第一数据块,则从所述目标文件夹中读取所述临时变量,并利用所述临时变量更新所述校验块中的校验值。
[0025]本申请还提供了一种数据写入装置,应用于RAID5系统,该装置包括:
[0026]条带确定模块,用于接收数据写入指令,并根据所述数据写入指令确定目标条带;其中,所述目标条带包括数据块和校验块;
[0027]数据块确定模块,用于确定所述目标条带中的第一数据块和第二数据块;其中,所述第一数据块为用于写入所述数据写入指令对应的新数据的数据块,所述第二数据块为所述目标条带中除所述第一数据块之外的其他数据块;
[0028]临时变量计算模块,用于根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量;其中,所述临时变量为所有所述第二数据块中的原始数据的异或计算结果;
[0029]数据写入模块,用于在所述第一数据块中写入所述数据写入指令对应的新数据,根据所述第一数据块中的新数据和所述临时变量计算新校验值并将所述新校验值写入所述校验块。
[0030]本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述数据写入方法执行的步骤。
[0031]本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述数据写入方法执行的步骤。
[0032]本申请提供了一种数据写入方法,包括:接收数据写入指令,并根据所述数据写入指令确定目标条带;其中,所述目标条带包括数据块和校验块;确定所述目标条带中的第一数据块和第二数据块;其中,所述第一数据块为用于写入所述数据写入指令对应的新数据的数据块,所述第二数据块为所述目标条带中除所述第一数据块之外的其他数据块;根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量;其中,所述临时变量为所有所述第二数据块中的原始数据的异或计算结果;在所述第一数据块中写入所述数据写入指令对应的新数据,根据所述第一数据块中的新数据和所述临时变量计算新校验值并将所述新校验值写入所述校验块。
[0033]本申请在接收到数据写入指令之后,确定需要写入数据的目标条带,并根据是否写入数据写入指令对应的新数据将目标条带中的数据块划分为第一数据块和第二数据块。由于校验块中的校验值为根据目标条带中所有数据块的数据进行异或计算得到,因此通过对校验值和所有第一数据块的原始数据进行抑或计算得到所有第二数据块中数据进行异或计算的结果,即得到临时变量。由于在将新数据写入第一数据块之后,需要读取第二数据块中的数据来计算新校验值,因此本申请将临时变量作为第二数据块中数据的异或计算结果与第一数据块中的新数据来计算新校验值,在上述过程中无需重复读取每一个第二数据块中的原始数据,降低了计算校验值过程所需要读取的数据量。可见,本申请能够降低存储系统放大写系数,提高数据写入效率。本申请同时还提供了一种数据写入装置、一种电子设备和一种存储介质,具有上述有益效果,在此不再赘述。
附图说明
[0034]为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035]图1为本申请实施例所提供的一种数据写入方法的流程图;
[0036]图2为本申请实施例所提供的一种数据写入装置的结构示意图。...

【技术保护点】

【技术特征摘要】
1.一种数据写入方法,其特征在于,应用于RAID5系统,包括:接收数据写入指令,并根据所述数据写入指令确定目标条带;其中,所述目标条带包括数据块和校验块;确定所述目标条带中的第一数据块和第二数据块;其中,所述第一数据块为用于写入所述数据写入指令对应的新数据的数据块,所述第二数据块为所述目标条带中除所述第一数据块之外的其他数据块;根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量;其中,所述临时变量为所有所述第二数据块中的原始数据的异或计算结果;在所述第一数据块中写入所述数据写入指令对应的新数据,根据所述第一数据块中的新数据和所述临时变量计算新校验值并将所述新校验值写入所述校验块。2.根据权利要求1所述数据写入方法,其特征在于,在将所述校验值写入所述校验块之后,还包括:根据所述数据写入指令对应的新数据、所述第一数据块对应的原始数据、所述校验块对应的原始校验值、所述校验块中的新校验值计算写放大系数,并将所述写放大系数显示至用户界面。3.根据权利要求1所述数据写入方法,其特征在于,根据所述第一数据块中的原始数据和所述校验块中的原始校验值计算临时变量,包括:将所有所述第一数据块中的原始数据和所述校验块中的原始校验值进行异或计算得到异或计算结果,并将所述异或计算结果作为所述临时变量;其中,所述原始校验值由所有所述第一数据块和所有所述第二数据块中的原始数据进行异或计算得到。4.根据权利要求1所述数据写入方法,其特征在于,根据所述第一数据块中的新数据和所述临时变量计算新校验值,包括:将所有所述第一数据块中的新数据和所述临时变量进行异或计算得到所述新校验值。5.根据权利要求1所述数据写入方法,其特征在于,将所述新校验值写入所述校验块包括:删除所述校验块中的原始校验值,并将所述新校验值写入所述校验块。6.根据权利要求1所述数据写入方法,其特征在于,确定所述目标条带中的第一数据块和第二数据块,包...

【专利技术属性】
技术研发人员:岳斌
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1