CN105022586A - 一种数据处理方法、装置和系统 - Google Patents
一种数据处理方法、装置和系统 Download PDFInfo
- Publication number
- CN105022586A CN105022586A CN201410154051.XA CN201410154051A CN105022586A CN 105022586 A CN105022586 A CN 105022586A CN 201410154051 A CN201410154051 A CN 201410154051A CN 105022586 A CN105022586 A CN 105022586A
- Authority
- CN
- China
- Prior art keywords
- card
- local
- disk
- network
- check information
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种数据处理方法、装置和系统,用以解决现有技术中本地磁盘阵列的磁盘利用率较低的问题。该方法包括:本地独立磁盘冗余阵列RAID卡向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;将所述第一校验信息发送给网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中;其中,所述本地RAID卡和所述网络RAID卡位于同一局域网中的不同存储设备中。
Description
技术领域
本发明涉及业务支撑技术领域,尤其涉及一种数据处理方法、装置和系统
背景技术
独立磁盘冗余阵列(Redundant Arrays of Inexpensive Disks,RAID)简称磁盘阵列,是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个磁盘上。
除此之外,一般的磁盘阵列都具有数据校验功能,其中数据校验功能是在本地数据发生损坏后,利用校验信息可以使损坏的数据得以恢复,从而保证本地数据的安全性。
目前校验信息和本地数据都是存储在本地磁盘中,这样就会大量浪费本地存储空间。比如在大规模并行处理计算机(Massive Parallel Processing,MPP)数据库集群系统中,如果采用四个磁盘的RAID5,那么校验信息要占总存储空间的四分之一。如果说需要存放300T的数据,那么本地集群需要有400T的存储空间。假如说每个磁盘可以存储1T的数据,那么就需要400个磁盘来满足要求。但是MPP数据库同时对磁盘的数量有严格的要求,如果说此MPP数据库超过300个磁盘集群的性能会严重下降或者说机柜只能放置300个磁盘,此时400个磁盘的话就不得不采用两个集群,这样集群的性能也会造成很严重的影响。
发明内容
本发明实施例提供一种数据处理方法、装置和系统,用以解决现有技术中本地磁盘阵列的磁盘利用率较低的问题。
本发明实施例采用以下技术方案:
本发明实施例提供了一种数据处理方法,包括:
本地独立磁盘冗余阵列RAID卡向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;
按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;
将所述第一校验信息发送给网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中;其中,所述本地RAID卡和所述网络RAID卡位于同一局域网中的不同存储设备中。
可选的,将所述第一校验信息发送给网络RAID卡之前,所述方法还包括:
根据预先设置的所述本地磁盘阵列中的本地磁盘和所述网络磁盘阵列中的网络磁盘之间的映射关系,确定所述第一本地磁盘对应的第一网络磁盘;则
将所述第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中,具体包括:
将所述第一校验信息和所述第一网络磁盘的标识发送给所述网络RAID卡,指示所述网络RAID卡根据所述第一校验信息对所述第一网络磁盘进行更新。
可选的,所述方法还包括:
当所述本地磁盘阵列中的第二本地磁盘存储的数据损坏时,根据所述映射关系,确定所述第二本地磁盘对应的第二网络磁盘;
向所述网络RAID卡发送获取请求,所述获取请求中携带所述第二网络磁盘的磁盘标识,以便所述网络RAID卡能够从所述第二网络磁盘中获取第二校验信息并发送给所述本地RAID卡;
接收所述网络RAID卡发送的所述第二校验信息;
按照所述校验算法,对所述第二校验信息和预先读取的用于计算所述第二本地磁盘对应的校验信息的全部数据进行计算,并利用计算得到的数据对所述第二本地磁盘进行恢复。
可选的,所述方法还包括:
当所述本地RAID卡的IP地址发生变化时,所述本地RAID卡向所述网络RAID卡发送第一地址变化通知消息,所述第一地址变化通知消息中携带所述本地RAID卡变化后的IP地址,以便所述网络RAID卡能够根据所述本地RAID卡变化后的IP地址与所述本地RAID卡进行通信。
可选的,所述本地RAID卡中预先存储所述网络RAID卡的IP地址;则
所述方法还包括:
所述本地RAID卡接收所述网络RAID卡发送的第二地址变化通知消息,所述第二地址变化通知消息中携带所述网络RAID卡变化后的IP地址;
根据所述网络RAID卡变化后的IP地址,对预先存储的所述网络RAID卡的IP地址进行更新,以便能够根据所述网络RAID卡变化后的IP地址与所述网络RAID卡进行通信。
本发明实施例还提供了一种本地独立磁盘冗余阵列RAID卡,所述本地RAID卡和网络RAID卡位于同一局域网中的不同存储设备中,其中,所述本地RAID卡包括:
读取单元,用于向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;
第一校验信息生成单元,用于按照预先设置的校验算法对读取单元读取的全部数据进行校验计算,生成第一校验信息;
第一校验信息发送单元,用于将第一校验信息生成单元生成的第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中。
可选的,所述本地RAID卡还包括:
第一网络磁盘确定单元,用于根据预先设置的所述本地磁盘阵列中的本地磁盘和所述网络磁盘阵列中的网络磁盘之间的映射关系,确定所述第一本地磁盘对应的第一网络磁盘;则
所述第一校验信息发送单元,具体用于:
将第一校验信息生成单元生成的第一校验信息和第一网络磁盘确定单元确定的第一网络磁盘的标识发送给所述网络RAID卡,指示所述网络RAID卡根据所述第一校验信息对所述第一网络磁盘进行更新。
可选的,所述本地RAID卡还包括:
第二网络磁盘确定单元,用于当所述本地磁盘阵列中的第二本地磁盘存储的数据损坏时,根据所述映射关系,确定所述第二本地磁盘对应的第二网络磁盘;
获取请求发送单元,用于向所述网络RAID卡发送获取请求,所述获取请求中携带第二网络磁盘确定单元确定出的第二网络磁盘的磁盘标识,以便所述网络RAID卡能够从所述第二网络磁盘中获取第二校验信息并发送给所述本地RAID卡;
第二校验信息接收单元,用于接收所述网络RAID卡发送的所述第二校验信息;
恢复单元,用于按照所述校验算法,对第二校验信息接收单元接收到的第二校验信息和预先读取的与所述第二本地磁盘位于同一带区的其它本地磁盘中存储的全部数据进行计算,并利用计算得到的数据对所述第二本地磁盘进行恢复。
可选的,所述本地RAID卡还包括:
第一地址变化通知消息发送单元,用于当所述本地RAID卡的IP地址发生变化时,向所述网络RAID卡发送第一地址变化通知消息,所述第一地址变化通知消息中携带所述本地RAID卡变化后的IP地址,以便所述网络RAID卡能够根据所述本地RAID卡变化后的IP地址与所述本地RAID卡进行通信。
可选的,所述本地RAID卡还包括:
IP地址存储单元,用于预先存储所述网络RAID卡的IP地址;则
所述本地RAID卡还包括:
第二地址变化通知消息接收单元,用于接收所述网络RAID卡发送的第二地址变化通知消息,所述第二地址变化通知消息中携带所述网络RAID卡变化后的IP地址;
IP地址更新单元,用于根据第二地址变化通知消息接收单元接收到的所述网络RAID卡变化后的IP地址,对IP地址存储单元中预先存储的所述网络RAID卡的IP地址进行更新,以便能够根据所述网络RAID卡变化后的IP地址与所述网络RAID卡进行通信。
本发明实施例还提供了一种数据处理系统,包括:位于同一局域网中的不同存储设备中的本地独立磁盘冗余阵列RAID卡和网络RAID卡,所述本地RAID卡下挂本地磁盘阵列,所述网络RAID卡下挂网络磁盘阵列,其中:
所述本地RAID卡,用于向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;将所述第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中;
所述网络RAID卡,用于接收所述第一校验信息;并将所述第一校验信息存储在其下挂的网络磁盘阵列中。
本发明实施例的有益效果如下:
本技术方案与现有技术相比,不再是将本地数据和校验信息同时存储在本地磁盘中,而是将校验信息存储在与本地磁盘位于同一局域网的网络磁盘上,使得本地磁盘全都用来存储本地数据,从而大大减少了本地存储空间的浪费,最大限度的提高了本地磁盘的利用率。
附图说明
图1为本发明实施例提供的一种数据处理方法的实现流程图;
图2为本发明实施例提供的一种数据恢复方法的具体实现流程图;
图3为本发明实施例提供的用于实现数据处理方法的系统架构图;
图4为本发明实施例提供的一种本地RAID卡的结构示意图;
图5为本发明实施例提供的一种数据处理系统的系统架构图。
具体实施方式
为了解决现有技术中用于存储本地数据的本地磁盘阵列的磁盘利用率较低的问题,本发明实施例提出了一种数据处理方案。该技术方案与现有技术相比,不再是将本地数据和校验信息同时存储在本地磁盘中,而是将校验信息存储在与本地磁盘位于同一局域网的网络磁盘上,使得本地磁盘全都用来存储本地数据,从而大大减少了本地存储空间的浪费,最大限度的提高了本地磁盘的利用率。
以下结合说明书附图对本发明的实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限制本发明。并且在不冲突的情况下,本发明中的实施例及实施例的特征可以互相结合。
本发明实施例中提供了一种数据处理方法,如图1所示,为该方法的实现流程图,该方法具体包括下述步骤:
步骤11,本地RAID卡向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算第一本地磁盘的校验信息的全部数据;
本发明实施例中,第一本地磁盘可以指本地RAID卡下挂的本地磁盘阵列中的任意一个磁盘。
其中,用于计算第一本地磁盘的校验信息的全部数据,指的是第一本地磁盘存储的全部数据,以及与第一本地磁盘位于同一带区的其它本地磁盘存储的全部数据。
本地磁盘阵列中位于同一带区的本地磁盘可以是用户根据自身需求预先设置的。
步骤12,本地RAID卡按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;
步骤13,将生成的第一校验信息发送给网络RAID卡,指示网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中;
其中,本地RAID卡和网络RAID卡位于同一局域网中的不同存储设备中,也就是说,本地RAID卡和网络RAID卡的网际协议IP地址不同,而本地RAID卡和网络RAID卡为了能够实现通信,需要预先存储对方的IP地址。
那么当本地RAID卡的IP地址发生变化时,本地RAID卡可以向网络RAID卡发送第一地址变化通知消息,该第一地址变化通知消息中携带本地RAID卡变化后的IP地址,以便网络RAID卡能够根据本地RAID卡变化后的IP地址对预先存储的本地RAID卡的IP地址进行更新,以实现与本地RAID卡的通信;
同理,当网络RAID卡的IP地址发生变化时,网络RAID卡同样会将变化后的IP地址通知给本地RAID卡,此时本地RAID卡接收网络RAID卡发送的第二地址变化通知消息,该第二地址变化通知消息中携带网络RAID卡变化后的IP地址,再根据网络RAID卡变化后的IP地址,对预先存储的网络RAID卡的IP地址进行更新,以便能够根据网络RAID卡变化后的IP地址与网络RAID卡实现通信。
可选的,在执行步骤13之前,该方法还可以包括:
根据预先设置的本地磁盘阵列中的本地磁盘和网络磁盘阵列中的网络磁盘之间的映射关系,确定第一本地磁盘对应的第一网络磁盘。
具体的,确定第一本地磁盘对应的第一网络磁盘可以为:确定第一本地磁盘和与第一本地磁盘位于同一带区的其它本地磁盘共同对应的第一网络磁盘。
在这种情况下,步骤13可以具体包括:
将生成的第一校验信息和第一网络磁盘的标识发送给网络RAID卡,指示网络RAID卡根据生成的第一校验信息对确定出的第一网络磁盘进行更新。
其中,无论是本地磁盘阵列中的本地磁盘,还是网络磁盘阵列中的网络磁盘,一般都是通过磁盘标识来加以区分的,因此本发明实施例中的映射关系也是通过磁盘标识来表现的,因此上述所谓的确定第一网络磁盘,就是确定这个第一网络磁盘的磁盘标识。
进一步的,当本地磁盘阵列中的第二本地磁盘存储的数据出现损坏时,可以利用上述映射关系,确定出第二本地磁盘对应的第二网络磁盘,并利用第二网络磁盘中存储的第二校验信息使损坏的数据得以恢复,以保障第二本地磁盘中数据的安全性。
需要说明的是,本发明实施例中的第一本地磁盘和第二本地磁盘可以为同一本地磁盘,也可以是不同的本地磁盘。具体的数据恢复过程在后续实施例中会详细介绍,在此不再赘述。
本发明实施例与现有技术相比,不再是将本地数据和校验信息同时存储在本地磁盘中,而是将校验信息存储在与本地磁盘位于同一局域网的网络磁盘上,使得本地磁盘全都用来存储本地数据,从而大大减少了本地存储空间的浪费,最大限度的提高了本地磁盘的利用率。
还需要说明的是,本发明实施例中,本地RAID卡下挂的本地磁盘阵列中的本地磁盘可以使用性能较高的磁盘,只存储本地数据,以保证数据传输速度;另外,由于本技术方案中对网络RAID卡下挂的网络磁盘阵列中的网络磁盘的磁盘空间的要求不是很严格,可以按照最小的磁盘空间来操作,因此本发明实施例中的网络磁盘可以采用低性能的磁盘,这样便可以降低由于采用局域网技术而造成的资金投入增大的影响。
下面以第一本地磁盘和第二本地磁盘为同一本地磁盘为例,对本发明实施例提供的数据恢复过程进行详细介绍。当第一本地磁盘和第二本地磁盘为同一本地磁盘时,第一网络磁盘和第二网络磁盘为同一网络磁盘,第一校验信息和第二校验信息也为同一校验信息。为了方便说明,下述实施例中将第一本地磁盘和第二本地磁盘统一称为第一本地磁盘,第一网络磁盘和第二网络磁盘统一称为第一网络磁盘,第一校验信息和第二校验信息统称为第一校验信息
如图2所示,为本发明实施例提供的一种数据恢复方法的具体实现流程图。该方法包括下述步骤:
步骤21,本地RAID卡向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取第一本地磁盘存储的全部数据,以及与第一本地磁盘位于同一带区的其它本地磁盘存储的全部数据;
步骤22,本地RAID卡按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;
步骤23,本地RAID卡根据预先设置的本地磁盘阵列中的本地磁盘和网络RAID卡下挂的网络磁盘阵列中的网络磁盘之间的映射关系,确定第一本地磁盘和与第一本地磁盘位于同一带区的其它本地磁盘共同对应的第一网络磁盘;
其中,本地RAID卡和网络RAID卡位于同一局域网中的不同存储设备中。
步骤24,本地RAID卡向网络RAID卡发送更新请求,该更新请求中携带第一校验信息和第一网络磁盘的磁盘标识,以便网络RAID卡能够根据第一校验信息对第一网络磁盘进行更新。
上述步骤21至步骤24与上述实施例的实现过程相同,在此不再赘述。
步骤25,当第一本地磁盘存储的数据损坏时,本地RAID卡根据上述映射关系,确定第一网络磁盘;
步骤26,本地RAID卡根据预先存储的网络RAID卡的IP地址,向网络RAID卡发送获取请求,该获取请求中携带第一网络磁盘的磁盘标识,以便网络RAID卡能够从第一网络磁盘中读取第一校验信息;
步骤27,本地RAID卡接收网络RAID卡发送的第一校验信息;
步骤28,本地RAID卡按照上述校验算法,对第一校验信息和预先读取的与第一本地磁盘位于同一带区的其它本地磁盘中存储的全部数据进行计算,并利用计算得到的数据对第一本地磁盘进行恢复。
为了实现上述的数据处理方法,本发明实施例结合磁盘阵列冗余技术和局域网技术,对现有的数据处理系统的架构进行了改进,如图3所示,为本发明实施例提供的用于实现数据处理方法的系统架构图。其中,本地RAID卡和其下挂的本地磁盘阵列所在的存储设备与网络RAID卡和其下挂的网络磁盘阵列所在存储设备位于通过万兆网相连的同一局域网中,并且本地RAID卡可以通过总线与下挂的本地磁盘阵列中的各本地磁盘连接,网络RAID卡可以通过总线与下挂的网络磁盘阵列中的各网络磁盘连接(图3中并未画出)。
参考图3,本地磁盘阵列中包含磁盘A1-A3,B1-B3,C1-C3和D1-D3,网络磁盘阵列中包含Ap、Bp、Cp和Dp,并且位于同一带区的A1-A3共同对应Ap,位于同一带区的B1-B3共同对应Bp,位于同一带区的C1-C3共同对应Cp,位于同一带区的D1-D3共同对应Dp。
下面对该数据处理方法中涉及到的两个概念进行阐述:
1、校验信息
当本地数据一旦发生损坏时,校验信息可以使损坏的本地数据得以恢复,以保障本地数据的安全性。如图3所示的系统架构,当本地数据出现损坏时,本地RAID卡通过网络侧的校验信息便可以得到本地数据,不会影响到系统的运行,保证了本地数据的安全。当损坏的磁盘被替换后,系统会自动利用校验信息去重建此磁盘上的数据,来保持高可靠性。网络侧的Ap存储A1、A2和A3的校验信息,Bp存储B1、B2和B3的校验信息,Cp存储C1、C2和C3的校验信息,以此类推。因为Ap中的校验信息是根据对应的A1、A2和A3中存储的本地数据计算得出的,因此Ap、A1、A2和A3中有任意一块出现问题时,都可以通过其余的三块进行恢复。
2、RAID卡
RAID卡是用来实现RAID功能的板卡,通常是由I/O处理器、磁盘控制器、磁盘连接器和缓存Cache等一系列零组件构成的。对于I/O处理器来说,如果没有Cache,就直接从磁盘读写;如果有Cache,则首先从Cache读写。为了提高磁盘的读写性能,此系统中的RAID卡使用了Cache。由于校验信息存在同一个磁盘上,当系统连续读/写数据的时候会造成I/O瓶颈,采用Cache会降低此情况的影响,降低硬盘读/写操作的平均访时间并提高了吞吐率。
由于本发明实施例中的校验信息存储在网络磁盘中,因此需要本地RAID卡和网络RAID卡分别记录两边磁盘的映射关系。又由于该映射关系的存储是跨网络的,因此本地RAID卡和网络RAID卡都应配备网络功能(不局限于网卡)。
当本地磁盘写入数据的时候,本地RAID卡会把计算得到的校验信息分发给网络RAID卡下挂的相应的网络磁盘中,实现了网络磁盘和本地磁盘之间的映射,而整个过程对于操作系统来说是透明的。当一方IP地址发生改变时,可以通过万兆网自动通知对方。
下面对在如图3所示的系统架构下的写数据过程和读数据过程分别进行阐述。
1、写数据过程
在向本地磁盘写入数据的时候,同时向对应的网络磁盘中写入计算出来的校验信息。比如本地RAID卡向A3中写入新的数据后,首先需要读出A3中存储的全部数据,以及与A3处于同一带区的A1和A2中存储的全部数据,然后根据预先设置的校验算法,计算得到校验信息,同时根据预先设置的映射关系确定与A1、A2和A3共同对应的Ap,再将计算得到的校验信息通过万兆网发送给网络RAID卡,由网络RAID卡将接收到的校验信息写入Ap中,完成一次写操作。
本发明实施例中的RAID卡(包括本地RAID卡和网络RAID卡)采用回写(Write Back)的写策略。也就是说通过暂时将数据存在Cache里,从而推迟将数据写到磁盘中的一种工作方式。数据将在随后的时间,磁盘闲置的时候写入。写的时候也是统一将Cache内的尚未写出的数据按照RAID卡中的规则写入对应的存储中,这样可以提高写的效率。发生机器意外断电、网络突然断网或者RIAD卡意外损坏的时候,如果此时RAID卡的Cache中还有未来得及写入磁盘的数据,此时的数据就有丢失的可能。为了防止这种情况的发生,需要给RAID卡配备一块后备电池,当异常的情况被解决后,此时RAID卡可以重新将Cache中的数据写入磁盘。
2、读数据过程
为了提高读数据的效率,RAID卡(包括本地RAID卡和网络RAID卡)可以直接从Cache中读出,而不是从磁盘上读取,减少磁盘的读操作次数,这样比较充分地利用了磁盘带宽。这样Cache和磁盘阵列技术的结合,弥补了磁盘阵列的不足(如分块写请求响应差等缺陷),从而使整个系统成为一个高效、快速、大容量、高可靠以及灵活、方便的存储系统。
由于磁盘数据经常是以一组连续的磁盘扇区组织起来的,所以有时侯如把系统所请求的扇区随后的一个扇区里的数据同时读进来是有价值的。因此本发明实施例中的RAID卡可以采用预读(Read Ahead)方式。
本地RAID卡读数据的时候,如果本地磁盘没有损坏,则不会有什么变化,如果读取的本地磁盘损坏,则必须同时读取同一带区中的所有其它本地磁盘中存储的全部数据,并根据本地RAID卡中记录的映射关系找到网络上对应的网络磁盘中存储的校验信息,以重新建立此块本地磁盘,恢复丢失的数据,实现远程校验功能。比如说B1中的本地数据发生了损坏,此时需要读取出同一带区的B2和B3,并根据记录的映射关系确定出Bp,并获取Bp中存储的校验信息,然后根据这三块磁盘上的信息计算出丢失的数据,并重新写入B1。
本发明实施例与现有技术相比,不再是将本地数据和校验信息同时存储在本地磁盘中,而是将校验信息存储在与本地磁盘位于同一局域网的网络磁盘上,使得本地磁盘全都用来存储本地数据,因此本地存储空间的利用率可以接近100%,这是现有技术中所不能达到的,从而大大减少了本地存储空间的浪费,最大限度的提高了本地磁盘的利用率。
基于上述提供的数据处理方法,本发明实施例还提供了一种本地RAID卡,如图4所示,为该本地RAID卡的结构示意图,其中所述本地RAID卡和网络RAID卡位于同一局域网中的不同存储设备中,该本地RAID卡包括:
读取单元41,用于向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的的全部数据;
第一校验信息生成单元42,用于按照预先设置的校验算法对读取单元41读取的全部数据进行校验计算,生成第一校验信息;
第一校验信息发送单元43,用于将第一校验信息生成单元42生成的第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中。
可选的,所述本地RAID卡哈可以包括:
第一网络磁盘确定单元44,用于根据预先设置的所述本地磁盘阵列中的本地磁盘和所述网络磁盘阵列中的网络磁盘之间的映射关系,确定所述第一本地磁盘对应的第一网络磁盘;则
所述第一校验信息发送单元43,具体用于:
将第一校验信息生成单元42生成的第一校验信息和第一网络磁盘确定单元44确定的第一网络磁盘的标识发送给所述网络RAID卡,指示所述网络RAID卡根据所述第一校验信息对所述第一网络磁盘进行更新。
可选的,所述本地RAID卡还可以包括:
第二网络磁盘确定单元45,用于当所述本地磁盘阵列中的第二本地磁盘存储的数据损坏时,根据所述映射关系,确定所述第二本地磁盘对应的第二网络磁盘;
获取请求发送单元46,用于向所述网络RAID卡发送获取请求,所述获取请求中携带第二网络磁盘确定单元45确定出的第二网络磁盘的磁盘标识,以便所述网络RAID卡能够从所述第二网络磁盘中获取第二校验信息并发送给所述本地RAID卡;
第二校验信息接收单元47,用于接收所述网络RAID卡发送的所述第二校验信息;
恢复单元48,用于按照所述校验算法,对第二校验信息接收单元47接收到的第二校验信息和预先读取的与所述第二本地磁盘位于同一带区的其它本地磁盘中存储的全部数据进行计算,并利用计算得到的数据对所述第二本地磁盘进行恢复。
可选的,所述本地RAID卡还可以包括:
第一地址变化通知消息发送单元49,用于当所述本地RAID卡的IP地址发生变化时,向所述网络RAID卡发送第一地址变化通知消息,所述第一地址变化通知消息中携带所述本地RAID卡变化后的IP地址,以便所述网络RAID卡能够根据所述本地RAID卡变化后的IP地址与所述本地RAID卡进行通信。
可选的,所述本地RAID卡还可以包括:
IP地址存储单元410,用于预先存储所述网络RAID卡的IP地址;则
所述本地RAID卡还可以包括:
第二地址变化通知消息接收单元411,用于接收所述网络RAID卡发送的第二地址变化通知消息,所述第二地址变化通知消息中携带所述网络RAID卡变化后的IP地址;
IP地址更新单元412,用于根据第二地址变化通知消息接收单元接收到的所述网络RAID卡变化后的IP地址,对IP地址存储单元410中预先存储的所述网络RAID卡的IP地址进行更新,以便能够根据所述网络RAID卡变化后的IP地址与所述网络RAID卡进行通信。
基于上述提供的数据处理方法,本发明实施例还提供了一种数据处理系统,如图5所示,为该数据处理系统的结构示意图,其包括:
位于同一局域网中的不同存储设备中的本地RAID卡51和网络RAID卡52,所述本地RAID卡51下挂本地磁盘阵列,所述网络RAID卡52下挂网络磁盘阵列,其中:
所述本地RAID卡51,用于用于向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;将所述第一校验信息发送给所述网络RAID卡52,指示所述网络RAID卡52将所述第一校验信息存储在其下挂的网络磁盘阵列中;
所述网络RAID卡52,用于接收所述第一校验信息;并将所述第一校验信息存储在其下挂的网络磁盘阵列中。
可选的,所述本地RAID卡51还用于:
当所述本地磁盘阵列中的第二本地磁盘存储的数据损坏时,根据所述映射关系,确定所述第二本地磁盘对应的第二网络磁盘;向所述网络RAID卡52发送获取请求,所述获取请求中携带所述第二网络磁盘的磁盘标识;并接收所述网络RAID卡52发送的第二校验信息;按照所述校验算法对所述第二校验信息和预先读取的用于计算所述第二本地磁盘对应的校验信息的全部数据进行计算,并利用计算得到的数据对所述第二本地磁盘进行恢复;
所述网络RAID卡52还用于:
接收所述获取请求;根据所述获取请求中携带的所述第二网络磁盘的磁盘标识,从所述第二网络磁盘中读取第二校验信息;并将所述第二校验信息发送给所述本地RAID卡51。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种数据处理方法,其特征在于,包括:
本地独立磁盘冗余阵列RAID卡向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;
按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;
将所述第一校验信息发送给网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中;其中,所述本地RAID卡和所述网络RAID卡位于同一局域网中的不同存储设备中。
2.如权利要求1所述的方法,其特征在于,将所述第一校验信息发送给网络RAID卡之前,所述方法还包括:
根据预先设置的所述本地磁盘阵列中的本地磁盘和所述网络磁盘阵列中的网络磁盘之间的映射关系,确定所述第一本地磁盘对应的第一网络磁盘;则
将所述第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中,具体包括:
将所述第一校验信息和所述第一网络磁盘的标识发送给所述网络RAID卡,指示所述网络RAID卡根据所述第一校验信息对所述第一网络磁盘进行更新。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
当所述本地磁盘阵列中的第二本地磁盘存储的数据损坏时,根据所述映射关系,确定所述第二本地磁盘对应的第二网络磁盘;
向所述网络RAID卡发送获取请求,所述获取请求中携带所述第二网络磁盘的磁盘标识,以便所述网络RAID卡能够从所述第二网络磁盘中获取第二校验信息并发送给所述本地RAID卡;
接收所述网络RAID卡发送的所述第二校验信息;
按照所述校验算法,对所述第二校验信息和预先读取的用于计算所述第二本地磁盘对应的校验信息的全部数据进行计算,并利用计算得到的数据对所述第二本地磁盘进行恢复。
4.如权利要求1~3任一所述的方法,其特征在于,所述方法还包括:
当所述本地RAID卡的IP地址发生变化时,所述本地RAID卡向所述网络RAID卡发送第一地址变化通知消息,所述第一地址变化通知消息中携带所述本地RAID卡变化后的IP地址,以便所述网络RAID卡能够根据所述本地RAID卡变化后的IP地址与所述本地RAID卡进行通信。
5.如权利要求1~3任一所述的方法,其特征在于,所述本地RAID卡中预先存储所述网络RAID卡的IP地址;则
所述方法还包括:
所述本地RAID卡接收所述网络RAID卡发送的第二地址变化通知消息,所述第二地址变化通知消息中携带所述网络RAID卡变化后的IP地址;
根据所述网络RAID卡变化后的IP地址,对预先存储的所述网络RAID卡的IP地址进行更新,以便能够根据所述网络RAID卡变化后的IP地址与所述网络RAID卡进行通信。
6.一种本地独立磁盘冗余阵列RAID卡,其特征在于,所述本地RAID卡和网络RAID卡位于同一局域网中的不同存储设备中,其中,所述本地RAID卡包括:
读取单元,用于向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;
第一校验信息生成单元,用于按照预先设置的校验算法对读取单元读取的全部数据进行校验计算,生成第一校验信息;
第一校验信息发送单元,用于将第一校验信息生成单元生成的第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中。
7.如权利要求6所述的本地RAID卡,其特征在于,所述本地RAID卡还包括:
第一网络磁盘确定单元,用于根据预先设置的所述本地磁盘阵列中的本地磁盘和所述网络磁盘阵列中的网络磁盘之间的映射关系,确定所述第一本地磁盘对应的第一网络磁盘;则
所述第一校验信息发送单元,具体用于:
将第一校验信息生成单元生成的第一校验信息和第一网络磁盘确定单元确定的第一网络磁盘的标识发送给所述网络RAID卡,指示所述网络RAID卡根据所述第一校验信息对所述第一网络磁盘进行更新。
8.如权利要求6所述的本地RAID卡,其特征在于,所述本地RAID卡还包括:
第二网络磁盘确定单元,用于当所述本地磁盘阵列中的第二本地磁盘存储的数据损坏时,根据所述映射关系,确定所述第二本地磁盘对应的第二网络磁盘;
获取请求发送单元,用于向所述网络RAID卡发送获取请求,所述获取请求中携带第二网络磁盘确定单元确定出的第二网络磁盘的磁盘标识,以便所述网络RAID卡能够从所述第二网络磁盘中获取第二校验信息并发送给所述本地RAID卡;
第二校验信息接收单元,用于接收所述网络RAID卡发送的所述第二校验信息;
恢复单元,用于按照所述校验算法,对第二校验信息接收单元接收到的第二校验信息和预先读取的与所述第二本地磁盘位于同一带区的其它本地磁盘中存储的全部数据进行计算,并利用计算得到的数据对所述第二本地磁盘进行恢复。
9.如权利要求6~8任一所述的本地RAID卡,其特征在于,所述本地RAID卡还包括:
第一地址变化通知消息发送单元,用于当所述本地RAID卡的IP地址发生变化时,向所述网络RAID卡发送第一地址变化通知消息,所述第一地址变化通知消息中携带所述本地RAID卡变化后的IP地址,以便所述网络RAID卡能够根据所述本地RAID卡变化后的IP地址与所述本地RAID卡进行通信。
10.如权利要求6~8任一所述的本地RAID卡,其特征在于,所述本地RAID卡还包括:
IP地址存储单元,用于预先存储所述网络RAID卡的IP地址;则
所述本地RAID卡还包括:
第二地址变化通知消息接收单元,用于接收所述网络RAID卡发送的第二地址变化通知消息,所述第二地址变化通知消息中携带所述网络RAID卡变化后的IP地址;
IP地址更新单元,用于根据第二地址变化通知消息接收单元接收到的所述网络RAID卡变化后的IP地址,对IP地址存储单元中预先存储的所述网络RAID卡的IP地址进行更新,以便能够根据所述网络RAID卡变化后的IP地址与所述网络RAID卡进行通信。
11.一种数据处理系统,其特征在于,包括:位于同一局域网中的不同存储设备中的本地独立磁盘冗余阵列RAID卡和网络RAID卡,所述本地RAID卡下挂本地磁盘阵列,所述网络RAID卡下挂网络磁盘阵列,其中:
所述本地RAID卡,用于向下挂的本地磁盘阵列中的第一本地磁盘写入数据后,读取用于计算所述第一本地磁盘的校验信息的全部数据;按照预先设置的校验算法对读取的全部数据进行校验计算,生成第一校验信息;将所述第一校验信息发送给所述网络RAID卡,指示所述网络RAID卡将所述第一校验信息存储在其下挂的网络磁盘阵列中;
所述网络RAID卡,用于接收所述第一校验信息;并将所述第一校验信息存储在其下挂的网络磁盘阵列中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410154051.XA CN105022586B (zh) | 2014-04-17 | 2014-04-17 | 一种数据处理方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410154051.XA CN105022586B (zh) | 2014-04-17 | 2014-04-17 | 一种数据处理方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105022586A true CN105022586A (zh) | 2015-11-04 |
CN105022586B CN105022586B (zh) | 2018-06-05 |
Family
ID=54412582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410154051.XA Active CN105022586B (zh) | 2014-04-17 | 2014-04-17 | 一种数据处理方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105022586B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958990A (zh) * | 2018-07-24 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种提高现场可更换单元信息可靠性的方法和装置 |
CN115562594A (zh) * | 2022-12-06 | 2023-01-03 | 苏州浪潮智能科技有限公司 | 一种raid卡的构建方法、系统及相关装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093434A (zh) * | 2006-06-20 | 2007-12-26 | 韩国科学技术院 | 用矩阵条带高速缓存器改进raid系统输入和输出性能的方法 |
CN101251812A (zh) * | 2008-02-28 | 2008-08-27 | 浪潮电子信息产业股份有限公司 | 一种应用于集群系统数据容错的方法 |
CN101276302A (zh) * | 2007-03-29 | 2008-10-01 | 中国科学院计算技术研究所 | 一种磁盘阵列系统中磁盘故障处理和数据重构方法 |
US20090106492A1 (en) * | 2007-10-19 | 2009-04-23 | Hitachi, Ltd. | Storage apparatus and data storage method using the same |
CN101763220A (zh) * | 2008-12-25 | 2010-06-30 | 成都市华为赛门铁克科技有限公司 | 一种数据更新的方法、控制器及存储系统 |
CN102789370A (zh) * | 2012-06-29 | 2012-11-21 | 浙江宇视科技有限公司 | 一种raid阵列同步方法及装置 |
CN102981927A (zh) * | 2011-09-06 | 2013-03-20 | 阿里巴巴集团控股有限公司 | 分布式独立冗余磁盘阵列存储方法及分布式集群存储系统 |
-
2014
- 2014-04-17 CN CN201410154051.XA patent/CN105022586B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093434A (zh) * | 2006-06-20 | 2007-12-26 | 韩国科学技术院 | 用矩阵条带高速缓存器改进raid系统输入和输出性能的方法 |
CN101276302A (zh) * | 2007-03-29 | 2008-10-01 | 中国科学院计算技术研究所 | 一种磁盘阵列系统中磁盘故障处理和数据重构方法 |
US20090106492A1 (en) * | 2007-10-19 | 2009-04-23 | Hitachi, Ltd. | Storage apparatus and data storage method using the same |
CN101251812A (zh) * | 2008-02-28 | 2008-08-27 | 浪潮电子信息产业股份有限公司 | 一种应用于集群系统数据容错的方法 |
CN101763220A (zh) * | 2008-12-25 | 2010-06-30 | 成都市华为赛门铁克科技有限公司 | 一种数据更新的方法、控制器及存储系统 |
CN102981927A (zh) * | 2011-09-06 | 2013-03-20 | 阿里巴巴集团控股有限公司 | 分布式独立冗余磁盘阵列存储方法及分布式集群存储系统 |
CN102789370A (zh) * | 2012-06-29 | 2012-11-21 | 浙江宇视科技有限公司 | 一种raid阵列同步方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958990A (zh) * | 2018-07-24 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种提高现场可更换单元信息可靠性的方法和装置 |
CN108958990B (zh) * | 2018-07-24 | 2021-10-15 | 郑州云海信息技术有限公司 | 一种提高现场可更换单元信息可靠性的方法和装置 |
CN115562594A (zh) * | 2022-12-06 | 2023-01-03 | 苏州浪潮智能科技有限公司 | 一种raid卡的构建方法、系统及相关装置 |
CN115562594B (zh) * | 2022-12-06 | 2023-03-24 | 苏州浪潮智能科技有限公司 | 一种raid卡的构建方法、系统及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105022586B (zh) | 2018-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4767139B2 (ja) | ストレージ管理プログラム、ストレージ管理装置、およびストレージ管理方法 | |
CN103136074B (zh) | 多个磁盘阵列系统的数据储存方法及数据储存系统 | |
CN103534688B (zh) | 数据恢复方法、存储设备和存储系统 | |
WO2018098972A1 (zh) | 一种日志恢复方法、存储装置和存储节点 | |
CN103246478B (zh) | 一种基于软raid支持无分组式全局热备盘的磁盘阵列系统 | |
CN103970481A (zh) | 重建存储器阵列的方法和装置 | |
KR20120140652A (ko) | 플래시카피 캐스케이드내의 버퍼 디스크 | |
CN102799533B (zh) | 一种磁盘损坏扇区屏蔽方法及装置 | |
WO2012073287A1 (en) | Storage control apparatus and storage control method | |
CN108153622A (zh) | 一种故障处理的方法、装置和设备 | |
US20090198942A1 (en) | Storage system provided with a plurality of controller modules | |
CN106155943B (zh) | 一种双控存储设备的掉电保护的方法及装置 | |
US10503620B1 (en) | Parity log with delta bitmap | |
WO2015058542A1 (zh) | 独立冗余磁盘阵列的重构方法及装置 | |
JPH09269871A (ja) | ディスクアレイ装置におけるデータ再冗長化方式 | |
JP5352027B2 (ja) | 計算機システムの管理方法及び管理装置 | |
US10915405B2 (en) | Methods for handling storage element failures to reduce storage device failure rates and devices thereof | |
CN105022586A (zh) | 一种数据处理方法、装置和系统 | |
WO2021088367A1 (zh) | 数据恢复方法及相关设备 | |
CN106933707B (zh) | 基于raid技术的数据存储设备数据恢复方法及系统 | |
CN113051428B (zh) | 一种摄像机前端存储备份的方法及装置 | |
CN102629223A (zh) | 一种数据修复方法及装置 | |
CN104205097A (zh) | 一种去重方法装置与系统 | |
US10664346B2 (en) | Parity log with by-pass | |
US9104598B2 (en) | Systems and methods for medium error reporting and handling in storage devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |