[go: up one dir, main page]

CN112052115B - Data storage erasure method, device, equipment and computer readable storage medium - Google Patents

Data storage erasure method, device, equipment and computer readable storage medium Download PDF

Info

Publication number
CN112052115B
CN112052115B CN202011041807.1A CN202011041807A CN112052115B CN 112052115 B CN112052115 B CN 112052115B CN 202011041807 A CN202011041807 A CN 202011041807A CN 112052115 B CN112052115 B CN 112052115B
Authority
CN
China
Prior art keywords
target
erasure
matrix
data
block
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
CN202011041807.1A
Other languages
Chinese (zh)
Other versions
CN112052115A (en
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.)
Inspur Computer Technology Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center 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 Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202011041807.1A priority Critical patent/CN112052115B/en
Publication of CN112052115A publication Critical patent/CN112052115A/en
Application granted granted Critical
Publication of CN112052115B publication Critical patent/CN112052115B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种数据存储纠删方法,该方法包括以下步骤:对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;获取目标数据纠删任务对应的目标资源块;利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。应用本发明实施例所提供的技术方案,较大地降低了对CPU计算资源的占用量,提高了资源利用率。本发明还公开了一种数据存储纠删装置、设备及存储介质,具有相应技术效果。

Figure 202011041807

The invention discloses a data storage erasure erasure method, which comprises the following steps: analyzing a received target data erasure task to obtain a target data block and a target matrix; obtaining a target resource block corresponding to the target data erasure task; The erasure operation is performed on the target data block and the target matrix by using the target resource block based on the time division multiplexing algorithm, and the erasure result is obtained. By applying the technical solutions provided by the embodiments of the present invention, the occupation of CPU computing resources is greatly reduced, and the resource utilization rate is improved. The invention also discloses a data storage and erasure correction device, equipment and storage medium, which have corresponding technical effects.

Figure 202011041807

Description

数据存储纠删方法、装置、设备及计算机可读存储介质Data storage erasure method, apparatus, device and computer readable storage medium

技术领域technical field

本发明涉及存储技术领域,特别是涉及一种数据存储纠删方法、装置、设备及计算机可读存储介质。The present invention relates to the field of storage technologies, and in particular, to a data storage erasure correction method, apparatus, device, and computer-readable storage medium.

背景技术Background technique

为了提高分布式存储系统的数据可靠性,保证数据收集节点能以很高的概率实现原始文件的重构,需要在存储原始数据的基础上,额外存储一定数量的冗余,使得在出现部分节点失效的情况下,系统仍然可以正常运行,数据收集节点仍然可以对原始文件实现解码恢复。同时,为了维持系统的可靠性,需要对失效的节点及时进行修复。In order to improve the data reliability of the distributed storage system and ensure that the data collection nodes can reconstruct the original files with a high probability, it is necessary to store a certain amount of redundancy on the basis of storing the original data, so that when some nodes appear In the case of failure, the system can still run normally, and the data collection node can still decode and recover the original file. At the same time, in order to maintain the reliability of the system, it is necessary to repair the failed nodes in time.

纠删码(Erasure Code)属于编码理论中的一种前向纠错技术,其在防止数据丢失取得了较好的效果,因此被引入存储领域应用。Erasure code (Erasure Code) belongs to a forward error correction technology in coding theory, which has achieved good results in preventing data loss, so it is introduced into the field of storage applications.

现在有的数据存储纠删方式为在编码任务或解码任务执行的过程中,分别为每路输出数据缓冲分配一个资源块,一个数据纠删任务可能会占用多个资源块,对CPU计算资源占用较多,资源利用率较低。At present, some data storage erasure methods are to allocate a resource block for each output data buffer during the execution of the encoding task or the decoding task. One data erasure task may occupy multiple resource blocks, which will occupy CPU computing resources. more, the resource utilization rate is lower.

综上所述,如何有效地解决现在有的数据存储纠删方式对CPU计算资源占用较多,资源利用率较低等问题,是目前本领域技术人员急需解决的问题。To sum up, how to effectively solve the problems that the current data storage erasure method occupies more CPU computing resources and lower resource utilization rate is a problem that those skilled in the art urgently need to solve.

发明内容SUMMARY OF THE INVENTION

本发明的目的是提供一种数据存储纠删方法,该方法较大地降低了对CPU计算资源的占用量,提高了资源利用率;本发明的另一目的是提供一种数据存储纠删装置、设备及计算机可读存储介质。The purpose of the present invention is to provide a data storage erasure correction method, which greatly reduces the occupancy of CPU computing resources and improves resource utilization; another purpose of the present invention is to provide a data storage erasure correction device, Devices and computer-readable storage media.

为解决上述技术问题,本发明提供如下技术方案:In order to solve the above-mentioned technical problems, the present invention provides the following technical solutions:

一种数据存储纠删方法,包括:A data storage erasure method, comprising:

对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;Analyze the received target data erasure task to obtain the target data block and target matrix;

获取所述目标数据纠删任务对应的目标资源块;obtaining the target resource block corresponding to the target data erasure task;

利用所述目标资源块基于时分复用算法对所述目标数据块和所述目标矩阵进行纠删运算,得到纠删结果。Using the target resource block to perform an erasure operation on the target data block and the target matrix based on a time division multiplexing algorithm, an erasure result is obtained.

在本发明的一种具体实施方式中,对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵,包括:In a specific embodiment of the present invention, the received target data erasure task is analyzed to obtain a target data block and a target matrix, including:

对接收到的目标数据纠删任务进行解析,得到目标纠删任务类型;Analyze the received target data erasure task to obtain the target erasure task type;

当所述目标纠删任务类型为编码时,获取目标原始数据块和目标编码矩阵;When the target erasure task type is encoding, obtain the target original data block and the target encoding matrix;

当所述目标纠删任务类型为解码时,获取所述目标剩余数据块、目标校验数据块、以及目标解码矩阵。When the target erasure erasure task type is decoding, the target remaining data block, the target check data block, and the target decoding matrix are acquired.

在本发明的一种具体实施方式中,当所述目标数据纠删任务的个数为多个时,获取所述目标数据纠删任务对应的目标资源块,包括:In a specific embodiment of the present invention, when the number of the target data erasure tasks is multiple, acquiring the target resource blocks corresponding to the target data erasure tasks includes:

获取当前空闲的各资源块;Get each resource block that is currently free;

利用所述目标资源块基于时分复用算法对所述目标数据块和所述目标矩阵进行纠删运算,包括:Using the target resource block to perform an erasure correction operation on the target data block and the target matrix based on a time division multiplexing algorithm, including:

利用各所述资源块基于所述时分复用算法对各目标数据块和各目标矩阵进行并行纠删运算。A parallel erasure correction operation is performed on each target data block and each target matrix by using each of the resource blocks based on the time division multiplexing algorithm.

在本发明的一种具体实施方式中,在对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵之后,还包括:In a specific embodiment of the present invention, after parsing the received target data erasure task to obtain the target data block and the target matrix, the method further includes:

获取所述目标数据块的数据大小;obtaining the data size of the target data block;

利用各所述资源块基于所述时分复用算法对各目标数据块和各目标矩阵进行并行纠删运算,包括:Using each of the resource blocks to perform parallel erasure operations on each target data block and each target matrix based on the time division multiplexing algorithm, including:

根据所述数据大小将各所述资源块时分复用分配给各目标数据块和各目标矩阵的矩阵行;Time-division multiplexing each of the resource blocks is allocated to each target data block and a matrix row of each target matrix according to the data size;

利用各所述资源块对各所述目标数据块和各所述矩阵行进行纠删运算。An erasure correction operation is performed on each of the target data blocks and each of the matrix rows by using each of the resource blocks.

一种数据存储纠删装置,包括:A data storage erasure device, comprising:

任务解析模块,用于对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;The task parsing module is used to parse the received target data erasure task to obtain the target data block and the target matrix;

资源块获得模块,用于获取所述目标数据纠删任务对应的目标资源块;a resource block obtaining module, configured to obtain a target resource block corresponding to the target data erasure task;

纠删结果获得模块,用于利用所述目标资源块基于时分复用算法对所述目标数据块和所述目标矩阵进行纠删运算,得到纠删结果。The erasure result obtaining module is configured to use the target resource block to perform an erasure operation on the target data block and the target matrix based on a time division multiplexing algorithm to obtain an erasure result.

在本发明的一种具体实施方式中,所述任务解析模块包括:In a specific embodiment of the present invention, the task analysis module includes:

任务类型获得子模块,用于对接收到的目标数据纠删任务进行解析,得到目标纠删任务类型;The task type obtaining sub-module is used to parse the received target data erasure task to obtain the target erasure task type;

第一输入数据获取子模块,用于当所述目标纠删任务类型为编码时,获取目标原始数据块和目标编码矩阵;The first input data acquisition submodule is used to acquire the target original data block and the target encoding matrix when the target erasure task type is encoding;

第二输入数据获取子模块,用于当所述目标纠删任务类型为解码时,获取目标剩余数据块、目标校验数据块、以及目标解码矩阵。The second input data acquisition sub-module is configured to acquire the target residual data block, the target check data block, and the target decoding matrix when the target erasure erasure task type is decoding.

在本发明的一种具体实施方式中,所述资源块获得模块具体为当所述目标数据纠删任务的个数为多个时,获取当前空闲的各资源块的模块;In a specific embodiment of the present invention, the resource block obtaining module is specifically a module for obtaining currently idle resource blocks when the number of the target data erasure tasks is multiple;

所述纠删结果获得模块具体为利用各所述目标资源块基于所述时分复用算法对各目标数据块和各目标矩阵进行并行纠删运算的模块。The erasure result obtaining module is specifically a module that uses each target resource block to perform a parallel erasure operation on each target data block and each target matrix based on the time division multiplexing algorithm.

在本发明的一种具体实施方式中,还包括:In a specific embodiment of the present invention, it also includes:

数据大小获取模块,用于在对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵之后,获取所述目标数据块的数据大小;a data size obtaining module, configured to obtain the data size of the target data block after parsing the received target data erasure task to obtain the target data block and the target matrix;

所述纠删结果获得模块包括:The erasure result obtaining module includes:

资源块分配子模块,用于根据所述数据大小将各所述资源块时分复用分配给各目标数据块和各目标矩阵的矩阵行;a resource block allocation submodule, configured to time-division multiplex each resource block and allocate it to each target data block and a matrix row of each target matrix according to the data size;

纠删运算子模块,用于利用各所述资源块对各所述目标数据块和各所述矩阵行进行纠删运算。The erasure erasure operation sub-module is configured to perform erasure operation on each of the target data blocks and each of the matrix rows by using each of the resource blocks.

一种数据存储纠删设备,包括:A data storage erasure device, comprising:

存储器,用于存储计算机程序;memory for storing computer programs;

处理器,用于执行所述计算机程序时实现如前所述数据存储纠删方法的步骤。The processor is configured to implement the steps of the aforementioned data storage erasure method when executing the computer program.

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述数据存储纠删方法的步骤。A computer-readable storage medium stores a computer program on the computer-readable storage medium, and when the computer program is executed by a processor, implements the steps of the foregoing method for data storage erasure correction.

应用本发明实施例所提供的方法,对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;获取目标数据纠删任务对应的目标资源块;利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。通过在获取到纠删处理所需的目标数据块和目标矩阵之后,采用时分复用算法在特定的目标资源块中实现纠删运算,相较于现有的为每路输出数据缓冲分配一个资源块的纠删方式,本发明较大地降低了对CPU计算资源的占用量,提高了资源利用率。By applying the method provided by the embodiment of the present invention, the received target data erasure task is analyzed to obtain the target data block and the target matrix; the target resource block corresponding to the target data erasure task is obtained; the target resource block is used based on time division multiplexing The algorithm performs the erasure operation on the target data block and the target matrix, and obtains the erasure result. After obtaining the target data block and target matrix required for erasure processing, the time division multiplexing algorithm is used to implement the erasure operation in a specific target resource block. Compared with the existing one, each output data buffer is allocated a resource. Block erasure mode, the present invention greatly reduces the occupancy of CPU computing resources and improves resource utilization.

相应的,本发明实施例还提供了与上述数据存储纠删方法相对应的数据存储纠删装置、设备和计算机可读存储介质,具有上述技术效果,在此不再赘述。Correspondingly, the embodiments of the present invention also provide a data storage and erasure correction device, device, and computer-readable storage medium corresponding to the above-mentioned data storage and erasure method, which have the above-mentioned technical effects, and are not repeated here.

附图说明Description of drawings

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to explain the embodiments of the present invention or the technical solutions in the prior art more clearly, the following briefly introduces the accompanying drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only These are some embodiments of the present invention. For those of ordinary skill in the art, other drawings can also be obtained according to these drawings without creative efforts.

图1为本发明实施例中数据存储纠删方法的一种实施流程图;Fig. 1 is a kind of implementation flow chart of the data storage erasure correction method in the embodiment of the present invention;

图2为本发明实施例中数据存储纠删方法的另一种实施流程图;Fig. 2 is another implementation flow chart of the data storage erasure correction method in the embodiment of the present invention;

图3为本单个硬件处理单元的结构框图;3 is a structural block diagram of a single hardware processing unit;

图4为现有技术中硬件处理纠删任务的资源划分示意图;4 is a schematic diagram of resource division of hardware processing erasure tasks in the prior art;

图5为本发明实施例中硬件处理纠删任务的资源划分示意图;5 is a schematic diagram of resource division of hardware processing erasure tasks in an embodiment of the present invention;

图6为本发明实施例中数据存储纠删方法的另一种实施流程图;Fig. 6 is another implementation flowchart of the data storage erasure correction method in the embodiment of the present invention;

图7为本发明实施例中一种数据存储纠删装置的结构框图;7 is a structural block diagram of a data storage erasure correction device in an embodiment of the present invention;

图8为本发明实施例中一种数据存储纠删设备的结构框图。FIG. 8 is a structural block diagram of a data storage erasure correction device in an embodiment of the present invention.

具体实施方式Detailed ways

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make those skilled in the art better understand the solution of the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, but not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

实施例一:Example 1:

参见图1,图1为本发明实施例中数据存储纠删方法的一种实施流程图,该方法可以包括以下步骤:Referring to FIG. 1, FIG. 1 is an implementation flowchart of a data storage erasure correction method in an embodiment of the present invention, and the method may include the following steps:

S101:对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵。S101: Analyze the received target data erasure task to obtain a target data block and a target matrix.

当对数据进行备份或预存储的备份数据丢失时,生成目标数据纠删任务,目标数据纠删任务中包含进行纠删处理所需的目标数据块和目标矩阵。向纠删处理中心发送目标数据纠删任务,纠删处理中心接收目标数据纠删任务,并对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵。When data is backed up or pre-stored backup data is lost, a target data erasure task is generated, and the target data erasure task includes target data blocks and target matrices required for erasure processing. Send the target data erasure task to the erasure processing center, and the erasure processing center receives the target data erasure task, analyzes the received target data erasure task, and obtains the target data block and the target matrix.

具体的,当目标数据纠删任务为编码任务时,目标数据块包括原始数据块,目标矩阵为预先写入到矩阵队列中的矩阵。当目标数据纠删任务为解码任务时,目标数据块包括原始数据块和校验数据块,目标矩阵为预先写入到矩阵队列中的矩阵。Specifically, when the target data erasure task is an encoding task, the target data block includes the original data block, and the target matrix is a matrix pre-written into the matrix queue. When the target data erasure task is a decoding task, the target data block includes the original data block and the check data block, and the target matrix is a matrix pre-written into the matrix queue.

S102:获取目标数据纠删任务对应的目标资源块。S102: Obtain a target resource block corresponding to the target data erasure task.

预先为目标数据纠删任务分配相应的目标资源块。在解析得到目标数据块和目标矩阵之后,获取目标数据纠删任务对应的目标资源块。The corresponding target resource blocks are allocated for the target data erasure task in advance. After the target data block and the target matrix are obtained by parsing, the target resource block corresponding to the target data erasure task is obtained.

S103:利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。S103: Use the target resource block to perform an erasure operation on the target data block and the target matrix based on a time division multiplexing algorithm, to obtain an erasure result.

在获取到目标数据纠删任务对应的目标资源块之后,利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。After obtaining the target resource block corresponding to the target data erasure task, use the target resource block to perform erasure operations on the target data block and the target matrix based on the time division multiplexing algorithm, and obtain the erasure result.

如采用RS(Reed-Solomon Code)码进行纠删处理,可以在第一时间段内利用目标资源块对目标数据块和目标矩阵中的第一矩阵行依次进行伽罗华域乘法运算和伽罗华域加法运算;在第二时间段内利用目标资源块对目标数据块和目标矩阵中的第二矩阵行依次进行伽罗华域乘法运算和伽罗华域加法运算;直到对目标数据块与目标矩阵中的各矩阵行均进行伽罗华域乘法运算和伽罗华域加法运算完成。通过在获取到纠删处理所需的目标数据块和目标矩阵之后,采用时分复用算法在特定的目标资源块中实现纠删运算,相较于现有的为每路输出数据缓冲分配一个资源块的纠删方式,本发明较大地降低了对CPU计算资源的占用量,提高了资源利用率。If the RS (Reed-Solomon Code) code is used for erasure processing, the target data block and the first matrix row in the target matrix can be used to perform Galois field multiplication and Galois field multiplication in the first time period. Galois field addition operation; use the target resource block to sequentially perform Galois field multiplication and Galois field addition operations on the target data block and the second matrix row in the target matrix within the second time period; Each matrix row in the target matrix is completed by Galois field multiplication and Galois field addition. After obtaining the target data block and target matrix required for erasure processing, the time division multiplexing algorithm is used to implement the erasure operation in a specific target resource block. Compared with the existing one, each output data buffer is allocated a resource. Block erasure mode, the present invention greatly reduces the occupancy of CPU computing resources and improves resource utilization.

应用本发明实施例所提供的方法,对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;获取目标数据纠删任务对应的目标资源块;利用目标资源块基于时分复用算法对目标数据块和目标矩阵中的各矩阵行进行纠删运算,得到纠删结果。通过在获取到纠删处理所需的目标数据块和目标矩阵之后,采用时分复用算法在特定的目标资源块中实现纠删运算,相较于现有的为每路输出数据缓冲分配一个硬件处理单元的纠删方式,本发明较大地降低了对CPU计算资源的占用量,提高了资源利用率。By applying the method provided by the embodiment of the present invention, the received target data erasure task is analyzed to obtain a target data block and a target matrix; the target resource block corresponding to the target data erasure task is obtained; the target resource block is used based on time division multiplexing The algorithm performs erasure operation on the target data block and each matrix row in the target matrix, and obtains the erasure result. After obtaining the target data block and target matrix required for erasure processing, the time division multiplexing algorithm is used to implement erasure operation in a specific target resource block. Compared with the existing hardware, a hardware is allocated for each output data buffer. In the erasure correction method of the processing unit, the present invention greatly reduces the occupation of CPU computing resources and improves the resource utilization rate.

需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。It should be noted that, based on the foregoing first embodiment, the embodiment of the present invention also provides a corresponding improvement solution. In subsequent embodiments, the same steps or corresponding steps in the above-mentioned first embodiment can be referred to each other, and corresponding beneficial effects can also be referred to each other, which will not be repeated in the following improved embodiments.

实施例二:Embodiment 2:

参见图2,图2为本发明实施例中数据存储纠删方法的另一种实施流程图,该方法可以包括以下步骤:Referring to FIG. 2, FIG. 2 is another implementation flowchart of a data storage erasure correction method in an embodiment of the present invention, and the method may include the following steps:

S201:对接收到的目标数据纠删任务进行解析,得到目标纠删任务类型。S201: Analyze the received target data erasure task to obtain the target erasure task type.

目标数据纠删任务包含任务类型信息,在接收到目标数据纠删任务之后,对接收到的目标数据纠删任务进行解析,得到目标纠删任务类型。纠删任务类型包括编码和解码。The target data erasure task includes task type information. After receiving the target data erasure task, the received target data erasure task is analyzed to obtain the target erasure task type. Erasure task types include encoding and decoding.

S202:当目标纠删任务类型为编码时,获取目标原始数据块和目标编码矩阵。S202: When the target erasure task type is encoding, obtain the target original data block and the target encoding matrix.

在进行编码时,需要用到原始数据块和预先写入到矩阵队列中的编码矩阵。当目标纠删任务类型为编码时,获取目标原始数据块和目标编码矩阵。When encoding, the original data block and the encoding matrix pre-written into the matrix queue are needed. When the target erasure task type is encoding, obtain the target original data block and target encoding matrix.

S203:当目标纠删任务类型为解码时,获取目标剩余数据块、目标校验数据块、以及目标解码矩阵。S203: When the target erasure erasure task type is decoding, obtain the target remaining data block, the target check data block, and the target decoding matrix.

当进行解码时,需要用到存活的剩余数据块、存活的校验数据块、以及预先写入到矩阵队列中的解码矩阵。当目标纠删任务类型为解码时,获取目标原始数据块、目标校验数据块、以及目标矩阵。When performing decoding, the surviving remaining data blocks, the surviving parity data blocks, and the decoding matrix pre-written into the matrix queue are required. When the target erasure task type is decoding, obtain the target original data block, the target check data block, and the target matrix.

S204:当目标数据纠删任务的个数为多个时,获取当前空闲的各资源块。S204: When the number of target data erasure tasks is multiple, acquire each resource block that is currently idle.

当确定目标数据纠删任务的个数为多个时,如当前存在多个编码任务,或者当前存在多个解码任务,或者当前既存在编码任务,又存在解码任务,获取当前空闲的各资源块。When it is determined that the number of target data erasure tasks is multiple, for example, there are currently multiple encoding tasks, or there are multiple decoding tasks, or both encoding tasks and decoding tasks currently exist, obtain each currently idle resource block. .

S205:利用各资源块基于时分复用算法对各目标数据块和各目标矩阵进行并行纠删运算。S205: Use each resource block to perform a parallel erasure correction operation on each target data block and each target matrix based on a time division multiplexing algorithm.

在获取到当前空闲的各资源块之后,利用各资源块基于时分复用算法对各目标数据块和各目标矩阵进行并行纠删运算。通过采用多路资源块并发,单个资源块内时分复用的方式,提高了资源利用率,进而提高数据的吞吐率。并且可以通过扩展硬件结构的输入、输出通道数,矩阵的存储单元的大小,做到支持到不同的数据节点数k,不同的校验节点数r,具有比较强的扩展性,做到一个硬件可以支持设计指标k,r以下所有的纠删组合。同时一个硬件通过对矩阵(即编码矩阵或者解码矩阵)和输入数据(即数据块或者数据块和存活校验块)的调度,实现既支持编码又支持解码。After each resource block that is currently idle is acquired, a parallel erasure operation is performed on each target data block and each target matrix by using each resource block based on a time division multiplexing algorithm. By using multiple resource blocks concurrently and time division multiplexing within a single resource block, the resource utilization rate is improved, thereby improving the data throughput rate. And by expanding the number of input and output channels of the hardware structure and the size of the storage unit of the matrix, it can support different numbers of data nodes k and different numbers of check nodes r, which has relatively strong scalability, and can achieve a hardware It can support all erasure combinations below the design index k and r. At the same time, a hardware supports both encoding and decoding by scheduling the matrix (ie, the encoding matrix or the decoding matrix) and the input data (ie, the data block or the data block and the survival check block).

在一种具体实例应用中,参见图3,图3为本单个资源块的结构框图。如图3所示,提出的RS纠删资源块以一个最大支持数据节点数k=6,最大支持校验节点数r=4为例。模块分为控制通路和数据通路,控制通路主要负责调度矩阵,控制数据流入乘法单元;数据通路包括数据的输入,输出控制。具体的各个模块的功能介绍如下:In a specific example application, see FIG. 3 , which is a structural block diagram of a single resource block. As shown in FIG. 3 , the proposed RS erasure resource block takes a maximum supported data node number k=6 and a maximum supported check node number r=4 as an example. The module is divided into a control path and a data path. The control path is mainly responsible for scheduling the matrix and controlling the flow of data into the multiplication unit; the data path includes data input and output control. The specific functions of each module are introduced as follows:

1、控制通路:1. Control path:

矩阵第1到4行:分别存储矩阵的第1到第4行。Matrix Rows 1 to 4: Store the 1st to 4th rows of the matrix, respectively.

配置队列:存储纠删任务的资源块需要处理的配置信息,包括数据块数目k,校验块数目r,块大小等信息。Configuration queue: stores the configuration information that needs to be processed for the resource blocks of the erasure task, including the number of data blocks k, the number of check blocks r, and the block size.

矩阵队列:存放编码或者解码矩阵。Matrix queue: Store encoding or decoding matrices.

多输入一输出单元:根据选择信号,从多个输出信号中选出一路信号输出。Multiple input one output unit: According to the selection signal, select one signal output from multiple output signals.

资源块调度:通过读取配置队列中的信息,将矩阵队列中的矩阵转存到矩阵第1行到第4行中;控制数据通路的数据流入乘法单元;对4行矩阵全部(或部分)时分复用的调入乘法单元;对输出的数据按照配置的r信息,控制选择信号将1路输出数据选择送入输出数据缓冲中。Resource block scheduling: by reading the information in the configuration queue, the matrix in the matrix queue is dumped into the first row to the fourth row of the matrix; the data of the control data path flows into the multiplication unit; all (or part) of the 4-row matrix Time division multiplexed call-in multiplication unit; for the output data, according to the configured r information, the control selection signal selects one channel of output data and sends it into the output data buffer.

2、数据通路:2. Data path:

输出数据缓冲:用来缓存输入,输出数据。Output data buffer: used to buffer input and output data.

读数据控制:在处理单元调度的控制下,将需要处理的输出缓冲中的数据读出。例如在4+2纠删编码配置下,只会读取前4个输出缓冲的数据。Read data control: Under the control of the processing unit scheduling, the data in the output buffer to be processed is read out. For example, in a 4+2 erasure coding configuration, only the first 4 output buffers will be read.

伽罗华域乘法单元:完成伽罗华域的乘法运算。Galois Field Multiplication Unit: completes the multiplication of Galois Field.

伽罗华域加法单元:完成伽罗华域加法,即XOR运算。Galois field addition unit: completes Galois field addition, that is, XOR operation.

一输入多输出单元:在选择信号的控制下,将一路输出信号选择送到其中一个输出通路。One-input multiple-output unit: Under the control of the selection signal, one output signal is selected to be sent to one of the output channels.

纠删数据流分步骤解释说明如下:The step-by-step explanation of erasure data flow is as follows:

第一步:数据送入输入缓冲1,2,3,4,5,6,在输入节点数目小于6的时候,只会向部分输入缓冲输入数据,例如对一个2+1的编码任务,只会向输入缓冲1,2输入数据,其他的输入缓冲没有数据存入。对于编码或者解码任务,输入的数据类型也不同,以k+r的编码或者解码为例:对于编码任务,输入的是全部k个数据节点数据,对于解码任务,以L个数据节点需要恢复为例,输入的数据分为存活的(k-L)个数据节点数据和存活的L个校验节点数据,输入数据节点总和为k。Step 1: The data is sent to the input buffer 1, 2, 3, 4, 5, 6. When the number of input nodes is less than 6, the input data will only be input to part of the input buffer. For example, for a 2+1 encoding task, only Data will be input to input buffers 1 and 2, and no data will be stored in other input buffers. For encoding or decoding tasks, the input data types are also different. Take k+r encoding or decoding as an example: for encoding tasks, the input data is all k data nodes. For decoding tasks, L data nodes need to be restored as For example, the input data is divided into surviving (k-L) data node data and surviving L check node data, and the sum of the input data nodes is k.

第二步:处理调度单元在监测到配置队列中有任务输入时,从配置队列中读取输入的任务类型,包括任务类型是编码还是解码,数据块数目k,校验块数目r。通过调度预先已经写入矩阵队列中的矩阵,将矩阵分发到矩阵第1,2,3,4行,如果r<4,将矩阵分发到部分矩阵的第1,2,3,4行。例如r=2的编码场景,则只把矩阵分发到第1,2行。然后通过控制输入选择信号,控制矩阵按照时分复用的方式送入伽罗华乘法单元,具体的是矩阵第1行,第2行,第1行,第2行,如此循环;通过控制输入数据选择信号将输入缓冲矩阵中的数据依次送入伽罗华乘法单元,如果k<6,则将部分输入数据缓冲中的数据送入伽罗华乘法单元,例如k=4的编码场景,只需要将第1,2,3,4个输入数据缓冲数据送入伽罗华乘法单元。直到该任务对应的矩阵,数据调度完成以后,切换到下一个纠删任务的执行。Step 2: When the processing and scheduling unit detects that there is a task input in the configuration queue, it reads the input task type from the configuration queue, including whether the task type is encoding or decoding, the number of data blocks k, and the number of check blocks r. Distribute the matrix to the 1st, 2nd, 3rd, and 4th rows of the matrix by scheduling the matrices that have been written in the matrix queue in advance. If r<4, distribute the matrix to the 1st, 2nd, 3rd, and 4th rows of the partial matrix. For example, in the encoding scene of r=2, the matrix is only distributed to the 1st and 2nd rows. Then, by controlling the input selection signal, the control matrix is sent to the Galois multiplication unit in a time-division multiplexing manner, specifically the first row of the matrix, the second row, the first row, the second row, and so on; by controlling the input data The selection signal sends the data in the input buffer matrix to the Galois multiplication unit in turn. If k<6, then part of the data in the input data buffer is sent to the Galois multiplication unit. For example, in the encoding scene of k=4, only need Send the 1st, 2nd, 3rd, and 4th input data buffer data to the Galois multiplication unit. Until the matrix corresponding to the task, after the data scheduling is completed, switch to the execution of the next erasure task.

第三步:完成矩阵的乘法运算。具体的任务是完成矩阵的某一行和输入的数据的乘法,输入的数据在编码场景下是数据块,在解码场景下是数据块和校验块。运算数据的顺序是,伽罗华乘法单元完成运算,将输出乘法结果送到伽罗华加法单元,然后将加法运算结果从加法单元输出。运算只完成有效数据对应的乘法,以及加法运算,例如k=4的情况下,乘法单元1,2,3,4做运算,乘法单元5,6不参与运算,乘法单元5,6直接输出结果0,在加法运算时候对XOR结果没有影响。Step 3: Complete the matrix multiplication operation. The specific task is to complete the multiplication of a row of the matrix and the input data. The input data is a data block in the encoding scenario, and is a data block and a check block in the decoding scenario. The order of the operation data is that the Galois multiplication unit completes the operation, sends the output multiplication result to the Galois addition unit, and then outputs the addition operation result from the addition unit. The operation only completes the multiplication and addition operation corresponding to the valid data. For example, in the case of k=4, the multiplication units 1, 2, 3, and 4 perform the operation, while the multiplication units 5 and 6 do not participate in the operation, and the multiplication units 5 and 6 directly output the result. 0, has no effect on the XOR result during addition.

第四步:处理调度单元根据配置队列中的任务类型,如果是编码根据校验块数目r确定要调度输出的对象是前r个输出队列,如果是解码根据待恢复数据块的数目L确定要调度输出的对象是前L个输出队列,同时根据该编解码任务的输出数据块大小确定要向每个输出缓冲队列中输出的数据大小,控制输出数据选择信号,依次循环的向目标队列输出数据,直到所有的输出数据全部输出到输出队列,然后在切换到下一个纠删任务的执行。比如对于r=3,块大小等于1KByte的编码任务,输出控制信号需要依次的控制数据按照如下的调度往输出缓冲中存放数据:Step 4: The processing and scheduling unit determines the first r output queues to be scheduled according to the number of check blocks r for encoding, and the first r output queues for decoding according to the number L of data blocks to be restored. The object of scheduling output is the first L output queues. At the same time, the size of the data to be output to each output buffer queue is determined according to the output data block size of the encoding and decoding task, and the output data selection signal is controlled, and the data is output to the target queue cyclically. , until all output data are output to the output queue, and then switch to the execution of the next erasure task. For example, for an encoding task with r=3 and a block size equal to 1KByte, the output control signal needs to store data in the output buffer according to the following schedule:

第1个输出缓冲存放第1个Byte->第2个输出缓冲存放第2个Byte->第3个输出缓冲存放第3个Byte->第1个输出缓冲存放第4个Byte如此循环直到->第1个输出缓冲存放第3070个Byte->第2个输出缓冲存放第3071个Byte->第3个输出缓冲存放第3072个Byte。The 1st output buffer stores the 1st Byte-> the 2nd output buffer stores the 2nd Byte-> the 3rd output buffer stores the 3rd Byte-> the 1st output buffer stores the 4th Byte and so on until- >The first output buffer stores the 3070th Byte->The second output buffer stores the 3071st Byte->The third output buffer stores the 3072th Byte.

第五步:输出数据缓冲将数据提供给外部输出,外部输出将数据返回给主机侧。例如对于4+2的纠删解码,块大小为1Kbyte,有数据节点1,2待恢复,输出数据缓冲1,2会分别产生1Kbyte的数据输出,输出数据缓冲3,4在该任务执行过程中没有数据产生。Step 5: The output data buffer provides the data to the external output, and the external output returns the data to the host side. For example, for 4+2 erasure decoding, the block size is 1Kbyte, and there are data nodes 1 and 2 to be restored. The output data buffers 1 and 2 will generate 1Kbyte data output respectively, and the output data buffers 3 and 4 are in the process of executing the task. No data is generated.

图3中的资源块适用于多种RS纠删码,且既可以处理编码又可以处理解码,做到同一种硬件结构,复用实现RS纠删编解码的所有需求。The resource blocks in FIG. 3 are suitable for various RS erasure codes, and can handle both encoding and decoding, so as to achieve the same hardware structure and multiplex to realize all the requirements of RS erasure encoding and decoding.

以4+2(即四个目标数据块、两个矩阵行,以下可以此类比),3+1,4+1三个连续的编码任务,参见图4,图4为现有技术中硬件处理纠删任务的资源划分示意图。参见图5,图5为本发明实施例中硬件处理纠删任务的资源划分示意图。在图4中,t1时间处理4+2任务,t2时间处理3+1任务,t3时间处理4+1任务。可以看到在t2时间内,硬件资源乘法单元4,5,6,7,8,XOR运算单元2是处在完全空闲的状态。在t3时间内,硬件资源乘法单元5,6,7,8,XOR运算单元2是处在完全空闲的状态。在图5中,可以看到t1+t2时间,任务处理单元处理4+2任务,t1时间处理单元2处理3+1任务,在t2时间处理单元2处理4+1任务。可以看到使用和图4同样的硬件资源,同样的任务只需要t1+t2时间就可以完成,只有乘法单元8在t2时间内会空闲。可以看出采用多路资源块并发,资源块内时分复用的方式,可以提高资源利用率,进而提高数据的吞吐率。With 4+2 (that is, four target data blocks, two matrix rows, the following can be compared), 3+1, 4+1 three consecutive encoding tasks, see Figure 4, Figure 4 is the hardware processing in the prior art Schematic diagram of resource division of erasure tasks. Referring to FIG. 5, FIG. 5 is a schematic diagram of resource division of an erasure correction task processed by hardware in an embodiment of the present invention. In Figure 4, time t1 processes 4+2 tasks, time t2 processes 3+1 tasks, and time t3 processes 4+1 tasks. It can be seen that in the time t2, the hardware resource multiplication units 4, 5, 6, 7, 8, and the XOR operation unit 2 are in a completely idle state. During the time t3, the hardware resource multiplication units 5, 6, 7, 8, and the XOR operation unit 2 are in a completely idle state. In Figure 5, it can be seen that at time t1+t2, the task processing unit processes 4+2 tasks, at time t1 processing unit 2 processes 3+1 tasks, and at time t2 processing unit 2 processes 4+1 tasks. It can be seen that using the same hardware resources as in FIG. 4 , the same task can be completed in only t1+t2 time, and only the multiplying unit 8 will be idle in t2 time. It can be seen that the use of multiple resource blocks concurrently and time division multiplexing within resource blocks can improve resource utilization, thereby improving data throughput.

实施例三:Embodiment three:

参见图6,图6为本发明实施例中数据存储纠删方法的另一种实施流程图,该方法可以包括以下步骤:Referring to FIG. 6, FIG. 6 is another implementation flowchart of a data storage erasure correction method in an embodiment of the present invention, and the method may include the following steps:

S601:对接收到的目标数据纠删任务进行解析,得到目标纠删任务类型。S601: Analyze the received target data erasure task to obtain the target erasure task type.

S602:当目标纠删任务类型为编码时,获取目标原始数据块和目标编码矩阵。S602: When the target erasure task type is encoding, obtain the target original data block and the target encoding matrix.

S603:当目标纠删任务类型为解码时,获取目标剩余数据块、目标校验数据块、以及目标解码矩阵。S603: When the target erasure erasure task type is decoding, obtain the target remaining data block, the target check data block, and the target decoding matrix.

S604:当目标数据纠删任务的个数为多个时,获取当前空闲的各资源块。S604: When the number of target data erasure tasks is multiple, obtain each resource block that is currently idle.

S605:获取目标数据块的数据大小。S605: Obtain the data size of the target data block.

S606:根据数据大小将各资源块时分复用分配给各目标数据块和各目标矩阵的矩阵行。S606: Time-division multiplexing and assigning each resource block to each target data block and each matrix row of each target matrix according to the data size.

S607:利用各资源块对各目标数据块和各矩阵行进行纠删运算。S607: Use each resource block to perform an erasure correction operation on each target data block and each matrix row.

相应于上面的方法实施例,本发明实施例还提供了一种数据存储纠删装置,下文描述的数据存储纠删装置与上文描述的数据存储纠删方法可相互对应参照。Corresponding to the above method embodiments, the embodiments of the present invention further provide a data storage erasure correction device, and the data storage erasure correction device described below and the data storage erasure correction method described above can refer to each other correspondingly.

参见图7,图7为本发明实施例中一种数据存储纠删装置的结构框图,该装置可以包括:Referring to FIG. 7, FIG. 7 is a structural block diagram of a data storage erasure correction device in an embodiment of the present invention, and the device may include:

任务解析模块71,用于对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;The task parsing module 71 is used for parsing the received target data erasure task to obtain the target data block and the target matrix;

资源块获得模块72,用于获取目标数据纠删任务对应的目标资源块;The resource block obtaining module 72 is used for obtaining the target resource block corresponding to the target data erasure task;

纠删结果获得模块73,用于利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。The erasure result obtaining module 73 is configured to perform an erasure operation on the target data block and the target matrix based on the time division multiplexing algorithm by using the target resource block to obtain an erasure result.

应用本发明实施例所提供的装置,对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;获取目标数据纠删任务对应的目标资源块;利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。通过在获取到纠删处理所需的目标数据块和目标矩阵之后,采用时分复用算法在特定的目标资源块中实现纠删运算,相较于现有的为每路输出数据缓冲分配一个资源块的纠删方式,本发明较大地降低了对CPU计算资源的占用量,提高了资源利用率。The device provided by the embodiment of the present invention is applied to analyze the received target data erasure task to obtain a target data block and a target matrix; obtain a target resource block corresponding to the target data erasure task; use the target resource block based on time division multiplexing The algorithm performs the erasure operation on the target data block and the target matrix, and obtains the erasure result. After obtaining the target data block and target matrix required for erasure processing, the time division multiplexing algorithm is used to implement the erasure operation in a specific target resource block. Compared with the existing one, each output data buffer is allocated a resource. Block erasure mode, the present invention greatly reduces the occupancy of CPU computing resources and improves resource utilization.

在本发明的一种具体实施方式中,任务解析模块71包括:In a specific embodiment of the present invention, the task analysis module 71 includes:

任务类型获得子模块,用于对接收到的目标数据纠删任务进行解析,得到目标纠删任务类型;The task type obtaining sub-module is used to parse the received target data erasure task to obtain the target erasure task type;

第一输入数据获取子模块,用于当目标纠删任务类型为编码时,获取目标原始数据块和目标编码矩阵。The first input data acquisition sub-module is configured to acquire the target original data block and the target encoding matrix when the target erasure task type is encoding.

第二输入数据获取子模块,用于当目标纠删任务类型为解码时,获取目标剩余数据块、目标校验数据块、以及目标解码矩阵。The second input data acquisition sub-module is configured to acquire the target remaining data block, the target check data block, and the target decoding matrix when the target erasure task type is decoding.

在本发明的一种具体实施方式中,资源块获得模块72具体为当目标数据纠删任务的个数为多个时,获取当前空闲的各资源块的模块;In a specific embodiment of the present invention, the resource block obtaining module 72 is specifically a module for obtaining currently idle resource blocks when the number of target data erasure tasks is multiple;

纠删结果获得模块73具体为利用各资源块基于时分复用算法对各目标数据块和各目标矩阵进行并行纠删运算的模块。The erasure result obtaining module 73 is specifically a module that uses each resource block to perform a parallel erasure operation on each target data block and each target matrix based on a time division multiplexing algorithm.

在本发明的一种具体实施方式中,还包括:In a specific embodiment of the present invention, it also includes:

数据大小获取模块,用于在对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵之后,获取目标数据块的数据大小;The data size obtaining module is used to obtain the data size of the target data block after analyzing the received target data erasure task to obtain the target data block and the target matrix;

纠删结果获得模块73包括:The erasure result obtaining module 73 includes:

资源块分配子模块,用于根据数据大小将各资源块时分复用分配给各目标数据块和各目标矩阵的矩阵行;a resource block allocation sub-module, used for time-division multiplexing and allocating each resource block to each target data block and the matrix row of each target matrix according to the data size;

纠删运算子模块,用于利用各资源块对各目标数据块和各矩阵行进行纠删运算。The erasure operation sub-module is used to perform erasure operation on each target data block and each matrix row by using each resource block.

相应于上面的方法实施例,参见图8,图8为本发明所提供的数据存储纠删设备的示意图,该设备可以包括:Corresponding to the above method embodiments, see FIG. 8 , which is a schematic diagram of a data storage erasure correction device provided by the present invention, and the device may include:

存储器81,用于存储计算机程序;memory 81 for storing computer programs;

处理器82,用于执行上述存储器81存储的计算机程序时可实现如下步骤:The processor 82 can implement the following steps when executing the computer program stored in the above-mentioned memory 81:

对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;获取目标数据纠删任务对应的目标资源块;利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。Analyze the received target data erasure task to obtain the target data block and target matrix; obtain the target resource block corresponding to the target data erasure task; use the target resource block to correct the target data block and target matrix based on the time division multiplexing algorithm Delete operation to get the erasure result.

对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。For the introduction of the device provided by the present invention, please refer to the above method embodiments, which will not be repeated in the present invention.

相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:Corresponding to the above method embodiments, the present invention also provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the following steps can be implemented:

对接收到的目标数据纠删任务进行解析,得到目标数据块和目标矩阵;获取目标数据纠删任务对应的目标资源块;利用目标资源块基于时分复用算法对目标数据块和目标矩阵进行纠删运算,得到纠删结果。Analyze the received target data erasure task to obtain the target data block and target matrix; obtain the target resource block corresponding to the target data erasure task; use the target resource block to correct the target data block and target matrix based on the time division multiplexing algorithm Delete operation to get the erasure result.

该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。The computer-readable storage medium may include: a USB flash drive, a removable hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, etc., which can store program codes. medium.

对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。For the introduction of the computer-readable storage medium provided by the present invention, please refer to the foregoing method embodiments, which will not be repeated in the present invention.

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments, and the same or similar parts between the various embodiments may be referred to each other. For the apparatuses, devices, and computer-readable storage media disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the descriptions are relatively simple, and reference may be made to the descriptions of the methods for related parts.

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。The principles and implementations of the present invention are described herein by using specific examples, and the descriptions of the above embodiments are only used to help understand the technical solutions and core ideas of the present invention. It should be pointed out that for those skilled in the art, without departing from the principle of the present invention, several improvements and modifications can also be made to the present invention, and these improvements and modifications also fall within the protection scope of the claims of the present invention.

Claims (8)

1. A data storage erasure method, comprising:
analyzing the received target data erasure task to obtain a target data block and a target matrix;
acquiring a target resource block corresponding to the target data erasure task;
carrying out erasure correction operation on the target data block and the target matrix by using the target resource block based on a time division multiplexing algorithm to obtain an erasure correction result;
analyzing the received target data erasure task to obtain a target data block and a target matrix, comprising:
analyzing the received target data erasure task to obtain a target erasure task type;
when the target erasure task type is coding, acquiring a target original data block and a target coding matrix;
when the target erasure correcting task type is decoding, acquiring a target residual data block, a target verification data block and a target decoding matrix;
performing erasure correction operation on the target data block and the target matrix by using the target resource block based on a time division multiplexing algorithm to obtain an erasure correction result, including:
carrying out Galois field multiplication operation and Galois field addition operation on the target data block and a first matrix row in the target matrix in sequence by using the target resource block in a first time period; carrying out Galois field multiplication operation and Galois field addition operation on the target data block and a second matrix row in the target matrix in sequence by using the target resource block in a second time period; until the Galois field multiplication operation and the Galois field addition operation are carried out on the target data block and each matrix row in the target matrix.
2. The data storage erasure correcting method according to claim 1, wherein when the number of the target data erasure correcting tasks is plural, acquiring a target resource block corresponding to the target data erasure correcting task includes:
acquiring each current idle resource block;
performing erasure operation on the target data block and the target matrix by using the target resource block based on a time division multiplexing algorithm, including:
and performing parallel erasure correction operation on each target data block and each target matrix by using each resource block based on the time division multiplexing algorithm.
3. The data storage erasure method according to claim 2, wherein after parsing the received target data erasure task to obtain a target data block and a target matrix, further comprising:
acquiring the data size of the target data block;
performing parallel erasure operation on each target data block and each target matrix by using each resource block based on the time division multiplexing algorithm, wherein the parallel erasure operation comprises the following steps:
distributing each resource block to each target data block and a matrix row of each target matrix in a time division multiplexing manner according to the data size;
and carrying out erasure correction operation on each target data block and each matrix row by using each resource block.
4. A data storage erasure apparatus, comprising:
the task analysis module is used for analyzing the received target data erasure task to obtain a target data block and a target matrix;
a resource block obtaining module, configured to obtain a target resource block corresponding to the target data erasure correcting task;
an erasure result obtaining module, configured to perform erasure operation on the target data block and the target matrix based on a time division multiplexing algorithm by using the target resource block to obtain an erasure result;
the task analysis module is specifically used for analyzing the received target data erasure correcting task to obtain a target erasure correcting task type;
when the target erasure correcting task type is coding, acquiring a target original data block and a target coding matrix;
when the target erasure correcting task type is decoding, acquiring a target residual data block, a target verification data block and a target decoding matrix;
the erasure result obtaining module is specifically configured to perform galois field multiplication and galois field addition on the target data block and a first matrix row in the target matrix sequentially by using the target resource block in a first time period; carrying out Galois field multiplication operation and Galois field addition operation on the target data block and a second matrix row in the target matrix in sequence by using the target resource block in a second time period; until the Galois field multiplication operation and the Galois field addition operation are carried out on the target data block and each matrix row in the target matrix.
5. The data storage erasure correcting apparatus according to claim 4, wherein the resource block obtaining module is specifically a module for obtaining each currently idle resource block when the number of the target data erasure correcting tasks is multiple;
the erasure result obtaining module is specifically a module for performing parallel erasure operation on each target data block and each target matrix by using each target resource block based on the time division multiplexing algorithm.
6. The data storage erasure apparatus of claim 5, further comprising:
the data size acquisition module is used for acquiring the data size of the target data block after analyzing the received target data erasure task to obtain a target data block and a target matrix;
the erasure result obtaining module includes:
the resource block distribution submodule is used for distributing each resource block to each target data block and each matrix row of each target matrix in a time division multiplexing mode according to the data size;
and the erasure correction operation submodule is used for carrying out erasure correction operation on each target data block and each matrix row by using each resource block.
7. A data storage erasure device, comprising:
a memory for storing a computer program;
a processor for implementing the steps of the data storage erasure method according to any one of claims 1 to 3 when executing said computer program.
8. A computer-readable storage medium, having stored thereon a computer program which, when being executed by a processor, carries out the steps of the data storage erasure method according to any one of claims 1 to 3.
CN202011041807.1A 2020-09-28 2020-09-28 Data storage erasure method, device, equipment and computer readable storage medium Active CN112052115B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011041807.1A CN112052115B (en) 2020-09-28 2020-09-28 Data storage erasure method, device, equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011041807.1A CN112052115B (en) 2020-09-28 2020-09-28 Data storage erasure method, device, equipment and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN112052115A CN112052115A (en) 2020-12-08
CN112052115B true CN112052115B (en) 2022-07-08

Family

ID=73606013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011041807.1A Active CN112052115B (en) 2020-09-28 2020-09-28 Data storage erasure method, device, equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN112052115B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114879904B (en) * 2022-04-22 2024-05-03 山东云海国创云计算装备产业创新中心有限公司 Data storage erasure method, device, equipment and readable storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216677A (en) * 1989-09-20 1993-06-01 Matsushita Electric Industrial Co., Ltd. Data reproducing apparatus
CN101040476A (en) * 2004-06-18 2007-09-19 高通股份有限公司 Power control using erasure techniques
JP2014049148A (en) * 2012-08-30 2014-03-17 Renesas Electronics Corp Semiconductor storage device
CN104601179A (en) * 2014-12-12 2015-05-06 北京麓柏科技有限公司 Erasure code coding circuit and decoding circuit and coding and encoding circuit of storage system
CN104991740A (en) * 2015-06-24 2015-10-21 华中科技大学 Universal matrix optimization method for accelerating erasure correcting code encoding and decoding processes
CN111090540A (en) * 2019-06-24 2020-05-01 华为技术有限公司 Data processing method and device based on erasure codes
CN111697976A (en) * 2020-05-28 2020-09-22 苏州浪潮智能科技有限公司 RS erasure correcting quick decoding method and system based on distributed storage
CN111694692A (en) * 2020-06-24 2020-09-22 山东云海国创云计算装备产业创新中心有限公司 Data storage erasure method, device and equipment and readable storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216677A (en) * 1989-09-20 1993-06-01 Matsushita Electric Industrial Co., Ltd. Data reproducing apparatus
CN101040476A (en) * 2004-06-18 2007-09-19 高通股份有限公司 Power control using erasure techniques
JP2014049148A (en) * 2012-08-30 2014-03-17 Renesas Electronics Corp Semiconductor storage device
CN104601179A (en) * 2014-12-12 2015-05-06 北京麓柏科技有限公司 Erasure code coding circuit and decoding circuit and coding and encoding circuit of storage system
CN104991740A (en) * 2015-06-24 2015-10-21 华中科技大学 Universal matrix optimization method for accelerating erasure correcting code encoding and decoding processes
CN111090540A (en) * 2019-06-24 2020-05-01 华为技术有限公司 Data processing method and device based on erasure codes
CN111697976A (en) * 2020-05-28 2020-09-22 苏州浪潮智能科技有限公司 RS erasure correcting quick decoding method and system based on distributed storage
CN111694692A (en) * 2020-06-24 2020-09-22 山东云海国创云计算装备产业创新中心有限公司 Data storage erasure method, device and equipment and readable storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DVB-H数据链路层FEC以及软切换的算法研究;李萌;《中国优秀硕士学位论文全文数据库信息科技辑》;20060915;I136-353 *
Optimizing completion delay in network coded systems over TDD erasure channels with memory;Mohammad Esmaeilzadeh等;《2012 International Symposium on Communications and Information Technologies (ISCIT)》;20121213;第883-888页 *

Also Published As

Publication number Publication date
CN112052115A (en) 2020-12-08

Similar Documents

Publication Publication Date Title
JP5123174B2 (en) Forward error correction (FEC) code and streaming
US8006160B2 (en) Efficient encoding and decoding methods for representing schedules and processing forward error correction codes
US8555146B2 (en) FEC streaming with aggregation of concurrent streams for FEC computation
Cadambe et al. Optimal repair of MDS codes in distributed storage via subspace interference alignment
US7496785B2 (en) Enclosure-based raid parity assist
KR20100111680A (en) Correction of errors in a memory array
US20200321982A1 (en) Error-correction encoding method and device, and decoding method and device using channel polarization
US11811422B2 (en) Information processing method and device and computer storage medium
CN113687975A (en) Data processing method, device, equipment and storage medium
CN112052115B (en) Data storage erasure method, device, equipment and computer readable storage medium
JP2013058103A (en) Video recording and reproducing device and rebuild processing method
CN114499767A (en) Data transmission system and RS (Reed-Solomon) coding device and method thereof
KR101621752B1 (en) Distributed Storage Apparatus using Locally Repairable Fractional Repetition Codes and Method thereof
CN112286449B (en) RS erasure processing equipment and distributed storage system
CN113505021B (en) Fault-tolerant method and system based on multi-master node master-slave distributed architecture
CN107615248B (en) Distributed data storage method, control equipment and system
CN112104412A (en) Accelerator suitable for low-orbit satellite broadband communication
CN101848055A (en) Method and device for correcting data
US20160036563A1 (en) Distributed reed-solomon codes for simple multiple access networks
CN111984443A (en) Encoding method, decoding method and corresponding devices in distributed system environment
US20130198582A1 (en) Supercharged codes
CN110968449A (en) BCH ECC error correction resource sharing system and method for multichannel flash memory controller
CN113360264A (en) Erasure processing system and method and distributed storage system
US9450617B2 (en) Distribution and replication of erasure codes
GB2463252A (en) A message passing LDPC matrix decoder with parallel sub-decoders scheduled to avoid memory contention problems

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
TR01 Transfer of patent right

Effective date of registration: 20241009

Address after: 2324, Building 1, Aosheng Building, No. 1166 Xinluo Street, High tech Zone, Jinan City, Shandong Province, 250000

Patentee after: Inspur Computer Technology Co.,Ltd.

Country or region after: China

Address before: 35th floor, S01 building, Inspur science and Technology Park, 1036 Inspur Road, Jinan area, Jinan pilot Free Trade Zone, Jinan City, Shandong Province

Patentee before: Shandong Yunhai guochuang cloud computing equipment industry innovation center Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right