一种基于RAID芯片的数据处理方法、装置及介质与流程


一种基于raid芯片的数据处理方法、装置及介质
技术领域
1.本技术涉及数据处理技术领域,特别是涉及一种基于raid芯片的数据处理方法、装置及介质。


背景技术:



2.磁盘阵列(redundant arrays of independent disks,raid)是通过组合多个独立磁盘得到一个容量巨大且具有冗余能力的磁盘组,采用raid存储技术,可以极大提高存储容量,提高系统输入输出的请求能力,并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。
3.raid中数据以块为单位分布到各个磁盘上,当raid中的一个磁盘数据损坏后,利用其余的未损坏数据和相应的校验信息进行raid的编码或解码即可恢复被损坏的数据。目前,通常在cpu上运行raid软件进行编码和解码以恢复损坏的数据,显然,这样的方式会过多占用cpu资源,当处理数据的任务量很大时,提高cpu频率满足业务需求就会导致较高的功耗,若不提高cpu频率则会导致任务处理效率低。
4.由此可见,如何避免占用过多cpu资源的同时,提高raid的编码和解码效率,进而提升数据处理的效率,是本领域技术人员亟待解决的问题。


技术实现要素:



5.本技术的目的是提供一种基于raid芯片的数据处理方法、装置及介质,在不占用cpu资源的情况下,提高raid的编码和解码效率,进而提升数据处理效率。
6.为解决上述技术问题,本技术提供一种基于raid芯片的数据处理方法,应用于raid芯片,包括:
7.在获取到任务请求后,解析所述任务请求得到对应的待处理数据相关信息;
8.根据所述待处理数据相关信息调取待处理数据块;
9.按照预先设定的切分规则将所述任务请求对应的总任务切分为多个切片子任务;
10.将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码。
11.优选地,所述将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码包括:
12.根据存储所述待处理数据块的raid特性,调取对应的raid算法进行raid编码和/或raid解码。
13.优选地,所述待处理数据相关信息至少包括:数据块个数、校验块个数、切片子任务个数和数据块地址信息。
14.优选地,所述数据处理单元进行raid编码和/或raid解码包括:
15.所述数据处理单元进行raid编码时,包括:
16.调取对应的raid算法以便于根据所述数据块个数和所述切片子任务个数计算所
述校验块个数;
17.并生成所述待处理数据块对应的校验块;
18.将所述待处理数据块和对应的校验块存储至对应磁盘中;
19.所述数据处理单元进行raid解码时,包括:
20.调取对应的raid算法以便于根据所述待处理数据块和所述待处理数据块对应的校验块确定缺失盘的目标数据块;
21.恢复所述目标数据块中的数据。
22.优选地,所述根据所述待处理数据相关信息调取待处理数据块包括:
23.依据所述数据块地址信息确定所述待处理数据块的起始地址;
24.根据所述起始地址和所述数据块个数调取所述待处理数据块。
25.优选地,在所述根据所述待处理数据相关信息调取待处理数据块之后,还包括:
26.根据所述数据块地址信息对各所述待处理数据块进行信息校验,并存储校验结果。
27.优选地,在所述解析所述任务请求得到所述任务单元对应的待处理数据相关信息之前,还包括:
28.校验所述任务请求是否满足预设条件,若不满足,则结束数据处理,并将异常信号传输至响应处理单元。
29.为了解决上述技术问题,本技术还提供了一种基于raid芯片的数据处理装置,应用于raid芯片,包括:
30.解析模块,用于在获取到任务请求后,解析所述任务请求得到对应的待处理数据相关信息;
31.调取模块,用于根据所述待处理数据相关信息调取待处理数据块;
32.切分模块,用于按照预先设定的切分规则将所述任务请求对应的总任务切分为多个切片子任务;
33.传输模块,用于将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码。
34.为了解决上述技术问题,本技术还提供了一种基于raid芯片的数据处理装置,包括存储器,用于存储计算机程序;
35.处理器,用于执行所述计算机程序时实现所述的基于raid芯片的数据处理方法的步骤。
36.为了解决上述技术问题,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的基于raid芯片的数据处理方法的步骤。
37.本发明所提供的一种基于raid芯片的数据处理方法,应用于raid芯片,包括:在获取到数据处理的任务请求后,解析任务请求得到对应的待处理数据相关信息,并根据待处理数据相关信息调取待处理数据块,然后按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,以便于不同的数据处理单元对不同的切片子任务和对应的待处理数据块进行raid编码和/或raid解码。由此可见,本技术所提供的技术方案,基于raid芯片实现raid编码和/或raid解码,即,基于raid芯片实现数据的存储和/或数据的恢复,减少
硬件缓存的消耗,节约cpu资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约cpu资源的同时,提升raid的数据处理效率。
38.此外,本技术还提供一种基于raid芯片的数据处理装置和介质,与上述的基于raid芯片的数据处理方法相对应,效果同上。
附图说明
39.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1为本技术实施例所提供的一种基于raid芯片的数据处理方法的流程图;
41.图2为本技术实施例所提供的一种基于raid数据处理的硬件架构示意图;
42.图3为本技术实施例所提供的一种基于raid芯片的raid编码的示意图;
43.图4为本技术实施例所提供的一种基于raid芯片的raid解码的示意图;
44.图5为本技术实施例所提供的一种基于raid芯片的数据处理装置的结构图;
45.图6为本技术另一实施例提供的一种基于raid芯片的数据处理装置的结构图;
46.附图标记如下:1为信息处理模块,2为任务处理模块。
具体实施方式
47.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
48.本技术的核心是提供一种基于raid芯片的数据处理方法、装置及介质,应用于raid芯片,避免占用cpu资源,在进行数据处理时,将总任务切分为多个切片子任务,并由不同的数据处理单元对切片子任务进行raid编码和/或raid解码,进而提升数据处理效率。
49.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。
50.raid是通过组合多个独立磁盘得到一个容量巨大且具有冗余能力的磁盘组,采用raid存储技术,可以极大提高存储容量,提高系统输入输出的请求能力,并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。
51.raid中数据以块为单位分布到各个磁盘上,当raid中的一个磁盘数据损坏后,利用其余的未损坏数据和相应的校验信息进行raid的编码或解码即可恢复被损坏的数据。目前,通常在cpu上运行raid软件进行编码和解码以恢复损坏的数据,显然,这样的方式会过多占用cpu资源,当处理数据的任务量很大时,提高cpu频率满足业务需求就会导致较高的功耗,若不提高cpu频率则会导致任务处理效率低。
52.为了解决上述技术问题,本技术实施例提供了一种基于raid芯片的数据处理方
法,该方法应用于raid芯片,由此避免占用cpu资源,在进行raid编码和raid解码时,将总任务切分为多个切片子任务,并由不同的数据处理单元对不同的切片子任务进行处理,进而提升数据处理效率。
53.图1为本技术实施例所提供的一种基于raid芯片的数据处理方法的流程图,如图1所示,该方法应用于raid芯片,包括:
54.s10:在获取到任务请求后,解析任务请求得到对应的待处理数据相关信息;
55.在具体实施例中,为了避免占用过多cpu资源,本技术实施例所提供的数据处理方案应用于raid芯片,图2为本技术实施例所提供的一种基于raid数据处理的硬件架构示意图,如图2所示,raid芯片中包括信息处理模块1和任务处理模块2,其中,信息处理模块1包括任务调度单元、数据地址调度单元、数据参数调度单元、地址格式检查单元、任务切片处理单元和响应处理单元。
56.根据运用或组合运用这三种技术的策略和架构衍生了很多种raid算法,其中,使用最为广泛的是raid5、raid6和raid tp。在raid中数据以块为单位分布到各个磁盘上,raid5把数据和与其对应的奇偶校验信息存储到组成raid5的各个磁盘上。当raid5的一个磁盘数据损坏后,利用其余未损坏数据和对应的校验信息可实现恢复被损坏的数据。因此,raid5需要一个硬件计算引擎进行编码或解码。raid6是在raid5的基础上又增加了一个校验盘,即raid6可以恢复两块磁盘丢失的数据,则raid6需要两个个硬件计算引擎进行编码或解码。raid tp是在raid6的基础上又增加了一个校验盘,即,raid tp可以恢复三块磁盘的丢失数据,则raid tp需要3个硬件计算引擎进行编码或解码。
57.因此在进行raid编码和raid解码时,均需要先确定待处理数据对应的数据块个数、校验块个数、数据块地址信息和有效数据位等信息,为了提高数据处理速度,任务处理模块2需要将任务请求的总任务切分为多个切片子任务,因此,在进行数据处理前还需要获取切片子任务个数等信息。
58.实施中,任务调度单元在获取到任务请求后,解析该任务请求得到待处理数据相关信息,待处理数据相关信息至少包括数据块个数、校验块个数、切片子任务个数、数据块地址信息和有效数据位等,其中,数据块地址信息包括地址列表指针和参数列表指针地址等。然后,将待处理数据相关信息按照类型传输至数据地址调度单元、数据参数调度单元和地址格式检查单元。
59.s11:根据待处理数据相关信息调取待处理数据块;
60.进一步的,数据地址调度单元根据数据块地址信息中地址列表指针和地址数量等信息将需要进行数据处理的地址信息调度起来,需要说明的是,当进行raid编码时,需要进行数据处理的地址信息为即将进行存储数据的磁盘地址信息,当进行raid解码时,需要进行数据处理的地址信息包括已损坏数据块对应的磁盘地址信息,以及替换的新的磁盘地址信息。数据地址调度单元将需要的信息调度起来后传输至地址格式检查单元。
61.数据参数调度单元则根据参数列表指针地址将需要的参数信息调度起来,并传输至地址格式检查单元。其中,参数信息包括每个切片子任务的大小,每个总任务的大小等参数信息。地址格式检查单元在获取到各类信息后,对信息进行检查和校验,并传输至任务切片处理单元,然后由任务切片处理单元传输至数据输入单元。
62.数据输入单元根据数据块地址信息确定数据块的起始地址,并依据该起始地址各
数据块个数调取待处理数据块。
63.s12:按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务;
64.s13:将各切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码。
65.进一步的,任务切片处理单元按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,其中,预先设定的切分规则可以是用户自行定义的固定单位大小的切片子任务,也可以是根据用户配置的切片子任务个数进行平均切分,对此本技术不作限定。
66.将总任务切分为多个切片子任务后,对应的,对个切片子任务存在多个数据块,如图2所示,在任务处理模块2中包括n各数据处理单元,将各切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码,各数据处理单元进行处理得到处理结果后输出至数据输出单元。
67.本技术实施例所提供的基于raid芯片的数据处理方法,应用于raid芯片,包括:在获取到数据处理的任务请求后,解析任务请求得到对应的待处理数据相关信息,并根据待处理数据相关信息调取待处理数据块,然后按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,以便于不同的数据处理单元对不同的切片子任务和对应的待处理数据块进行raid编码和/或raid解码。由此可见,本技术所提供的技术方案,基于raid芯片实现raid编码和/或raid解码,即,基于raid芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约cpu资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约cpu资源的同时,提升raid的数据处理效率。
68.不同类型的raid所需的硬件计算引擎数量不同,且计算方式也不同,因此,各数据处理单元在进行raid编码和/或raid解码时,需要先确定存储待处理数据块的raid特性,然后调取对应的raid算法进行raid编码和/或raid解码。
69.表1为本技术实施例所提供的一种raid5算法对应的条带分布示意图,如表1所示,d1、d2

dn为来自不同磁盘的数据块,p为校验块,数据块和校验块满足以下运算关系:其中,*表示伽罗华域乘法,表示异或操作,k1、k2、k3

kn为伽罗华乘法运算参数。
70.则raid5算法的raid5编码公式为:则raid5算法的raid5编码公式为:raid5解码公式为:raid5解码公式为:其中,x取值范围为大于0的自然数,dx为丢失数据块,kx为丢失数据块对应的伽罗华乘法运算参数,在在中不包括dx和dx对应的kx项,例如,若x取1时,不包含k1*d1。由此,raid5任意一个数据块丢失,均可通过其他数据块进行恢复。
71.表1 raid5算法对应的条带分布
[0072][0073]
表2为本技术实施例所提供的一种raid6算法对应的条带分布示意图,如表2所示,d1、d2

dn为数据块,p和q为校验块,且满足以下运算关系:且满足以下运算关系:根据解二元一次方程组原理,raid6最多可以恢复两块磁盘缺失的数据。
[0074]
表2 raid6算法对应的条带分布
[0075][0076]
表3为本技术实施例所提供的一种raid tp算法对应的条带分布示意图,如表3所示,d1、d2

dn为数据块,p、q和r为校验块,且满足以下运算关系:,且满足以下运算关系:根据解三元一次方程组原理,raid tp最多可以恢复三块磁盘缺失的数据。
[0077]
表3 raid tp算法对应的条带分布
[0078][0079]
不同的raid算法需要计算的校验块数量不同,因此不同的raid算法需要不同的硬件电路进行编码或解码。在具体实施中,将数据写入磁盘分为不同的模式。模式一:满条带写,当磁盘中不存在数据时,将条带的所有数据写入磁盘时,将数据块的校验信息利用对应的raid算法进行计算,然后基于校验信息将数据直接写入磁盘即可。模式二:读修改写,将需要修改的旧数据块和对应的校验块读出来,与待写入的新数块结合进行计算得到新写入数据块对应的新校验块,并根据新校验块将新数据块写入磁盘。模式三:重构写,将条带上无需进行修改的数据块读出来与待写入的新数据块相结合进行结算得到新校验块,然后根据新校验块将新数据块写入磁盘。
[0080]
表4为本技术实施例所提供的另一种raid5算法对应的条带分布示意图,如表4所示,d1、d2

d7为数据块,p为校验块,若需要将数据块d2和d3更新为数据块d2

和d3

,则需要考虑在写入数据块d2

和d3

过程中,未被修改数据块d1、d4、d5、d6和d7是否会发生掉盘的现象,因此,为了避免未被修改的数据发生掉盘,需要引入部分奇偶校验日志(partial parity log,简称ppl),ppl为未被修改数据块的校验和,则表4中log,简称ppl),ppl为未被修改数据块的校验和,则表4中
[0081]
表4 raid5算法对应的条带分布
[0082]
d1d2d3d4d5d6d7p
[0083]
由此可见,不同写模式计算校验的硬件引擎电路各不相同,且在进行数据块写入
磁盘时,模式二和模式三还需要计算ppl。其中,模式一种所有磁盘的数据块均会被修改,因此使用所有新数据块进行校验,则则
[0084]
模式二适用于待修改的磁盘数据块较少的场景(例如,待修改的磁盘数据块少于条带总数的一半时),例如,表4中所示,将数据块d2和d3更新为数据块d2

和d3

时,原条带满足:满足:根据异或运算原理可得:根据异或运算原理可得:原数据块d2和d3被新数据块d2

和d3

替换后新的校验p

为:为:且且
[0085]
模式三使用与待修改的磁盘数据块较多的场景(例如,待修改的磁盘数据块超过条带总数的一半时),例如,在n块磁盘中,数据块d2和d3将被修改,则新的校验p

计算公式为为且且由于p

为新的校验算法,则模式三下
[0086]
综上所述,在进行raid编码和raid解码时,需要根据raid性质调取对应的raid算法,此外,还需要根据任务请求获取待处理数据相关信息,其中,待处理数据相关信息至少包括:数据块个数、校验块个数、切片子任务个数和数据块地址信息,然后基于待处理数据相关信息调用对应的raid算法进行raid编码和raid解码。
[0087]
本技术实施例所提供的基于raid芯片的数据处理方法,应用于raid芯片,解析任务请求以确定数据块个数、校验块个数、切片子任务个数和数据块地址信息等待处理数据相关信息,并基于待处理数据相关信息调用对应的raid算法进行raid编码和raid解码,节约cpu资源的同时,提高raid数据处理的可靠性。
[0088]
在上述实施例的基础上,数据处理单元在获取到待处理数据相关信息后,对数据进行raid编码时,首先需要调取对应的raid算法,利用对应的算法根据数据块个数和切片子任务个数计算校验块个数,并生成待处理数据块对应的校验块,然后,将待处理数据块和对应的校验块存储至对应的磁盘中。为了便于理解,下面将举例说明。
[0089]
图3为本技术实施例所提供的一种基于raid芯片的raid编码的示意图,例如,8+6编码,即,每个切片子任务包含8个数据块,且每个切片子任务生成6个校验块,假设,总任务为8mbyte,每个数据块4kbyte,如图3所示,任务调度单元接收到任务请求后,将任务请求进行解析后传输至任务切片处理单元,将总任务切分为256个切片子任务,且每个切片子任务包括8个数据块,每个数据块为4kbyte,切分后将待处理数据块传输至数据输入单元进行计算,由此,每个切片子任务生成6个校验块传输至数据输出单元,并由数据输出单元传输至响应处理单元,进而实现raid编码。
[0090]
数据处理单元进行raid解码时,同样需要先调取对应的raid算法,然后利用该raid算法根据待处理数据块和待处理数据块对应的校验块确定缺失盘的目标数据块,然后对目标数据块进行恢复,由此完成对损坏数据的恢复。为了便于理解,下面将举例说明。
[0091]
图4为本技术实施例所提供的一种基于raid芯片的raid解码的示意图,如图4所示,例如,6+3解码,即,每个切片子任务包括6个数据块和3个校验块,假设其中包括3个数据块为待处理数据块,也就是说包括3个待恢复的数据块,若总任务为192kbyte,每个数据块为4kbyte。如图3所示,若待恢复数据块为数据块2、数据块4和数据块6,任务调度单元接收到任务请求后,将任务请求进行解析后传输至任务切片处理单元,将总任务切分为8个切片子任务,且每个切片子任务包括3个数据块和3个校验块,每个数据块和校验块均为4kbyte,切分后将待处理数据块传输至数据输入单元进行计算,由此生成数据块2、数据块4和数据块6传输至数据输出单元,并由数据输出单元传输至响应处理单元,进而实现raid解码。
[0092]
本技术实施例所提供的基于raid芯片的数据处理方法,基于raid进行raid编码和raid解码,节约cpu资源,节约硬件面积。将总任务切分为多个切片子任务,并由不同的数据处理单元进行计算,提升数据处理效率的同时,若数据处理过程中出现故障可进行快速定位和故障排除,进而提升raid的可靠性。
[0093]
在具体实施例中,如图2所示,数据处理单元在获取到信息处理模块1解析后的待处理数据相关数据后,根据待处理数据相关数据中的数据块地址信息确定待处理数据块的起始地址,并根据该起始地址和数据块个数调取待处理数据块,并基于调取的待处理数据块进行计算。
[0094]
需要说明的是,信息处理模块1中的任务调度单元在获取到任务请求后,在解析任务请求前,先对任务请求进行检查,查看任务请求是否满足预设条件,例如任务请求的格式是否正确,对于预设条件本技术不作限定。若任务请求不满足预设条件,则结束数据处理,并将异常信号传输至响应处理单元,以便于提醒用户进行处理。
[0095]
进一步的,若任务请求满足预设条件,则对任务请求进行解析得到待处理数据相关信息,并在根据待处理数据相关信息调取待处理数据块之后,地址格式检查单元根据数据块地址信息对各待处理数据块进行信息校验,并存储校验结果,由此,避免将校验结果传输给下级处理单元时导致系统错乱。
[0096]
本技术实施例所提供的基于raid芯片的数据处理方法,信息处理模块1中的任务处理单元和地址格式检查单元等处理单元对信息进行校验和检查,由此保证整个数据处理过程的可靠性。此外,任务处理模块2中的数据输入单元根据数据块地址信息调取待处理数据块进行数据计算,进而保证数据的准确快速调取,进一步提高数据处理效率。
[0097]
在上述实施例中,对于基于raid芯片的数据处理方法进行了详细描述,本技术还提供一种基于raid芯片的数据处理装置对应的实施例。需要说明的是,本技术从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件结构的角度。
[0098]
图5为本技术实施例所提供的一种基于raid芯片的数据处理装置的结构图,如图5所示,该装置包括:
[0099]
解析模块10,用于在获取到任务请求后,解析任务请求得到对应的待处理数据相关信息;
[0100]
调取模块11,用于根据待处理数据相关信息调取待处理数据块;
[0101]
切分模块12,用于按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务;
[0102]
传输模块13,用于将各切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码。
[0103]
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
[0104]
本技术实施例所提供的基于raid芯片的数据处理装置,应用于raid芯片,包括:在获取到数据处理的任务请求后,解析任务请求得到对应的待处理数据相关信息,并根据待处理数据相关信息调取待处理数据块,然后按照预先设定的切分规则将任务请求对应的总任务切分为多个切片子任务,以便于不同的数据处理单元对不同的切片子任务和对应的待处理数据块进行raid编码和/或raid解码。由此可见,本技术所提供的技术方案,基于raid芯片实现raid编码和/或raid解码,即,基于raid芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约cpu资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约cpu资源的同时,提升raid的数据处理效率。
[0105]
图6为本技术另一实施例提供的一种基于raid芯片的数据处理装置的结构图,如图6所示,基于raid芯片的数据处理装置包括:存储器20,用于存储计算机程序;
[0106]
处理器21,用于执行计算机程序时实现如上述实施例所提到的基于raid芯片的数据处理方法的步骤。
[0107]
本实施例提供的基于raid芯片的数据处理装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
[0108]
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(digital signal processor,简称dsp)、现场可编程门阵列(field-programmable gate array,简称fpga)、可编程逻辑阵列(programmable logic array,简称pla)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(central processing unit,简称cpu);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(graphics processing unit,简称gpu),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(artificial intelligence,简称ai)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0109]
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的基于raid芯片的数据处理方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括windows、unix、linux等。数据203可以包括但不限于基于raid芯片的数据处理方法中所涉及的相关数据等。
[0110]
在一些实施例中,基于raid芯片的数据处理装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
[0111]
本领域技术人员可以理解,图6中示出的结构并不构成对基于raid芯片的数据处理装置的限定,可以包括比图示更多或更少的组件。
[0112]
本技术实施例提供的基于raid芯片的数据处理装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:基于raid芯片的数据处理方法。
[0113]
本技术实施例所提供的基于raid芯片的数据处理装置,基于raid芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约cpu资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约cpu资源的同时,提升raid的数据处理效率。
[0114]
最后,本技术还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
[0115]
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(randomaccess memory,简称ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0116]
以上对本技术所提供的一种基于raid芯片的数据处理方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
[0117]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

技术特征:


1.一种基于raid芯片的数据处理方法,应用于raid芯片,其特征在于,包括:在获取到任务请求后,解析所述任务请求得到对应的待处理数据相关信息;根据所述待处理数据相关信息调取待处理数据块;按照预先设定的切分规则将所述任务请求对应的总任务切分为多个切片子任务;将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码。2.根据权利要求1所述的基于raid芯片的数据处理方法,其特征在于,所述将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码包括:根据存储所述待处理数据块的raid特性,调取对应的raid算法进行raid编码和/或raid解码。3.根据权利要求1所述的基于raid芯片的数据处理方法,其特征在于,所述待处理数据相关信息至少包括:数据块个数、校验块个数、切片子任务个数和数据块地址信息。4.根据权利要求3所述的基于raid芯片的数据处理方法,其特征在于,所述数据处理单元进行raid编码和/或raid解码包括:所述数据处理单元进行raid编码时,包括:调取对应的raid算法以便于根据所述数据块个数和所述切片子任务个数计算所述校验块个数;并生成所述待处理数据块对应的校验块;将所述待处理数据块和对应的校验块存储至对应磁盘中;所述数据处理单元进行raid解码时,包括:调取对应的raid算法以便于根据所述待处理数据块和所述待处理数据块对应的校验块确定缺失盘的目标数据块;恢复所述目标数据块中的数据。5.根据权利要求3所述的基于raid芯片的数据处理方法,其特征在于,所述根据所述待处理数据相关信息调取待处理数据块包括:依据所述数据块地址信息确定所述待处理数据块的起始地址;根据所述起始地址和所述数据块个数调取所述待处理数据块。6.根据权利要求4所述的基于raid芯片的数据处理方法,其特征在于,在所述根据所述待处理数据相关信息调取待处理数据块之后,还包括:根据所述数据块地址信息对各所述待处理数据块进行信息校验,并存储校验结果。7.根据权利要求1所述的基于raid芯片的数据处理方法,其特征在于,在所述解析所述任务请求得到所述任务单元对应的待处理数据相关信息之前,还包括:校验所述任务请求是否满足预设条件,若不满足,则结束数据处理,并将异常信号传输至响应处理单元。8.一种基于raid芯片的数据处理装置,应用于raid芯片,其特征在于,包括:解析模块,用于在获取到任务请求后,解析所述任务请求得到对应的待处理数据相关信息;调取模块,用于根据所述待处理数据相关信息调取待处理数据块;
切分模块,用于按照预先设定的切分规则将所述任务请求对应的总任务切分为多个切片子任务;传输模块,用于将各所述切片子任务和对应的待处理数据块传输至不同的数据处理单元以进行raid编码和/或raid解码。9.一种基于raid芯片的数据处理装置,其特征在于,包括存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的基于raid芯片的数据处理方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的基于raid芯片的数据处理方法的步骤。

技术总结


本申请公开了一种本发明所提供的一种基于RAID芯片的数据处理方法,基于RAID芯片实现RAID编码和/或RAID解码,即,基于RAID芯片实现数据的存储和/或数据的恢复,减少硬件缓存的消耗,节约CPU资源。同时,将总任务切分为多个切片子任务,即,将大任务切分为多个小任务,并由不同的数据处理单元进行处理,由此,在任务调度方面,切片子任务有利于精细化管理和控制,在任意一个切片子任务出现错误时,易于故障定位和排除。而在数据处理层面,多个数据处理单元同时对各切片子任务进行处理可提高数据处理的效率,进而实现降低硬件系统面积,节约CPU资源的同时,提升RAID的数据处理效率。提升RAID的数据处理效率。提升RAID的数据处理效率。


技术研发人员:

闫超 张磊 王明明

受保护的技术使用者:

山东云海国创云计算装备产业创新中心有限公司

技术研发日:

2022.09.16

技术公布日:

2022/12/9

本文发布于:2024-09-22 09:43:31,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/33962.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   数据处理   所述   切片
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议