CN115454343A - Data processing method, device and medium based on RAID chip - Google Patents
Data processing method, device and medium based on RAID chip Download PDFInfo
- Publication number
- CN115454343A CN115454343A CN202211128358.3A CN202211128358A CN115454343A CN 115454343 A CN115454343 A CN 115454343A CN 202211128358 A CN202211128358 A CN 202211128358A CN 115454343 A CN115454343 A CN 115454343A
- Authority
- CN
- China
- Prior art keywords
- raid
- data
- processed
- data processing
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
技术领域technical field
本申请涉及数据处理技术领域,特别是涉及一种基于RAID芯片的数据处理方法、装置及介质。The present application relates to the technical field of data processing, in particular to a data processing method, device and medium based on a RAID chip.
背景技术Background technique
磁盘阵列(Redundant Arrays of Independent Disks,RAID)是通过组合多个独立磁盘得到一个容量巨大且具有冗余能力的磁盘组,采用RAID存储技术,可以极大提高存储容量,提高系统输入输出的请求能力,并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。Disk array (Redundant Arrays of Independent Disks, RAID) is a large-capacity and redundant disk group obtained by combining multiple independent disks. Using RAID storage technology can greatly increase storage capacity and improve system input and output request capabilities. , and through data distributed storage technology, parallel access means and information redundancy technology to improve data reliability.
RAID中数据以块为单位分布到各个磁盘上,当RAID中的一个磁盘数据损坏后,利用其余的未损坏数据和相应的校验信息进行RAID的编码或解码即可恢复被损坏的数据。目前,通常在CPU上运行RAID软件进行编码和解码以恢复损坏的数据,显然,这样的方式会过多占用CPU资源,当处理数据的任务量很大时,提高CPU频率满足业务需求就会导致较高的功耗,若不提高CPU频率则会导致任务处理效率低。The data in RAID is distributed to each disk in units of blocks. When the data of one disk in RAID is damaged, the damaged data can be recovered by encoding or decoding RAID by using the remaining undamaged data and corresponding checksum information. Currently, RAID software is usually run on the CPU for encoding and decoding to restore damaged data. Obviously, this method will occupy too much CPU resources. When the task of processing data is large, increasing the CPU frequency to meet business needs will lead to High power consumption, if the CPU frequency is not increased, the task processing efficiency will be low.
由此可见,如何避免占用过多CPU资源的同时,提高RAID的编码和解码效率,进而提升数据处理的效率,是本领域技术人员亟待解决的问题。It can be seen that how to avoid occupying too many CPU resources while improving the encoding and decoding efficiency of RAID, and then improve the efficiency of data processing is an urgent problem to be solved by those skilled in the art.
发明内容Contents of the invention
本申请的目的是提供一种基于RAID芯片的数据处理方法、装置及介质,在不占用CPU资源的情况下,提高RAID的编码和解码效率,进而提升数据处理效率。The purpose of this application is to provide a data processing method, device and medium based on a RAID chip, which can improve the encoding and decoding efficiency of RAID without occupying CPU resources, thereby improving the data processing efficiency.
为解决上述技术问题,本申请提供一种基于RAID芯片的数据处理方法,应用于RAID芯片,包括:In order to solve the above technical problems, the application provides a data processing method based on RAID chips, which is applied to RAID chips, including:
在获取到任务请求后,解析所述任务请求得到对应的待处理数据相关信息;After obtaining the task request, parsing the task request to obtain corresponding data-related information to be processed;
根据所述待处理数据相关信息调取待处理数据块;Retrieving data blocks to be processed according to the relevant information of the data to be processed;
按照预先设定的切分规则将所述任务请求对应的总任务切分为多个切片子任务;Segmenting the total task corresponding to the task request into a plurality of sliced subtasks according to a preset segmentation rule;
将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行RAID编码和/或RAID解码。Each of the slicing subtasks and corresponding data blocks to be processed are transmitted to different data processing units for RAID encoding and/or RAID decoding.
优选地,所述将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行RAID编码和/或RAID解码包括:Preferably, the transmitting each of the slicing subtasks and corresponding data blocks to be processed to different data processing units for RAID encoding and/or RAID decoding includes:
根据存储所述待处理数据块的RAID特性,调取对应的RAID算法进行RAID编码和/或RAID解码。According to the characteristics of the RAID storing the data block to be processed, a corresponding RAID algorithm is invoked to perform RAID encoding and/or RAID decoding.
优选地,所述待处理数据相关信息至少包括:数据块个数、校验块个数、切片子任务个数和数据块地址信息。Preferably, the data related information to be processed at least includes: the number of data blocks, the number of check blocks, the number of slice subtasks, and data block address information.
优选地,所述数据处理单元进行RAID编码和/或RAID解码包括:Preferably, said data processing unit performing RAID encoding and/or RAID decoding includes:
所述数据处理单元进行RAID编码时,包括:When the data processing unit performs RAID encoding, it includes:
调取对应的RAID算法以便于根据所述数据块个数和所述切片子任务个数计算所述校验块个数;calling the corresponding RAID algorithm so as to calculate the number of check blocks according to the number of data blocks and the number of slice subtasks;
并生成所述待处理数据块对应的校验块;and generate a check block corresponding to the data block to be processed;
将所述待处理数据块和对应的校验块存储至对应磁盘中;storing the data block to be processed and the corresponding check block in the corresponding disk;
所述数据处理单元进行RAID解码时,包括:When the data processing unit performs RAID decoding, it includes:
调取对应的RAID算法以便于根据所述待处理数据块和所述待处理数据块对应的校验块确定缺失盘的目标数据块;calling the corresponding RAID algorithm so as to determine the target data block of the missing disk according to the data block to be processed and the check block corresponding to the data block to be processed;
恢复所述目标数据块中的数据。Data in the target data block is restored.
优选地,所述根据所述待处理数据相关信息调取待处理数据块包括:Preferably, said retrieving data block to be processed according to said data-to-be-processed related information includes:
依据所述数据块地址信息确定所述待处理数据块的起始地址;Determine the start address of the data block to be processed according to the data block address information;
根据所述起始地址和所述数据块个数调取所述待处理数据块。The data blocks to be processed are retrieved according to the start address and the number of data blocks.
优选地,在所述根据所述待处理数据相关信息调取待处理数据块之后,还包括:Preferably, after the data block to be processed is called according to the relevant information of the data to be processed, the method further includes:
根据所述数据块地址信息对各所述待处理数据块进行信息校验,并存储校验结果。Perform information check on each of the data blocks to be processed according to the address information of the data block, and store the check result.
优选地,在所述解析所述任务请求得到所述任务单元对应的待处理数据相关信息之前,还包括:Preferably, before the parsing of the task request to obtain the relevant information of the data to be processed corresponding to the task unit, the method further includes:
校验所述任务请求是否满足预设条件,若不满足,则结束数据处理,并将异常信号传输至响应处理单元。Check whether the task request satisfies the preset condition, if not, end the data processing, and transmit the abnormal signal to the response processing unit.
为了解决上述技术问题,本申请还提供了一种基于RAID芯片的数据处理装置,应用于RAID芯片,包括:In order to solve the above-mentioned technical problems, the present application also provides a data processing device based on a RAID chip, which is applied to a RAID chip, including:
解析模块,用于在获取到任务请求后,解析所述任务请求得到对应的待处理数据相关信息;A parsing module, configured to parse the task request to obtain corresponding data related information to be processed after the task request is obtained;
调取模块,用于根据所述待处理数据相关信息调取待处理数据块;A call module, configured to call the data block to be processed according to the relevant information of the data to be processed;
切分模块,用于按照预先设定的切分规则将所述任务请求对应的总任务切分为多个切片子任务;A segmentation module, configured to segment the total task corresponding to the task request into a plurality of sliced subtasks according to preset segmentation rules;
传输模块,用于将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行RAID编码和/或RAID解码。The transmission module is configured to transmit each of the slicing subtasks and corresponding data blocks to be processed to different data processing units for RAID encoding and/or RAID decoding.
为了解决上述技术问题,本申请还提供了一种基于RAID芯片的数据处理装置,包括存储器,用于存储计算机程序;In order to solve the above technical problems, the present application also provides a data processing device based on a RAID chip, including a memory for storing computer programs;
处理器,用于执行所述计算机程序时实现所述的基于RAID芯片的数据处理方法的步骤。The processor is configured to implement the steps of the RAID chip-based data processing method when executing the computer program.
为了解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的基于RAID芯片的数据处理方法的步骤。In order to solve the above-mentioned technical problems, the present application also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the data based on the RAID chip is realized. The steps of the processing method.
本发明所提供的一种基于RAID芯片的数据处理方法,应用于RAID芯片,包括:在获取到数据处理的任务请求后,解析任务请求得到对应的待处理数据相关信息,并根据待处理数据相关信息调取待处理数据块,然后按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,以便于不同的数据处理单元对不同的切片子任务和对应的待处理数据块进行RAID编码和/或RAID解码。由此可见,本申请所提供的技术方案,基于RAID芯片实现RAID编码和/或RAID解码,即,基于RAID芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约CPU资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约CPU资源的同时,提升RAID的数据处理效率。A data processing method based on a RAID chip provided by the present invention is applied to a RAID chip, and includes: after obtaining a task request for data processing, parsing the task request to obtain corresponding data-related information to be processed, and according to the data-to-be-processed related information The information retrieves the data blocks to be processed, and then divides the total task corresponding to the task request into multiple slice subtasks according to the preset segmentation rules, so that different data processing units can process different slice subtasks and corresponding pending tasks. Process data blocks for RAID encoding and/or RAID decoding. It can be seen that the technical solution provided by this application implements RAID encoding and/or RAID decoding based on the RAID chip, that is, implements data storage and/or data recovery based on the RAID chip, reduces hardware cache consumption, and saves CPU resources. At the same time, the total task is divided into multiple sliced subtasks, that is, a large task is divided into multiple small tasks, which are processed by different data processing units. Therefore, in terms of task scheduling, sliced subtasks are beneficial With fine-grained management and control, it is easy to locate and troubleshoot faults when an error occurs in any slice subtask. At the data processing level, multiple data processing units simultaneously process each slice subtask to improve the efficiency of data processing, thereby reducing the area of the hardware system, saving CPU resources, and improving the data processing efficiency of RAID.
此外,本申请还提供一种基于RAID芯片的数据处理装置和介质,与上述的基于RAID芯片的数据处理方法相对应,效果同上。In addition, the present application also provides a data processing device and medium based on a RAID chip, corresponding to the above data processing method based on a RAID chip, and has the same effect as above.
附图说明Description of drawings
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to illustrate the embodiments of the present application more clearly, the following will briefly introduce the accompanying drawings used in the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. As far as people are concerned, other drawings can also be obtained based on these drawings on the premise of not paying creative work.
图1为本申请实施例所提供的一种基于RAID芯片的数据处理方法的流程图;Fig. 1 is the flow chart of a kind of data processing method based on RAID chip that the embodiment of the present application provides;
图2为本申请实施例所提供的一种基于RAID数据处理的硬件架构示意图;FIG. 2 is a schematic diagram of a hardware architecture based on RAID data processing provided by an embodiment of the present application;
图3为本申请实施例所提供的一种基于RAID芯片的RAID编码的示意图;Fig. 3 is the schematic diagram of a kind of RAID coding based on RAID chip provided by the embodiment of the present application;
图4为本申请实施例所提供的一种基于RAID芯片的RAID解码的示意图;FIG. 4 is a schematic diagram of RAID decoding based on a RAID chip provided by an embodiment of the present application;
图5为本申请实施例所提供的一种基于RAID芯片的数据处理装置的结构图;FIG. 5 is a structural diagram of a data processing device based on a RAID chip provided in an embodiment of the present application;
图6为本申请另一实施例提供的一种基于RAID芯片的数据处理装置的结构图;6 is a structural diagram of a data processing device based on a RAID chip provided by another embodiment of the present application;
附图标记如下:1为信息处理模块,2为任务处理模块。The reference signs are as follows: 1 is an information processing module, and 2 is a task processing module.
具体实施方式detailed description
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。The following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, not all of them. Based on the embodiments in this application, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of this application.
本申请的核心是提供一种基于RAID芯片的数据处理方法、装置及介质,应用于RAID芯片,避免占用CPU资源,在进行数据处理时,将总任务切分为多个切片子任务,并由不同的数据处理单元对切片子任务进行RAID编码和/或RAID解码,进而提升数据处理效率。The core of the present application is to provide a data processing method, device and medium based on RAID chips, which are applied to RAID chips to avoid occupying CPU resources. When performing data processing, the total task is divided into multiple slice subtasks, and the Different data processing units perform RAID encoding and/or RAID decoding on slice subtasks, thereby improving data processing efficiency.
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。In order to enable those skilled in the art to better understand the solution of the present application, the present application will be further described in detail below in conjunction with the drawings and specific implementation methods.
RAID是通过组合多个独立磁盘得到一个容量巨大且具有冗余能力的磁盘组,采用RAID存储技术,可以极大提高存储容量,提高系统输入输出的请求能力,并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。RAID is a large-capacity and redundant disk group obtained by combining multiple independent disks. Using RAID storage technology can greatly increase storage capacity and improve system input and output request capabilities. Through distributed data storage technology, Parallel access means and information redundancy technology improve data reliability.
RAID中数据以块为单位分布到各个磁盘上,当RAID中的一个磁盘数据损坏后,利用其余的未损坏数据和相应的校验信息进行RAID的编码或解码即可恢复被损坏的数据。目前,通常在CPU上运行RAID软件进行编码和解码以恢复损坏的数据,显然,这样的方式会过多占用CPU资源,当处理数据的任务量很大时,提高CPU频率满足业务需求就会导致较高的功耗,若不提高CPU频率则会导致任务处理效率低。The data in RAID is distributed to each disk in units of blocks. When the data of one disk in RAID is damaged, the damaged data can be recovered by encoding or decoding RAID by using the remaining undamaged data and corresponding checksum information. Currently, RAID software is usually run on the CPU for encoding and decoding to restore damaged data. Obviously, this method will occupy too much CPU resources. When the task of processing data is large, increasing the CPU frequency to meet business needs will lead to High power consumption, if the CPU frequency is not increased, the task processing efficiency will be low.
为了解决上述技术问题,本申请实施例提供了一种基于RAID芯片的数据处理方法,该方法应用于RAID芯片,由此避免占用CPU资源,在进行RAID编码和RAID解码时,将总任务切分为多个切片子任务,并由不同的数据处理单元对不同的切片子任务进行处理,进而提升数据处理效率。In order to solve the above-mentioned technical problems, the embodiment of the present application provides a data processing method based on a RAID chip, which is applied to a RAID chip, thereby avoiding occupying CPU resources, and dividing the total task when performing RAID encoding and RAID decoding There are multiple slice subtasks, and different data processing units process different slice subtasks, thereby improving data processing efficiency.
图1为本申请实施例所提供的一种基于RAID芯片的数据处理方法的流程图,如图1所示,该方法应用于RAID芯片,包括:Fig. 1 is the flow chart of a kind of data processing method based on RAID chip that the embodiment of the present application provides, as shown in Fig. 1, this method is applied to RAID chip, comprises:
S10:在获取到任务请求后,解析任务请求得到对应的待处理数据相关信息;S10: After obtaining the task request, analyze the task request to obtain the corresponding information about the data to be processed;
在具体实施例中,为了避免占用过多CPU资源,本申请实施例所提供的数据处理方案应用于RAID芯片,图2为本申请实施例所提供的一种基于RAID数据处理的硬件架构示意图,如图2所示,RAID芯片中包括信息处理模块1和任务处理模块2,其中,信息处理模块1包括任务调度单元、数据地址调度单元、数据参数调度单元、地址格式检查单元、任务切片处理单元和响应处理单元。In a specific embodiment, in order to avoid taking up too many CPU resources, the data processing scheme provided by the embodiment of the present application is applied to a RAID chip. FIG. 2 is a schematic diagram of a hardware architecture based on RAID data processing provided by the embodiment of the present application. As shown in Figure 2, the RAID chip includes an
根据运用或组合运用这三种技术的策略和架构衍生了很多种RAID算法,其中,使用最为广泛的是RAID5、RAID6和RAID TP。在RAID中数据以块为单位分布到各个磁盘上,RAID5把数据和与其对应的奇偶校验信息存储到组成RAID5的各个磁盘上。当RAID5的一个磁盘数据损坏后,利用其余未损坏数据和对应的校验信息可实现恢复被损坏的数据。因此,RAID5需要一个硬件计算引擎进行编码或解码。RAID6是在RAID5的基础上又增加了一个校验盘,即RAID6可以恢复两块磁盘丢失的数据,则RAID6需要两个个硬件计算引擎进行编码或解码。RAID TP是在RAID6的基础上又增加了一个校验盘,即,RAID TP可以恢复三块磁盘的丢失数据,则RAID TP需要3个硬件计算引擎进行编码或解码。Many kinds of RAID algorithms are derived according to the strategy and architecture of using or combining these three technologies, among which RAID5, RAID6 and RAID TP are the most widely used. In RAID, data is distributed to each disk in units of blocks, and RAID5 stores data and corresponding parity information on each disk that forms RAID5. When data on one disk of RAID5 is damaged, the damaged data can be restored by using the remaining undamaged data and corresponding checksum information. Therefore, RAID5 requires a hardware computing engine for encoding or decoding. RAID6 adds a check disk on the basis of RAID5, that is, RAID6 can restore the lost data of two disks, and RAID6 needs two hardware computing engines for encoding or decoding. RAID TP adds a check disk on the basis of RAID6, that is, RAID TP can restore the lost data of three disks, and RAID TP requires three hardware computing engines for encoding or decoding.
因此在进行RAID编码和RAID解码时,均需要先确定待处理数据对应的数据块个数、校验块个数、数据块地址信息和有效数据位等信息,为了提高数据处理速度,任务处理模块2需要将任务请求的总任务切分为多个切片子任务,因此,在进行数据处理前还需要获取切片子任务个数等信息。Therefore, when performing RAID encoding and RAID decoding, it is necessary to determine the number of data blocks corresponding to the data to be processed, the number of check blocks, data block address information, and valid data bits. In order to improve the data processing speed, the
实施中,任务调度单元在获取到任务请求后,解析该任务请求得到待处理数据相关信息,待处理数据相关信息至少包括数据块个数、校验块个数、切片子任务个数、数据块地址信息和有效数据位等,其中,数据块地址信息包括地址列表指针和参数列表指针地址等。然后,将待处理数据相关信息按照类型传输至数据地址调度单元、数据参数调度单元和地址格式检查单元。During implementation, after the task scheduling unit obtains the task request, it parses the task request to obtain information about the data to be processed. The information about the data to be processed includes at least the number of data blocks, the number of check blocks, the number of slice subtasks, Address information and valid data bits, etc., wherein, the data block address information includes address list pointers and parameter list pointer addresses, etc. Then, the related information of the data to be processed is transmitted to the data address scheduling unit, the data parameter scheduling unit and the address format checking unit according to the type.
S11:根据待处理数据相关信息调取待处理数据块;S11: Retrieving the data block to be processed according to the relevant information of the data to be processed;
进一步的,数据地址调度单元根据数据块地址信息中地址列表指针和地址数量等信息将需要进行数据处理的地址信息调度起来,需要说明的是,当进行RAID编码时,需要进行数据处理的地址信息为即将进行存储数据的磁盘地址信息,当进行RAID解码时,需要进行数据处理的地址信息包括已损坏数据块对应的磁盘地址信息,以及替换的新的磁盘地址信息。数据地址调度单元将需要的信息调度起来后传输至地址格式检查单元。Further, the data address scheduling unit schedules the address information that requires data processing according to information such as the address list pointer and address quantity in the data block address information. It should be noted that when RAID encoding is performed, the address information that requires data processing For the disk address information of the data to be stored, when performing RAID decoding, the address information that needs to be processed includes the disk address information corresponding to the damaged data block and the new disk address information to be replaced. The data address scheduling unit schedules the required information and transmits it to the address format checking unit.
数据参数调度单元则根据参数列表指针地址将需要的参数信息调度起来,并传输至地址格式检查单元。其中,参数信息包括每个切片子任务的大小,每个总任务的大小等参数信息。地址格式检查单元在获取到各类信息后,对信息进行检查和校验,并传输至任务切片处理单元,然后由任务切片处理单元传输至数据输入单元。The data parameter scheduling unit schedules the required parameter information according to the pointer address of the parameter list, and transmits it to the address format checking unit. Wherein, the parameter information includes parameter information such as the size of each slice subtask, the size of each total task, and the like. After the address format checking unit acquires various types of information, it checks and verifies the information, and transmits the information to the task slice processing unit, and then the task slice processing unit transmits it to the data input unit.
数据输入单元根据数据块地址信息确定数据块的起始地址,并依据该起始地址各数据块个数调取待处理数据块。The data input unit determines the start address of the data block according to the address information of the data block, and calls the data block to be processed according to the number of each data block of the start address.
S12:按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务;S12: Divide the total task corresponding to the task request into multiple subtasks according to the preset segmentation rules;
S13:将各切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行RAID编码和/或RAID解码。S13: Transmit each slice subtask and corresponding data blocks to be processed to different data processing units for RAID encoding and/or RAID decoding.
进一步的,任务切片处理单元按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,其中,预先设定的切分规则可以是用户自行定义的固定单位大小的切片子任务,也可以是根据用户配置的切片子任务个数进行平均切分,对此本申请不作限定。Further, the task slicing processing unit divides the total task corresponding to the task request into multiple sliced subtasks according to the preset slicing rules, wherein the preset slicing rules can be user-defined fixed unit size The slicing subtask may also be divided evenly according to the number of slicing subtasks configured by the user, which is not limited in this application.
将总任务切分为多个切片子任务后,对应的,对个切片子任务存在多个数据块,如图2所示,在任务处理模块2中包括N各数据处理单元,将各切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行RAID编码和/或RAID解码,各数据处理单元进行处理得到处理结果后输出至数据输出单元。After the total task is divided into multiple slice subtasks, correspondingly, there are multiple data blocks for each slice subtask, as shown in Figure 2, in the
本申请实施例所提供的基于RAID芯片的数据处理方法,应用于RAID芯片,包括:在获取到数据处理的任务请求后,解析任务请求得到对应的待处理数据相关信息,并根据待处理数据相关信息调取待处理数据块,然后按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,以便于不同的数据处理单元对不同的切片子任务和对应的待处理数据块进行RAID编码和/或RAID解码。由此可见,本申请所提供的技术方案,基于RAID芯片实现RAID编码和/或RAID解码,即,基于RAID芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约CPU资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约CPU资源的同时,提升RAID的数据处理效率。The data processing method based on the RAID chip provided by the embodiment of the present application is applied to the RAID chip, including: after obtaining the task request for data processing, parsing the task request to obtain the corresponding data-related information to be processed, and according to the data-to-be-processed related information The information retrieves the data blocks to be processed, and then divides the total task corresponding to the task request into multiple slice subtasks according to the preset segmentation rules, so that different data processing units can process different slice subtasks and corresponding pending tasks. Process data blocks for RAID encoding and/or RAID decoding. It can be seen that the technical solution provided by this application implements RAID encoding and/or RAID decoding based on the RAID chip, that is, implements data storage and/or data recovery based on the RAID chip, reduces hardware cache consumption, and saves CPU resources. At the same time, the total task is divided into multiple sliced subtasks, that is, a large task is divided into multiple small tasks, which are processed by different data processing units. Therefore, in terms of task scheduling, sliced subtasks are beneficial With fine-grained management and control, it is easy to locate and troubleshoot faults when an error occurs in any slice subtask. At the data processing level, multiple data processing units simultaneously process each slice subtask to improve the efficiency of data processing, thereby reducing the area of the hardware system, saving CPU resources, and improving the data processing efficiency of RAID.
不同类型的RAID所需的硬件计算引擎数量不同,且计算方式也不同,因此,各数据处理单元在进行RAID编码和/或RAID解码时,需要先确定存储待处理数据块的RAID特性,然后调取对应的RAID算法进行RAID编码和/或RAID解码。Different types of RAID require different numbers of hardware computing engines, and the calculation methods are also different. Therefore, when performing RAID encoding and/or RAID decoding, each data processing unit needs to first determine the RAID characteristics for storing the data blocks to be processed, and then adjust Use the corresponding RAID algorithm to perform RAID encoding and/or RAID decoding.
表1为本申请实施例所提供的一种RAID5算法对应的条带分布示意图,如表1所示,D1、D2…Dn为来自不同磁盘的数据块,P为校验块,数据块和校验块满足以下运算关系:其中,*表示伽罗华域乘法,表示异或操作,K1、K2、K3…Kn为伽罗华乘法运算参数。Table 1 is a schematic diagram of stripe distribution corresponding to a RAID5 algorithm provided by the embodiment of the present application. As shown in Table 1, D1, D2...Dn are data blocks from different disks, P is a parity block, and the data block and parity The verification block satisfies the following operational relationship: Among them, * means Galois field multiplication, Indicates an XOR operation, and K1, K2, K3...Kn are Galois multiplication parameters.
则RAID5算法的RAID5编码公式为: RAID5解码公式为: 其中,x取值范围为大于0的自然数,Dx为丢失数据块,Kx为丢失数据块对应的伽罗华乘法运算参数,在 中不包括Dx和Dx对应的Kx项,例如,若x取1时,不包含K1*D1。由此,RAID5任意一个数据块丢失,均可通过其他数据块进行恢复。Then the RAID5 encoding formula of the RAID5 algorithm is: The RAID5 decoding formula is: Among them, the value range of x is a natural number greater than 0, Dx is the missing data block, Kx is the Galois multiplication operation parameter corresponding to the missing data block, in Dx and the Kx item corresponding to Dx are not included in , for example, if x is 1, K1*D1 is not included. Therefore, if any data block in RAID5 is lost, it can be recovered through other data blocks.
表1 RAID5算法对应的条带分布Table 1 Stripe distribution corresponding to RAID5 algorithm
表2为本申请实施例所提供的一种RAID6算法对应的条带分布示意图,如表2所示,D1、D2…Dn为数据块,P和Q为校验块,且满足以下运算关系: 根据解二元一次方程组原理,RAID6最多可以恢复两块磁盘缺失的数据。Table 2 is a schematic diagram of stripe distribution corresponding to a RAID6 algorithm provided by the embodiment of the present application. As shown in Table 2, D1, D2...Dn are data blocks, and P and Q are check blocks, and satisfy the following operational relationship: According to the principle of solving binary linear equations, RAID6 can restore the missing data of two disks at most.
表2 RAID6算法对应的条带分布Table 2 Stripe distribution corresponding to the RAID6 algorithm
表3为本申请实施例所提供的一种RAID TP算法对应的条带分布示意图,如表3所示,D1、D2…Dn为数据块,P、Q和R为校验块,且满足以下运算关系: 根据解三元一次方程组原理,RAID TP最多可以恢复三块磁盘缺失的数据。Table 3 is a schematic diagram of the stripe distribution corresponding to a RAID TP algorithm provided by the embodiment of the present application. As shown in Table 3, D1, D2...Dn are data blocks, P, Q, and R are check blocks, and satisfy the following Operation relationship: According to the principle of solving linear equations in three variables, RAID TP can restore the missing data of up to three disks.
表3 RAID TP算法对应的条带分布Table 3 Stripe distribution corresponding to RAID TP algorithm
不同的RAID算法需要计算的校验块数量不同,因此不同的RAID算法需要不同的硬件电路进行编码或解码。在具体实施中,将数据写入磁盘分为不同的模式。模式一:满条带写,当磁盘中不存在数据时,将条带的所有数据写入磁盘时,将数据块的校验信息利用对应的RAID算法进行计算,然后基于校验信息将数据直接写入磁盘即可。模式二:读修改写,将需要修改的旧数据块和对应的校验块读出来,与待写入的新数块结合进行计算得到新写入数据块对应的新校验块,并根据新校验块将新数据块写入磁盘。模式三:重构写,将条带上无需进行修改的数据块读出来与待写入的新数据块相结合进行结算得到新校验块,然后根据新校验块将新数据块写入磁盘。Different RAID algorithms need to calculate different numbers of check blocks, so different RAID algorithms require different hardware circuits for encoding or decoding. In a specific implementation, writing data to disk is divided into different modes. Mode 1: Write with full stripes. When there is no data in the disk, when writing all the data in the stripe to the disk, the verification information of the data block is calculated using the corresponding RAID algorithm, and then the data is directly transferred based on the verification information. Just write to disk. Mode 2: read, modify and write, read out the old data block that needs to be modified and the corresponding check block, and combine it with the new data block to be written to calculate the new check block corresponding to the newly written data block, and according to the new Parity blocks write new data blocks to disk. Mode 3: Reconstructive writing, read out the data blocks that do not need to be modified on the stripe and combine them with the new data blocks to be written for settlement to obtain a new check block, and then write the new data block to the disk according to the new check block .
表4为本申请实施例所提供的另一种RAID5算法对应的条带分布示意图,如表4所示,D1、D2…D7为数据块,P为校验块,若需要将数据块D2和D3更新为数据块D2′和D3′,则需要考虑在写入数据块D2′和D3′过程中,未被修改数据块D1、D4、D5、D6和D7是否会发生掉盘的现象,因此,为了避免未被修改的数据发生掉盘,需要引入部分奇偶校验日志(PartialParity Log,简称PPL),PPL为未被修改数据块的校验和,则表4中 Table 4 is a schematic diagram of stripe distribution corresponding to another RAID5 algorithm provided by the embodiment of the present application. As shown in Table 4, D1, D2...D7 are data blocks, and P is a check block. If necessary, data blocks D2 and When D3 is updated to data blocks D2' and D3', it is necessary to consider whether the unmodified data blocks D1, D4, D5, D6, and D7 will be dropped during the process of writing data blocks D2' and D3'. Therefore , in order to avoid disk loss of unmodified data, it is necessary to introduce a partial parity log (PartialParity Log, referred to as PPL), PPL is the checksum of unmodified data blocks, and in Table 4
表4 RAID5算法对应的条带分布Table 4 Stripe distribution corresponding to the RAID5 algorithm
由此可见,不同写模式计算校验的硬件引擎电路各不相同,且在进行数据块写入磁盘时,模式二和模式三还需要计算PPL。其中,模式一种所有磁盘的数据块均会被修改,因此使用所有新数据块进行校验,则 It can be seen that the hardware engine circuits for calculating and verifying different write modes are different, and when writing data blocks to disk,
模式二适用于待修改的磁盘数据块较少的场景(例如,待修改的磁盘数据块少于条带总数的一半时),例如,表4中所示,将数据块D2和D3更新为数据块D2′和D3′时,原条带满足: 根据异或运算原理可得: 原数据块D2和D3被新数据块D2′和D3′替换后新的校验P′为: 且
模式三使用与待修改的磁盘数据块较多的场景(例如,待修改的磁盘数据块超过条带总数的一半时),例如,在n块磁盘中,数据块D2和D3将被修改,则新的校验P′计算公式为 且 由于P′为新的校验算法,则模式三下
综上所述,在进行RAID编码和RAID解码时,需要根据RAID性质调取对应的RAID算法,此外,还需要根据任务请求获取待处理数据相关信息,其中,待处理数据相关信息至少包括:数据块个数、校验块个数、切片子任务个数和数据块地址信息,然后基于待处理数据相关信息调用对应的RAID算法进行RAID编码和RAID解码。To sum up, when performing RAID encoding and RAID decoding, it is necessary to call the corresponding RAID algorithm according to the nature of the RAID. In addition, it is also necessary to obtain information related to the data to be processed according to the task request. The information related to the data to be processed includes at least: data The number of blocks, the number of check blocks, the number of slicing subtasks, and the address information of data blocks, and then call the corresponding RAID algorithm based on the relevant information of the data to be processed to perform RAID encoding and RAID decoding.
本申请实施例所提供的基于RAID芯片的数据处理方法,应用于RAID芯片,解析任务请求以确定数据块个数、校验块个数、切片子任务个数和数据块地址信息等待处理数据相关信息,并基于待处理数据相关信息调用对应的RAID算法进行RAID编码和RAID解码,节约CPU资源的同时,提高RAID数据处理的可靠性。The data processing method based on the RAID chip provided by the embodiment of the present application is applied to the RAID chip to analyze the task request to determine the number of data blocks, the number of check blocks, the number of slice subtasks, and the data block address information waiting to be processed. Information, and call the corresponding RAID algorithm based on the data-related information to be processed to perform RAID encoding and RAID decoding, saving CPU resources and improving the reliability of RAID data processing.
在上述实施例的基础上,数据处理单元在获取到待处理数据相关信息后,对数据进行RAID编码时,首先需要调取对应的RAID算法,利用对应的算法根据数据块个数和切片子任务个数计算校验块个数,并生成待处理数据块对应的校验块,然后,将待处理数据块和对应的校验块存储至对应的磁盘中。为了便于理解,下面将举例说明。On the basis of the above-mentioned embodiments, after the data processing unit obtains the relevant information of the data to be processed, when performing RAID encoding on the data, it first needs to call the corresponding RAID algorithm, and use the corresponding algorithm according to the number of data blocks and slice subtasks The number of check blocks is calculated, and the check block corresponding to the data block to be processed is generated, and then the data block to be processed and the corresponding check block are stored in the corresponding disk. For ease of understanding, an example will be given below.
图3为本申请实施例所提供的一种基于RAID芯片的RAID编码的示意图,例如,8+6编码,即,每个切片子任务包含8个数据块,且每个切片子任务生成6个校验块,假设,总任务为8MByte,每个数据块4Kbyte,如图3所示,任务调度单元接收到任务请求后,将任务请求进行解析后传输至任务切片处理单元,将总任务切分为256个切片子任务,且每个切片子任务包括8个数据块,每个数据块为4Kbyte,切分后将待处理数据块传输至数据输入单元进行计算,由此,每个切片子任务生成6个校验块传输至数据输出单元,并由数据输出单元传输至响应处理单元,进而实现RAID编码。FIG. 3 is a schematic diagram of a RAID chip-based RAID encoding provided by the embodiment of the present application, for example, 8+6 encoding, that is, each slice subtask contains 8 data blocks, and each slice subtask generates 6 data blocks. Assuming that the total task is 8MByte and each data block is 4Kbyte, as shown in Figure 3, after the task scheduling unit receives the task request, it parses the task request and transmits it to the task slice processing unit to divide the total task There are 256 slice subtasks, and each slice subtask includes 8 data blocks, and each data block is 4Kbyte. After segmentation, the data block to be processed is transmitted to the data input unit for calculation. Generate 6 check blocks and transmit them to the data output unit, and then transmit them to the response processing unit to realize RAID encoding.
数据处理单元进行RAID解码时,同样需要先调取对应的RAID算法,然后利用该RAID算法根据待处理数据块和待处理数据块对应的校验块确定缺失盘的目标数据块,然后对目标数据块进行恢复,由此完成对损坏数据的恢复。为了便于理解,下面将举例说明。When the data processing unit performs RAID decoding, it also needs to call the corresponding RAID algorithm first, and then use the RAID algorithm to determine the target data block of the missing disk according to the data block to be processed and the check block corresponding to the data block to be processed, and then perform The block is recovered, thereby completing the recovery of the damaged data. For ease of understanding, an example will be given below.
图4为本申请实施例所提供的一种基于RAID芯片的RAID解码的示意图,如图4所示,例如,6+3解码,即,每个切片子任务包括6个数据块和3个校验块,假设其中包括3个数据块为待处理数据块,也就是说包括3个待恢复的数据块,若总任务为192Kbyte,每个数据块为4Kbyte。如图3所示,若待恢复数据块为数据块2、数据块4和数据块6,任务调度单元接收到任务请求后,将任务请求进行解析后传输至任务切片处理单元,将总任务切分为8个切片子任务,且每个切片子任务包括3个数据块和3个校验块,每个数据块和校验块均为4Kbyte,切分后将待处理数据块传输至数据输入单元进行计算,由此生成数据块2、数据块4和数据块6传输至数据输出单元,并由数据输出单元传输至响应处理单元,进而实现RAID解码。FIG. 4 is a schematic diagram of RAID decoding based on a RAID chip provided by the embodiment of the present application. As shown in FIG. 4, for example, 6+3 decoding, that is, each slice subtask includes 6 data blocks and 3 parity Check blocks, assuming that there are 3 data blocks to be processed, that is to say, 3 data blocks to be restored, if the total task is 192Kbyte, each data block is 4Kbyte. As shown in Figure 3, if the data blocks to be restored are
本申请实施例所提供的基于RAID芯片的数据处理方法,基于RAID进行RAID编码和RAID解码,节约CPU资源,节约硬件面积。将总任务切分为多个切片子任务,并由不同的数据处理单元进行计算,提升数据处理效率的同时,若数据处理过程中出现故障可进行快速定位和故障排除,进而提升RAID的可靠性。The RAID chip-based data processing method provided in the embodiment of the present application performs RAID encoding and RAID decoding based on RAID, saving CPU resources and hardware area. Divide the total task into multiple slice subtasks, and perform calculations by different data processing units, while improving data processing efficiency, if a fault occurs during data processing, it can be quickly located and troubleshooted, thereby improving the reliability of RAID .
在具体实施例中,如图2所示,数据处理单元在获取到信息处理模块1解析后的待处理数据相关数据后,根据待处理数据相关数据中的数据块地址信息确定待处理数据块的起始地址,并根据该起始地址和数据块个数调取待处理数据块,并基于调取的待处理数据块进行计算。In a specific embodiment, as shown in FIG. 2 , the data processing unit determines the address of the data block to be processed according to the data block address information in the data related data to be processed after obtaining the data related to the data to be processed after the
需要说明的是,信息处理模块1中的任务调度单元在获取到任务请求后,在解析任务请求前,先对任务请求进行检查,查看任务请求是否满足预设条件,例如任务请求的格式是否正确,对于预设条件本申请不作限定。若任务请求不满足预设条件,则结束数据处理,并将异常信号传输至响应处理单元,以便于提醒用户进行处理。It should be noted that, after obtaining the task request, the task scheduling unit in the
进一步的,若任务请求满足预设条件,则对任务请求进行解析得到待处理数据相关信息,并在根据待处理数据相关信息调取待处理数据块之后,地址格式检查单元根据数据块地址信息对各待处理数据块进行信息校验,并存储校验结果,由此,避免将校验结果传输给下级处理单元时导致系统错乱。Further, if the task request satisfies the preset condition, the task request is parsed to obtain the related information of the data to be processed, and after the data block to be processed is retrieved according to the related information of the data to be processed, the address format checking unit performs the processing according to the address information of the data block Information verification is performed on each data block to be processed, and the verification result is stored, thereby avoiding system confusion when the verification result is transmitted to the lower-level processing unit.
本申请实施例所提供的基于RAID芯片的数据处理方法,信息处理模块1中的任务处理单元和地址格式检查单元等处理单元对信息进行校验和检查,由此保证整个数据处理过程的可靠性。此外,任务处理模块2中的数据输入单元根据数据块地址信息调取待处理数据块进行数据计算,进而保证数据的准确快速调取,进一步提高数据处理效率。In the data processing method based on the RAID chip provided by the embodiment of the present application, the processing units such as the task processing unit and the address format checking unit in the
在上述实施例中,对于基于RAID芯片的数据处理方法进行了详细描述,本申请还提供一种基于RAID芯片的数据处理装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件结构的角度。In the foregoing embodiments, the data processing method based on the RAID chip is described in detail, and the present application also provides an embodiment corresponding to a data processing device based on the RAID chip. It should be noted that this application describes the embodiments of the device part from two perspectives, one is based on the perspective of functional modules, and the other is based on the perspective of hardware structure.
图5为本申请实施例所提供的一种基于RAID芯片的数据处理装置的结构图,如图5所示,该装置包括:Fig. 5 is a structural diagram of a data processing device based on a RAID chip provided by an embodiment of the present application. As shown in Fig. 5, the device includes:
解析模块10,用于在获取到任务请求后,解析任务请求得到对应的待处理数据相关信息;The
调取模块11,用于根据待处理数据相关信息调取待处理数据块;Calling
切分模块12,用于按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务;The
传输模块13,用于将各切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行RAID编码和/或RAID解码。The
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。Since the embodiment of the device part corresponds to the embodiment of the method part, please refer to the description of the embodiment of the method part for the embodiment of the device part, and details will not be repeated here.
本申请实施例所提供的基于RAID芯片的数据处理装置,应用于RAID芯片,包括:在获取到数据处理的任务请求后,解析任务请求得到对应的待处理数据相关信息,并根据待处理数据相关信息调取待处理数据块,然后按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,以便于不同的数据处理单元对不同的切片子任务和对应的待处理数据块进行RAID编码和/或RAID解码。由此可见,本申请所提供的技术方案,基于RAID芯片实现RAID编码和/或RAID解码,即,基于RAID芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约CPU资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约CPU资源的同时,提升RAID的数据处理效率。The data processing device based on the RAID chip provided by the embodiment of the present application is applied to the RAID chip, including: after obtaining the task request for data processing, parsing the task request to obtain the corresponding data-related information to be processed, and according to the data-to-be-processed related information The information retrieves the data blocks to be processed, and then divides the total task corresponding to the task request into multiple slice subtasks according to the preset segmentation rules, so that different data processing units can process different slice subtasks and corresponding pending tasks. Process data blocks for RAID encoding and/or RAID decoding. It can be seen that the technical solution provided by this application implements RAID encoding and/or RAID decoding based on the RAID chip, that is, implements data storage and/or data recovery based on the RAID chip, reduces hardware cache consumption, and saves CPU resources. At the same time, the total task is divided into multiple sliced subtasks, that is, a large task is divided into multiple small tasks, which are processed by different data processing units. Therefore, in terms of task scheduling, sliced subtasks are beneficial With fine-grained management and control, it is easy to locate and troubleshoot faults when an error occurs in any slice subtask. At the data processing level, multiple data processing units simultaneously process each slice subtask to improve the efficiency of data processing, thereby reducing the area of the hardware system, saving CPU resources, and improving the data processing efficiency of RAID.
图6为本申请另一实施例提供的一种基于RAID芯片的数据处理装置的结构图,如图6所示,基于RAID芯片的数据处理装置包括:存储器20,用于存储计算机程序;FIG. 6 is a structural diagram of a data processing device based on a RAID chip provided by another embodiment of the present application. As shown in FIG. 6, the data processing device based on a RAID chip includes: a memory 20 for storing computer programs;
处理器21,用于执行计算机程序时实现如上述实施例所提到的基于RAID芯片的数据处理方法的步骤。The processor 21 is configured to implement the steps of the data processing method based on the RAID chip as mentioned in the above embodiment when executing the computer program.
本实施例提供的基于RAID芯片的数据处理装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。The RAID chip-based data processing device provided in this embodiment may include, but is not limited to, a smart phone, a tablet computer, a notebook computer or a desktop computer, and the like.
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(Digital Signal Processor,简称DSP)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)、可编程逻辑阵列(ProgrammableLogic Array,简称PLA)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(Central Processing Unit,简称CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(GraphicsProcessing Unit,简称GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(Artificial Intelligence,简称AI)处理器,该AI处理器用于处理有关机器学习的计算操作。Wherein, the processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The processor 21 may be at least one of a Digital Signal Processor (DSP for short), a Field-Programmable Gate Array (FPGA for short), and a Programmable Logic Array (PLA for short). implemented in the form of hardware. Processor 21 may also include a main processor and a coprocessor, the main processor is a processor for processing data in a wake-up state, and is also called a central processing unit (Central Processing Unit, referred to as CPU); It is a low-power processor for processing data in the standby state. In some embodiments, the processor 21 may be integrated with a graphics processor (Graphics Processing Unit, GPU for short), and the GPU is used for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 21 may also include an artificial intelligence (AI for short) processor, and the AI processor is used to process computing operations related to machine learning.
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的基于RAID芯片的数据处理方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于基于RAID芯片的数据处理方法中所涉及的相关数据等。Memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include high-speed random access memory, and non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein, after the computer program is loaded and executed by the processor 21, it can realize the relevant steps of the data processing method based on the RAID chip disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, etc., and the storage method may be temporary storage or permanent storage. Wherein, the operating system 202 may include Windows, Unix, Linux and so on. The data 203 may include but not limited to relevant data involved in the RAID chip-based data processing method and the like.
在一些实施例中,基于RAID芯片的数据处理装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。In some embodiments, the data processing device based on the RAID chip may further include a display screen 22 , an input/output interface 23 , a communication interface 24 , a power supply 25 and a communication bus 26 .
本领域技术人员可以理解,图6中示出的结构并不构成对基于RAID芯片的数据处理装置的限定,可以包括比图示更多或更少的组件。Those skilled in the art can understand that the structure shown in FIG. 6 does not limit the data processing device based on the RAID chip, and may include more or less components than those shown in the figure.
本申请实施例提供的基于RAID芯片的数据处理装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:基于RAID芯片的数据处理方法。The data processing device based on the RAID chip provided by the embodiment of the present application includes a memory and a processor. When the processor executes a program stored in the memory, the following method can be implemented: a data processing method based on the RAID chip.
本申请实施例所提供的基于RAID芯片的数据处理装置,基于RAID芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约CPU资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约CPU资源的同时,提升RAID的数据处理效率。The data processing device based on the RAID chip provided by the embodiment of the present application implements data storage and/or data recovery based on the RAID chip, reduces hardware cache consumption, and saves CPU resources. At the same time, the total task is divided into multiple sliced subtasks, that is, a large task is divided into multiple small tasks, which are processed by different data processing units. Therefore, in terms of task scheduling, sliced subtasks are beneficial With fine-grained management and control, it is easy to locate and troubleshoot faults when an error occurs in any slice subtask. At the data processing level, multiple data processing units simultaneously process each slice subtask to improve the efficiency of data processing, thereby reducing the area of the hardware system, saving CPU resources, and improving the data processing efficiency of RAID.
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。Finally, the present application also provides an embodiment corresponding to a computer-readable storage medium. A computer program is stored on a computer-readable storage medium, and when the computer program is executed by a processor, the steps described in the foregoing method embodiments are implemented.
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。It can be understood that if the methods in the above embodiments are implemented in the form of software function units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or part of the contribution to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , executing all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM for short), random access memory (Random Access Memory, RAM for short), magnetic disk or optical disk, etc., which can store program codes. medium.
以上对本申请所提供的一种基于RAID芯片的数据处理方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。A data processing method, device and medium based on a RAID chip provided by the present application has been introduced in detail above. Each embodiment in the description is described in a progressive manner, each embodiment focuses on the difference from other embodiments, and the same and similar parts of each embodiment can be referred to each other. As for the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and for the related information, please refer to the description of the method part. It should be pointed out that those skilled in the art can make some improvements and modifications to the application without departing from the principles of the application, and these improvements and modifications also fall within the protection scope of the claims of the application.
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。It should also be noted that in this specification, relative terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that these entities or operations There is no such actual relationship or order between the operations. Furthermore, the term "comprises", "comprises" or any other variation thereof is intended to cover a non-exclusive inclusion such that a process, method, article, or apparatus comprising a set of elements includes not only those elements, but also includes elements not expressly listed. other elements of or also include elements inherent in such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article or apparatus comprising said element.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211128358.3A CN115454343A (en) | 2022-09-16 | 2022-09-16 | Data processing method, device and medium based on RAID chip |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211128358.3A CN115454343A (en) | 2022-09-16 | 2022-09-16 | Data processing method, device and medium based on RAID chip |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN115454343A true CN115454343A (en) | 2022-12-09 |
Family
ID=84304596
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202211128358.3A Pending CN115454343A (en) | 2022-09-16 | 2022-09-16 | Data processing method, device and medium based on RAID chip |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN115454343A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115964155A (en) * | 2023-03-16 | 2023-04-14 | 燧原智能科技(成都)有限公司 | On-chip data processing hardware, on-chip data processing method and AI platform |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101652752A (en) * | 2006-07-24 | 2010-02-17 | 马维尔国际贸易有限公司 | File server for redundant array of independent disks (RAID) system |
| CN102158538A (en) * | 2011-02-18 | 2011-08-17 | 杭州宏杉科技有限公司 | Management method and device of network storage system |
| US20110214011A1 (en) * | 2010-02-27 | 2011-09-01 | Cleversafe, Inc. | Storing raid data as encoded data slices in a dispersed storage network |
| US8560772B1 (en) * | 2010-12-29 | 2013-10-15 | Datadirect Networks, Inc. | System and method for data migration between high-performance computing architectures and data storage devices |
| CN110462577A (en) * | 2017-12-28 | 2019-11-15 | 华为技术有限公司 | A method for writing data and a solid-state hard disk array |
-
2022
- 2022-09-16 CN CN202211128358.3A patent/CN115454343A/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101652752A (en) * | 2006-07-24 | 2010-02-17 | 马维尔国际贸易有限公司 | File server for redundant array of independent disks (RAID) system |
| US20110214011A1 (en) * | 2010-02-27 | 2011-09-01 | Cleversafe, Inc. | Storing raid data as encoded data slices in a dispersed storage network |
| US8560772B1 (en) * | 2010-12-29 | 2013-10-15 | Datadirect Networks, Inc. | System and method for data migration between high-performance computing architectures and data storage devices |
| CN102158538A (en) * | 2011-02-18 | 2011-08-17 | 杭州宏杉科技有限公司 | Management method and device of network storage system |
| CN110462577A (en) * | 2017-12-28 | 2019-11-15 | 华为技术有限公司 | A method for writing data and a solid-state hard disk array |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115964155A (en) * | 2023-03-16 | 2023-04-14 | 燧原智能科技(成都)有限公司 | On-chip data processing hardware, on-chip data processing method and AI platform |
| CN115964155B (en) * | 2023-03-16 | 2023-05-30 | 燧原智能科技(成都)有限公司 | On-chip data processing hardware, on-chip data processing method and AI platform |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8332367B2 (en) | Parallel data redundancy removal | |
| CN110908707B (en) | Resource packaging method, device, server and storage medium | |
| CN115098046B (en) | Disk array initialization method, system, electronic device and storage medium | |
| CN113687977B (en) | Data processing device for improving computing performance based on RAID controller | |
| US20250258604A1 (en) | Storage system, data storage method, data read method, and storage medium | |
| CN113687978B (en) | Data processing method for memory array controller | |
| CN110765069A (en) | Data migration method, device and system | |
| WO2021189905A1 (en) | Distributed data retrieval method and apparatus, and electronic device and storage medium | |
| US20250130723A1 (en) | Data processing method and related device | |
| US20200379653A1 (en) | Reclaiming free space in a storage system | |
| WO2024259890A1 (en) | Data backup method, electronic device, and computer-readable storage medium | |
| CN115712394A (en) | Data reading and writing method and device, computer equipment and readable storage medium | |
| US11385828B2 (en) | Method and apparatus for calculating storage system available capacity | |
| CN115454711A (en) | Method, device and medium for recovering erasure correction data in distributed storage system | |
| CN117193672B (en) | Data processing method and device of storage device, storage medium and electronic device | |
| CN115454343A (en) | Data processing method, device and medium based on RAID chip | |
| US10747615B2 (en) | Method and apparatus for non-volatile memory array improvement using a command aggregation circuit | |
| CN111857549B (en) | Method, apparatus and computer program product for managing data | |
| US20200272441A1 (en) | Systems and methods for mapping software applications interdependencies | |
| CN114995770B (en) | Data processing method, device, equipment, system and readable storage medium | |
| US11442639B2 (en) | Method, apparatus, and storage medium for managing stripe in storage system | |
| CN116401063A (en) | A RAID resource allocation method, device, equipment and medium | |
| CN115202589A (en) | Placement group member selection method, device, equipment and readable storage medium | |
| CN120045493B (en) | A host bus adapter, control method and related equipment | |
| US12204750B2 (en) | Metadata management for transparent block level compression |
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 |































