[go: up one dir, main page]

CN106844088A - The data transmission method for uplink and device of a kind of RAID storage system - Google Patents

The data transmission method for uplink and device of a kind of RAID storage system Download PDF

Info

Publication number
CN106844088A
CN106844088A CN201710090027.8A CN201710090027A CN106844088A CN 106844088 A CN106844088 A CN 106844088A CN 201710090027 A CN201710090027 A CN 201710090027A CN 106844088 A CN106844088 A CN 106844088A
Authority
CN
China
Prior art keywords
data
unit
parity
stripe
stripe unit
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
Application number
CN201710090027.8A
Other languages
Chinese (zh)
Other versions
CN106844088B (en
Inventor
侯博
张小博
徐晓阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710090027.8A priority Critical patent/CN106844088B/en
Publication of CN106844088A publication Critical patent/CN106844088A/en
Application granted granted Critical
Publication of CN106844088B publication Critical patent/CN106844088B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种RAID存储系统的数据发送方法及装置,该方法包括:接收主机发送的读取指令,并按照读取指令查找到目标条带单元;利用奇偶校验算法判断目标条带单元中的数据是否正确;如果是,则将目标条带单元中的数据发送至主机;如果否,则利用奇偶校验算法将目标条带单元中的数据进行恢复,并进入将目标条带单元中的数据发送至主机的步骤。由此可见,RAID存储系统接收到主机的读取指令时,会将相应的目标条带单元的数据进行检验,在确保数据正确的前提下,才将数据发送给主机,这样不仅避免了错误数据的发送,而且更重要的是,能够保证数据发送的有效性和提高发送的效率。

The invention discloses a data sending method and device of a RAID storage system. The method includes: receiving a read command sent by a host, and finding a target stripe unit according to the read command; judging the target stripe unit by using a parity check algorithm Whether the data in the target stripe unit is correct; if yes, send the data in the target stripe unit to the host; if not, use the parity check algorithm to restore the data in the target stripe unit, and enter the target stripe unit The step of sending the data to the host. It can be seen that when the RAID storage system receives the read command from the host, it will check the data of the corresponding target stripe unit, and only send the data to the host on the premise of ensuring that the data is correct, which not only avoids wrong data The transmission of data, and more importantly, it can ensure the validity of data transmission and improve the efficiency of transmission.

Description

一种RAID存储系统的数据发送方法及装置Data sending method and device of a RAID storage system

技术领域technical field

本发明涉及存储系统领域,特别是涉及一种RAID存储系统的数据发送方法及装置。The invention relates to the field of storage systems, in particular to a data sending method and device of a RAID storage system.

背景技术Background technique

在RAID存储系统中包含控制器和多个磁盘阵列,控制器用于执行主机发送的各种指令,磁盘阵列用于存储数据。当接收到主机发送的读取指令时,控制器就会根据读取指令,将相应的磁盘阵列中的数据返回至主机。A RAID storage system includes a controller and multiple disk arrays, the controller is used to execute various instructions sent by the host, and the disk array is used to store data. When receiving the read command sent by the host, the controller will return the data in the corresponding disk array to the host according to the read command.

但是,由于软硬件的不正当操作,当数据在存储时,有可能就会出错,导致,当主机发送了读取指令后,控制器将错误的数据返回至主机。当主机接收到控制器返回的数据后,会进行相应的奇偶校验,从而确定控制器返回的数据是否正确,如果不正确,则继续向控制器发送读取指令,而控制器并不知道当前存储的数据是错误的,因此,会重复向主机返回相同的数据,最终导致主机读取数据的效率较低,有效性较差。However, due to improper operation of software and hardware, errors may occur when data is being stored, resulting in that when the host sends a read command, the controller returns wrong data to the host. When the host receives the data returned by the controller, it will perform a corresponding parity check to determine whether the data returned by the controller is correct. If not, it will continue to send a read command to the controller, but the controller does not know the current The stored data is wrong, therefore, the same data will be returned to the host repeatedly, which eventually leads to low efficiency and poor validity for the host to read data.

由此可见,在主机发出读取指令时,控制器如何能够快速有效地向主机提供正确的数据,从而保证读取的效率和有效性是本领域技术人员亟待解决的问题。It can be seen that, when the host sends out a read command, how the controller can quickly and effectively provide correct data to the host, so as to ensure the efficiency and effectiveness of reading is an urgent problem to be solved by those skilled in the art.

发明内容Contents of the invention

本发明的目的是提供一种RAID存储系统的数据发送方法及装置,用于在主机发出读取指令时,控制器如何能够快速有效地向主机提供正确的数据,从而保证读取的效率和有效性。The purpose of the present invention is to provide a data sending method and device of a RAID storage system, for how the controller can quickly and effectively provide correct data to the host when the host issues a read command, thereby ensuring the efficiency and effectiveness of the read sex.

为解决上述技术问题,本发明提供一种RAID存储系统的数据发送方法,包括:In order to solve the above-mentioned technical problems, the present invention provides a data transmission method of a RAID storage system, comprising:

接收主机发送的读取指令,并按照所述读取指令查找到目标条带单元;receiving the read instruction sent by the host, and finding the target stripe unit according to the read instruction;

利用奇偶校验算法判断所述目标条带单元中的数据是否正确;Using a parity check algorithm to determine whether the data in the target stripe unit is correct;

如果是,则将所述目标条带单元中的数据发送至所述主机;If yes, sending the data in the target stripe unit to the host;

如果否,则利用所述奇偶校验算法将所述目标条带单元中的数据进行恢复,并进入所述将所述目标条带单元中的数据发送至所述主机的步骤。If not, recover the data in the target stripe unit by using the parity check algorithm, and enter the step of sending the data in the target stripe unit to the host.

优选地,所述利用奇偶校验算法判断所述目标条带单元中的数据是否正确具体包括:Preferably, the judging whether the data in the target stripe unit is correct by using a parity check algorithm specifically includes:

读取所述目标条带单元的已存数据以及所述目标条带单元对应的已存第一奇偶校验数据;Reading the stored data of the target stripe unit and the stored first parity data corresponding to the target stripe unit;

按照所述奇偶校验算法将所述目标条带单元的已存数据生成新第一奇偶校验数据;generating new first parity data from the stored data of the target stripe unit according to the parity algorithm;

判断已存第一奇偶校验数据与所述新第一奇偶校验数据是否相同;judging whether the stored first parity data is the same as the new first parity data;

其中,如果是,则进入所述将所述目标条带单元中的数据发送至所述主机的步骤,否则,进入所述利用所述奇偶校验算法将所述目标条带单元中的数据进行恢复的步骤。Wherein, if yes, enter the step of sending the data in the target stripe unit to the host; recovery steps.

优选地,所述利用所述奇偶校验算法将所述目标条带单元中的数据进行恢复具体包括:Preferably, the recovering the data in the target stripe unit by using the parity algorithm specifically includes:

获取所述目标条带单元所在条带的第二奇偶校验数据以及所述目标条带单元所在条带的其余各条带单元的已存数据,并按照所述奇偶校验算法生成所述目标条带单元对应的新数据;Obtain the second parity data of the stripe where the target stripe unit is located and the stored data of the remaining stripe units in the stripe where the target stripe unit is located, and generate the target parity data according to the parity algorithm The new data corresponding to the stripe unit;

按照所述奇偶校验算法将所述目标条带单元对应的新数据生成对比第一奇偶校验数据;generating new data corresponding to the target stripe unit and comparing it with the first parity data according to the parity algorithm;

判断所述对比第一奇偶校验数据与所述已存第一奇偶校验数据是否相同;judging whether the compared first parity data is the same as the stored first parity data;

如果是,则将所述目标条带单元对应的新数据覆盖所述目标条带单元的已存数据,并进入所述将所述目标条带单元中的数据发送至所述主机的步骤;If so, overwrite the stored data of the target stripe unit with the new data corresponding to the target stripe unit, and enter the step of sending the data in the target stripe unit to the host;

如果否,则判断所述目标条带单元对应的新数据与所述目标条带单元的已存数据是否相同;If not, then judging whether the new data corresponding to the target stripe unit is the same as the stored data of the target stripe unit;

如果否,则输出提示错误的信息;If not, output an error message;

如果是,则按照所述奇偶校验算法修改所述目标条带单元所在条带的各条带单元所对应的第一奇偶校验数据,并进入所述将所述目标条带单元中的数据发送至所述主机的步骤。If so, modify the first parity data corresponding to each stripe unit of the stripe where the target stripe unit is located according to the parity algorithm, and enter the data in the target stripe unit Steps to send to said host.

优选地,所述利用奇偶校验算法判断所述目标条带单元中的数据是否正确具体包括:Preferably, the judging whether the data in the target stripe unit is correct by using a parity check algorithm specifically includes:

按照所述奇偶校验算法计算所述目标条带单元所在条带的第二奇偶校验数据;calculating second parity data of the stripe where the target stripe unit is located according to the parity algorithm;

判断计算得到的第二奇偶校验数据与已存第二奇偶校验数据是否相同;judging whether the calculated second parity data is the same as the stored second parity data;

其中,如果是,则进入所述将所述目标条带单元中的数据发送至所述主机的步骤,否则,进入所述利用所述奇偶校验算法将所述目标条带单元中的数据进行恢复的步骤。Wherein, if yes, enter the step of sending the data in the target stripe unit to the host; recovery steps.

优选地,所述利用所述奇偶校验算法将所述目标条带单元中的数据进行恢复具体包括:Preferably, the recovering the data in the target stripe unit by using the parity algorithm specifically includes:

设置所述目标条带单元所在条带的第一条带单元为起始单元;Setting the first stripe unit of the stripe where the target stripe unit is located as the starting unit;

按照所述奇偶校验算法将当前条带的已存第二奇偶校验数据和所述目标条带单元所在条带的其余各条带单元的已存第一奇偶校验数据生成当前条带单元对应的新数据;According to the parity algorithm, generate the current stripe unit from the stored second parity data of the current stripe and the stored first parity data of the remaining stripe units in the stripe where the target stripe unit is located Corresponding new data;

将所述当前条带单元对应的新数据与所述目标条带单元所在条带的其余各条带单元的已存数据生成当前条带对应的新校验和;generating a new checksum corresponding to the current stripe from the new data corresponding to the current stripe unit and the stored data of the remaining stripe units in the stripe where the target stripe unit is located;

判断所述当前条带对应的新校验和与已存校验和是否相同;Judging whether the new checksum corresponding to the current stripe is the same as the existing checksum;

如果是,则将所述当前条带单元对应的新数据覆盖当前条带单元的已存数据,并进入所述将所述目标条带单元中的数据发送至所述主机的步骤;If so, overwrite the stored data of the current stripe unit with the new data corresponding to the current stripe unit, and enter the step of sending the data in the target stripe unit to the host;

如果否,则判断当前条带单元是否为最后一个存储数据的条带单元;If not, determine whether the current stripe unit is the last stripe unit storing data;

如果是,则输出提示错误的信息;如果否,则将当前条带单元的下一个条带单元作为当前条带单元,并返回。If yes, output a message indicating an error; if not, use the next stripe unit of the current stripe unit as the current stripe unit and return.

为解决上述技术问题,本发明还提供一种RAID存储系统的数据发送装置,包括:In order to solve the above-mentioned technical problems, the present invention also provides a data sending device of a RAID storage system, comprising:

查找单元,用于接收主机发送的读取指令,并按照所述读取指令查找到目标条带单元;A search unit, configured to receive a read instruction sent by the host, and find a target stripe unit according to the read instruction;

判断单元,用于利用奇偶校验算法判断所述目标条带单元中的数据是否正确;A judging unit, configured to use a parity check algorithm to judge whether the data in the target stripe unit is correct;

恢复单元,用于在所述判断单元的判断结果为否时,利用所述奇偶校验算法将所述目标条带单元中的数据进行恢复;A recovery unit, configured to use the parity check algorithm to recover the data in the target stripe unit when the determination result of the determination unit is No;

发送单元,用于在所述判断单元的判断结果为是,或所述恢复单元将数据进行恢复后,将所述目标条带单元中的数据发送至所述主机。The sending unit is configured to send the data in the target stripe unit to the host when the judging result of the judging unit is yes, or after the restoring unit restores the data.

优选地,所述判断单元具体包括:Preferably, the judging unit specifically includes:

读取模块,用于读取所述目标条带单元的已存数据以及所述目标条带单元对应的已存第一奇偶校验数据;A reading module, configured to read the stored data of the target stripe unit and the stored first parity data corresponding to the target stripe unit;

第一生成模块,用于按照所述奇偶校验算法将所述目标条带单元的已存数据生成新第一奇偶校验数据;A first generating module, configured to generate new first parity data from the stored data of the target stripe unit according to the parity algorithm;

第一判断模块,用于判断已存第一奇偶校验数据与所述新第一奇偶校验数据是否相同,如果是,则触发所述发送单元,否则,触发所述恢复单元。The first judging module is used to judge whether the stored first parity data is the same as the new first parity data, if yes, trigger the sending unit, otherwise, trigger the recovery unit.

优选地,所述恢复单元具体包括:Preferably, the recovery unit specifically includes:

第二生成模块,用于获取所述目标条带单元所在条带的第二奇偶校验数据以及所述目标条带单元所在条带的其余各条带单元的已存数据,并按照所述奇偶校验算法生成所述目标条带单元对应的新数据;The second generation module is configured to obtain the second parity data of the stripe where the target stripe unit is located and the stored data of the remaining stripe units of the stripe where the target stripe unit is located, and obtain the parity data according to the parity A verification algorithm generates new data corresponding to the target stripe unit;

第三生成模块,用于按照所述奇偶校验算法将所述目标条带单元对应的新数据生成对比第一奇偶校验数据;A third generating module, configured to generate new data corresponding to the target stripe unit and compare it with the first parity data according to the parity algorithm;

第二判断模块,用于判断所述对比第一奇偶校验数据与所述已存第一奇偶校验数据是否相同;A second judging module, configured to judge whether the compared first parity data is the same as the stored first parity data;

第一覆盖模块,用于在所述第二判断模块的判断结果为是时,将所述目标条带单元对应的新数据覆盖所述目标条带单元的已存数据,并触发所述发送单元;The first covering module is configured to overwrite the stored data of the target stripe unit with the new data corresponding to the target stripe unit when the judgment result of the second judging module is yes, and trigger the sending unit ;

第三判断模块,用于在所述第二判断模块的判断结果为否时,判断所述目标条带单元对应的新数据与所述目标条带单元的已存数据是否相同;A third judging module, configured to judge whether the new data corresponding to the target stripe unit is the same as the stored data of the target stripe unit when the judging result of the second judging module is No;

第一输出模块,用于在所述第三判断模块的判断结果为否时,输出提示错误的信息;The first output module is configured to output information prompting an error when the judgment result of the third judging module is No;

修改模块,用不在所述第三判断模块的判断结果为是时,按照所述奇偶校验算法修改所述目标条带单元所在条带的各条带单元所对应的第一奇偶校验数据,并触发所述发送单元。The modification module modifies the first parity data corresponding to each stripe unit of the stripe where the target stripe unit is located according to the parity algorithm when the judgment result of the third judgment module is yes, And trigger the sending unit.

优选地,所述判断单元具体包括:Preferably, the judging unit specifically includes:

计算模块,用于按照所述奇偶校验算法计算所述目标条带单元所在条带的第二奇偶校验数据;a calculation module, configured to calculate the second parity data of the stripe where the target stripe unit is located according to the parity algorithm;

第四判断模块,用于判断计算得到的第二奇偶校验数据与已存第二奇偶校验数据是否相同,如果是,则触发所述发送单元,否则,触发所述恢复单元。The fourth judging module is used to judge whether the calculated second parity data is the same as the stored second parity data, if yes, trigger the sending unit, otherwise, trigger the recovery unit.

优选地,所述恢复单元具体包括:Preferably, the recovery unit specifically includes:

设置模块,用于设置所述目标条带单元所在条带的第一条带单元为起始单元;A setting module, configured to set the first strip unit of the strip where the target strip unit is located as the starting unit;

第四生成模块,用于按照所述奇偶校验算法将当前条带的已存第二奇偶校验数据和所述目标条带单元所在条带的其余各条带单元的已存第一奇偶校验数据生成当前条带单元对应的新数据;The fourth generating module is configured to convert the stored second parity data of the current stripe and the stored first parity data of the remaining stripe units of the stripe where the target stripe unit is located according to the parity algorithm. Generate new data corresponding to the current stripe unit from the experimental data;

第五生成模块,用于将所述当前条带单元对应的新数据与所述目标条带单元所在条带的其余各条带单元的已存数据生成当前条带对应的新校验和;A fifth generating module, configured to generate a new checksum corresponding to the current stripe from the new data corresponding to the current stripe unit and the stored data of the remaining stripe units in the stripe where the target stripe unit is located;

第五判断模块,用于判断所述当前条带对应的新校验和与已存校验和是否相同;A fifth judging module, configured to judge whether the new checksum corresponding to the current stripe is the same as the existing checksum;

第二覆盖模块,用于所述第五判断模块的判断结果为是时,将所述当前条带单元对应的新数据覆盖当前条带单元的已存数据,并触发所述发送单元;The second covering module is used to overwrite the stored data of the current stripe unit with the new data corresponding to the current stripe unit when the judgment result of the fifth judgment module is yes, and trigger the sending unit;

第六判断模块,用于所述第五判断模块的判断结果为否时,判断当前条带单元是否为最后一个存储数据的条带单元;The sixth judging module is used to judge whether the current stripe unit is the last stripe unit storing data when the judgment result of the fifth judging module is No;

第二输出模块,用于在所述第六判断模块的判断结果为是时,输出提示错误的信息;The second output module is configured to output information prompting an error when the judgment result of the sixth judgment module is yes;

递增模块,用于在所述第六判断模块的判断结果为否时,将当前条带单元的下一个条带单元作为当前条带单元,并触发所述第四生成模块。The increment module is configured to use the next stripe unit of the current stripe unit as the current stripe unit when the judgment result of the sixth judgment module is negative, and trigger the fourth generation module.

本发明所提供的RAID存储系统的数据发送方法及装置,该方法包括:接收主机发送的读取指令,并按照读取指令查找到目标条带单元;利用奇偶校验算法判断目标条带单元中的数据是否正确;如果是,则将目标条带单元中的数据发送至主机;如果否,则利用奇偶校验算法将目标条带单元中的数据进行恢复,并进入将目标条带单元中的数据发送至主机的步骤。由此可见,RAID存储系统接收到主机的读取指令时,会将相应的目标条带单元的数据进行检验,在确保数据正确的前提下,才将数据发送给主机,这样不仅避免了错误数据的发送,而且更重要的是,能够保证数据发送的有效性和提高发送的效率。The data sending method and device of the RAID storage system provided by the present invention, the method includes: receiving the read command sent by the host, and finding the target stripe unit according to the read command; Whether the data in the target stripe unit is correct; if yes, send the data in the target stripe unit to the host; if not, use the parity check algorithm to restore the data in the target stripe unit, and enter the data in the target stripe unit Steps to send data to the host. It can be seen that when the RAID storage system receives the read command from the host, it will check the data of the corresponding target stripe unit, and only send the data to the host on the premise of ensuring that the data is correct, which not only avoids wrong data The transmission of data, and more importantly, it can ensure the validity of data transmission and improve the efficiency of transmission.

附图说明Description of drawings

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to illustrate the embodiments of the present invention more clearly, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. 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 flowchart of the data transmission method of a kind of RAID storage system provided by the embodiment of the present invention;

图2为本发明实施例提供的一种主机与RAID存储系统的结构图;FIG. 2 is a structural diagram of a host and a RAID storage system provided by an embodiment of the present invention;

图3为本发明实施例提供的一种数据卷与校验数据在RAID存储系统上的分布示意图;3 is a schematic diagram of the distribution of a data volume and verification data on a RAID storage system provided by an embodiment of the present invention;

图4为本发明实施例提供的另一种数据卷与校验数据在RAID存储系统上的分布示意图;FIG. 4 is a schematic diagram of the distribution of another data volume and verification data on the RAID storage system provided by the embodiment of the present invention;

图5为本发明实施例提供的另一种RAID存储系统的数据发送的流程图;FIG. 5 is a flowchart of data transmission of another RAID storage system provided by an embodiment of the present invention;

图6为本发明实施例提供的另一种RAID存储系统的数据发送方法的流程图;FIG. 6 is a flow chart of another data sending method of a RAID storage system provided by an embodiment of the present invention;

图7为本发明实施例提供的一种步骤S13的流程图;FIG. 7 is a flow chart of step S13 provided by an embodiment of the present invention;

图8为本发明实施例公开的一种RAID存储系统的数据发送装置的结构图。FIG. 8 is a structural diagram of a data sending device of a RAID storage system disclosed by an embodiment of the present invention.

具体实施方式detailed description

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.

本发明的核心是提供一种RAID存储系统的数据发送方法及装置,用于在主机发出读取指令时,控制器如何能够快速有效地向主机提供正确的数据,从而保证读取的效率和有效性。The core of the present invention is to provide a data sending method and device of a RAID storage system, which is used for how the controller can quickly and effectively provide correct data to the host when the host issues a read command, thereby ensuring the efficiency and effectiveness of the read. sex.

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。In order to enable those skilled in the art to better understand the solution of the present invention, the present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments.

图1为本发明实施例提供的一种RAID存储系统的数据发送方法的流程图。如图1所示,RAID存储系统的数据发送方法包括:FIG. 1 is a flowchart of a data sending method of a RAID storage system provided by an embodiment of the present invention. As shown in Figure 1, the data sending methods of the RAID storage system include:

S10:接收主机发送的读取指令,并按照读取指令查找到目标条带单元。S10: Receive a read instruction sent by the host, and find the target stripe unit according to the read instruction.

S11:利用奇偶校验算法判断目标条带单元中的数据是否正确;如果是,进入步骤S12,否则,进入步骤S13。S11: Use a parity check algorithm to judge whether the data in the target stripe unit is correct; if yes, go to step S12; otherwise, go to step S13.

S12:将目标条带单元中的数据发送至主机。S12: Send the data in the target stripe unit to the host.

S13:利用奇偶校验算法将目标条带单元中的数据进行恢复,并进入步骤S12。S13: Recover the data in the target stripe unit by using a parity check algorithm, and proceed to step S12.

图2为本发明实施例提供的一种主机与RAID存储系统的结构图。如图2所示,RAID存储系统10与主机12进行数据交互,RAID存储系统10中包含了多个磁盘,如图2所示,16(1)-16(6)均为磁盘,RAID存储系统10中包括RAID控制器18,用于直接与各磁盘进行数据交互。可以理解的是,图2只是一种具体示例,并不代表RAID存储系统10只有6个磁盘。FIG. 2 is a structural diagram of a host and a RAID storage system provided by an embodiment of the present invention. As shown in Figure 2, RAID storage system 10 carries out data interaction with host computer 12, has included a plurality of disks in RAID storage system 10, as shown in Figure 2, 16 (1)-16 (6) are all disks, RAID storage system 10 includes a RAID controller 18 for directly exchanging data with each disk. It can be understood that FIG. 2 is only a specific example, and does not mean that the RAID storage system 10 has only 6 disks.

RAID控制器18可能以拥有一个或多个处理器的计算机的形式存在于系统中,该计算机能根据存于可读介质中的执行命令进行数据的处理。RAID控制器18能够同时从磁盘16(1)-16(6)中同时读取数据。磁盘16(1)-16(5)包含了1个或多个数据卷,为了便于解释,我们假设磁盘16(1)-16(5)存储了一个数据卷,此假设目的是为了便于解释,实际场景中可能存在多个数据卷。除了存储数据卷,磁盘16(1)-16(5)同时存储了第一奇偶校验数据,磁盘16(6)存储了第二奇偶校验数据。RAID存储系统10被配置后用来接收来自主机12对数据卷的各类请求。RAID存储系统10也可能被配置接收来自于其他计算机系统的请求,在此不进行过多赘述。RAID controller 18 may exist in the system in the form of a computer having one or more processors capable of processing data according to execution instructions stored on a readable medium. RAID controller 18 is capable of simultaneously reading data from disks 16(1)-16(6) simultaneously. Disks 16(1)-16(5) contain one or more data volumes. For the convenience of explanation, we assume that disks 16(1)-16(5) store a data volume. This assumption is for the convenience of explanation. There may be multiple data volumes in actual scenarios. In addition to storing data volumes, disks 16(1)-16(5) also store first parity data and disk 16(6) stores second parity data. The RAID storage system 10 is configured to receive various requests for data volumes from the host 12 . The RAID storage system 10 may also be configured to receive requests from other computer systems, which will not be detailed here.

当RAID存储系统10接收到读取指令时,首先查找到目标条带单元,即找到与读取指令相对应的条带单元,然后再根据奇偶校验算法判断目标条带单元中的数据是否是正确的,如果是正确的,说明这个数据在写入目标条带单元是正确的,也是主机12所想要的数据,则将该数据发送至主机12。相反,当判断出目标条带单元中的数据不正确的话,则说明在对目标条带单元写入数据的过程中发生错误,则需要对目标条带单元中的数据进行恢复,从而保证发送给主机12的数据是正确的数据。When the RAID storage system 10 receives a read command, it first searches for the target stripe unit, that is, finds the stripe unit corresponding to the read command, and then judges whether the data in the target stripe unit is Correct, if it is correct, it means that the data written in the target stripe unit is correct and also the data desired by the host 12 , then the data is sent to the host 12 . On the contrary, if it is judged that the data in the target stripe unit is incorrect, it means that an error occurred in the process of writing data to the target stripe unit, and the data in the target stripe unit needs to be restored, so as to ensure that the data sent to the The data of the host computer 12 is correct data.

本实施例提供的RAID存储系统的数据发送方法,在RAID存储系统接收到主机的读取指令时,会将相应的目标条带单元的数据进行检验,在确保数据正确的前提下,才将数据发送给主机,这样不仅避免了错误数据的发送,而且更重要的是,能够保证数据发送的有效性和提高发送的效率。In the data sending method of the RAID storage system provided in this embodiment, when the RAID storage system receives a read instruction from the host, it will check the data of the corresponding target stripe unit, and only send the data to It not only avoids the sending of wrong data, but more importantly, it can ensure the validity of data sending and improve the sending efficiency.

为了更加清楚磁盘的存储状态,给出图3和图4。图3为本发明实施例提供的一种数据卷与校验数据在RAID存储系统上的分布示意图。图4为本发明实施例提供的另一种数据卷与校验数据在RAID存储系统上的分布示意图。图3与图4为两种不同的分布,下文将详细说明。需要说明的是,每个磁盘中均包含有多个条带单元,不同磁盘的条带单元构成多个条带。In order to be more clear about the storage status of the disk, Figure 3 and Figure 4 are given. FIG. 3 is a schematic diagram of the distribution of data volumes and parity data on a RAID storage system according to an embodiment of the present invention. FIG. 4 is another schematic diagram of distribution of data volumes and parity data on a RAID storage system according to an embodiment of the present invention. Figure 3 and Figure 4 show two different distributions, which will be described in detail below. It should be noted that each disk includes multiple stripe units, and stripe units of different disks form multiple stripes.

对于图3来说For Figure 3

图3展示了条带S1-Smax在磁盘16(1)-16(6)上的分布。具体为:磁盘16(1)-16(4)这4个磁盘用来存储数据,16(5)用来存储第二奇偶校验数据,16(6)用来存储第一奇偶校验数据。不同磁盘的同一序号的条带单元构成一个条带。例如条带单元B1,1为16(1)的第一个条带单元、条带单元B1,2为16(2)的第一个条带单元、条带单元B1,3为16(3)的第一个条带单元、条带单元B1,4为16(4)的第一个条带单元,条带单元SP1为16(5)的第一个条带单元,则条带单元B1,1、条带单元B1,2、条带单元B1,3、条带单元B1,4以及条带单元SP1就构成了第一条带S1,以此类推得到第二条带S2、第三条带S3和第四条带S4。16(6)用来存储第一奇偶校验数据,包括多个条带单元,各条带单元与磁盘16(1)-16(4)中的各条带单元一一对应,即磁盘16(1)-16(4)中的各条带单元均有自己的第一奇偶校验数据,同一条带上的4个条带单元共同拥有一个第二奇偶校验数据。在图3中,第一奇偶校验数据用Py,x来表示,第二奇偶校验数据用SPy表示y和x均为由1开始的正整数。FIG. 3 shows the distribution of stripes S 1 -S max on disks 16(1)-16(6). Specifically: the four disks 16(1)-16(4) are used to store data, 16(5) is used to store the second parity data, and 16(6) is used to store the first parity data. Stripe units with the same serial number on different disks form a stripe. For example, stripe unit B 1,1 is the first stripe unit of 16(1), stripe unit B 1,2 is the first stripe unit of 16(2), and stripe unit B 1,3 is 16 The first stripe unit of (3), stripe unit B 1,4 is the first stripe unit of 16(4), and the stripe unit SP 1 is the first stripe unit of 16(5), then Stripe unit B 1,1 , strip unit B 1,2 , strip unit B 1,3 , strip unit B 1,4 and strip unit SP 1 constitute the first strip S 1 , and so on A second strip S 2 , a third strip S 3 and a fourth strip S 4 are obtained. 16(6) is used to store the first parity data, including a plurality of stripe units, and each stripe unit corresponds to each stripe unit in the disks 16(1)-16(4), that is, the disk 16( Each stripe unit in 1)-16(4) has its own first parity data, and the four stripe units on the same stripe share a second parity data. In FIG. 3 , the first parity data is represented by P y,x , and the second parity data is represented by SP y . Both y and x are positive integers starting from 1.

在具体实施中,每个条带单元SPy存储了根据条带单元By,1-By,4计算得来的第二奇偶校验数据,此数据是根据条带单元By,1-By,4的逻辑亦或计算得来的。In a specific implementation, each stripe unit SP y stores the second parity data calculated according to the stripe units B y,1 -B y,4 , and this data is calculated according to the stripe units B y,1 - By y, the logic of 4 can also be calculated.

每个条带Sy在磁盘16(6)上都有对应的第一奇偶校验数据。在图3中,每个第一奇偶校验数据都存储在单元Py,1-Py,4中,每个单元Py,x都有与之相对应的条带单元By,x。每个单元Py,x都存储着由条带单元By,x逻辑亦或计算得来的第二奇偶校验数据。Each stripe Sy has corresponding first parity data on disk 16(6). In Fig. 3, each first parity data is stored in units P y,1 -P y,4 , and each unit P y,x has a corresponding stripe unit B y,x . Each unit P y,x stores the second parity data obtained by logic or calculation of the stripe unit B y,x .

主机12与RAID存储系统10的数据交互过程为:由Py,x和SPy分别得来的第一、第二奇偶检验数据,在每次条带单元被改变后能实时更新。例如,RAID控制器18收到来自主机12在条带单元By,x上覆盖写入新数据的请求,相应的,RAID控制器18接收到请求,从已存条带单元By,x上读取数据,从Py,x和SPy读取第一、第二奇偶检验数据。接着,RAID控制器18为条带单元SPy生成新的第二奇偶校验数据,此数据通过在条带单元SPy上已存的第二奇偶校验数据,和从主机12接收到的新数据,与条带单元By,x上的已存数据得来;相应的,RAID控制器18同时也为单元Py,x生成新的第一奇偶校验数据,此数据通过Py,x已存奇偶校验数据,从主机12得到的新数据,与条带单元By,x上的已存数据得来。RAID控制器18在SPy上新生成的第二奇偶校验数据覆盖在SPy上已存的第二奇偶校验数据,使在Py,x上新生成的第一奇偶校验数据覆盖在Py,x上已存的第一奇偶校验数据,使在By,x上新接收的数据覆盖已存的数据。The data interaction process between the host computer 12 and the RAID storage system 10 is: the first and second parity data respectively obtained from P y, x and SP y can be updated in real time after each stripe unit is changed. For example, the RAID controller 18 receives a request from the host 12 to overwrite and write new data on the stripe unit B y ,x . Read data, read the first and second parity data from P y, x and SP y . Next, the RAID controller 18 generates new second parity data for the stripe unit SP y , which is based on the second parity data stored on the stripe unit SP y and the new parity data received from the host The data is obtained from the stored data on the stripe unit B y,x ; correspondingly, the RAID controller 18 also generates new first parity data for the unit P y,x at the same time, and this data passes through the P y,x The stored parity data is obtained from the new data obtained from the host 12 and the stored data on the stripe unit By ,x . The second parity data that RAID controller 18 newly generates on SP y covers the second parity data that has been stored on SP y , so that the first parity data that is newly generated on P y, x covers The first parity data stored on P y,x makes the newly received data on By ,x overwrite the stored data.

图5为本发明实施例提供的另一种RAID存储系统的数据发送的流程图。如图5所示,与上述实施例相同的步骤本实施例不再赘述。在上述实施例的基础上,步骤S11具体包括:FIG. 5 is a flow chart of data transmission in another RAID storage system provided by an embodiment of the present invention. As shown in FIG. 5 , the steps that are the same as those in the above embodiment are not repeated in this embodiment. On the basis of the foregoing embodiments, step S11 specifically includes:

S110:读取目标条带单元的已存数据以及目标条带单元对应的已存第一奇偶校验数据。S110: Read the stored data of the target stripe unit and the stored first parity data corresponding to the target stripe unit.

S111:按照奇偶校验算法将目标条带单元的已存数据生成新第一奇偶校验数据。S111: Generate new first parity data from the stored data of the target stripe unit according to the parity algorithm.

S112:判断已存第一奇偶校验数据与新第一奇偶校验数据是否相同。S112: Determine whether the stored first parity data is the same as the new first parity data.

其中,如果是,则进入步骤S12,否则,进入步骤S13。Wherein, if yes, go to step S12, otherwise, go to step S13.

在另一实施例中,步骤S13具体包括:In another embodiment, step S13 specifically includes:

S130:获取目标条带单元所在条带的第二奇偶校验数据以及目标条带单元所在条带的其余各条带单元的已存数据,并按照奇偶校验算法生成目标条带单元对应的新数据。S130: Obtain the second parity data of the stripe where the target stripe unit is located and the stored data of the remaining stripe units of the stripe where the target stripe unit is located, and generate new parity data corresponding to the target stripe unit according to the parity algorithm. data.

S131:按照奇偶校验算法将目标条带单元对应的新数据生成对比第一奇偶校验数据。S131: Generate new data corresponding to the target stripe unit and compare it with the first parity data according to the parity algorithm.

S132:判断对比第一奇偶校验数据与已存第一奇偶校验数据是否相同,如果是,则进入步骤S133,否则,进入步骤S134。S132: Determine whether the compared first parity data is the same as the stored first parity data, if yes, go to step S133, otherwise, go to step S134.

S133:将目标条带单元对应的新数据覆盖目标条带单元的已存数据,并进入步骤S12。S133: Overwrite the existing data of the target stripe unit with the new data corresponding to the target stripe unit, and proceed to step S12.

S134:判断目标条带单元对应的新数据与目标条带单元的已存数据是否相同,如果是,则进入步骤S136,否则,进入步骤S135。S134: Determine whether the new data corresponding to the target stripe unit is the same as the stored data of the target stripe unit, if yes, go to step S136, otherwise, go to step S135.

S135:输出提示错误的信息。S135 : Output information prompting an error.

S136:按照奇偶校验算法修改目标条带单元所在条带的各条带单元所对应的第一奇偶校验数据,并进入步骤S12。S136: Modify the first parity data corresponding to each stripe unit of the stripe where the target stripe unit is located according to the parity algorithm, and enter step S12.

当RAID控制器18接收到读取条带单元By,x上数据的请求时,作为回应,RAID控制器18读取在条带单元By,x上的已存数据Dold,在条带单元Py,x上的已存第一奇偶数据Pold。接着,RAID控制器18根据已存数据Dold生成新第一奇偶校验数据Pnew。其中,用于生成Pnew的算法与生成在磁盘16(6)中Py,x上的Pold的算法相同。RAID控制器18对Pnew与Pold进行对比,如果新第一奇偶校验数据Pnew与已存第一奇偶校验数据Pold不相同,则认为被请求的数据已经损坏,Pold被错误生成;当新第一奇偶校验数据Pnew与Pold对比相同,则说明可以将条带单元By,x上的数据被返回主机12。When the RAID controller 18 receives a request to read data on the stripe unit B y,x , as a response, the RAID controller 18 reads the stored data D old on the stripe unit B y,x . The stored first parity data P old on the unit P y,x . Next, the RAID controller 18 generates new first parity data P new according to the stored data D old . Wherein, the algorithm for generating P new is the same as the algorithm for generating P old on P y,x in the disk 16(6). RAID controller 18 compares P new with P old , if the new first parity data P new is different from the existing first parity data P old , then it is considered that the requested data is damaged, and P old is wrongly identified. Generated; when the new first parity data P new is the same as P old , it means that the data on the stripe unit By ,x can be returned to the host 12.

如果Pnew与Pold不相等,则RAID控制器18读取本条带中除By,x的其余条带单元上的数据,与条带单元SPy上的第二奇偶校验数据,并生成目标条带单元对应的新数据Dnew,更详细地说,目标条带单元对应的新数据Dnew根据条带单元By,1-By,4上的数据与条带单元SPy上的第二奇偶校验数据生成。然后再根据新数据Dnew再生成一个对比第一奇偶校验数据P'new。用于生成P'new的算法与生成Pnew的算法相同。比较P'new与Pnew,如果P'new与Pnew相同,则在条带单元By,x上的已存数据Dold被Dnew覆盖写入。然而,当额外生成的对比第一奇偶校验数据P'new与Pnew不相同,则比较新数据Dnew与Dold是否相等。If P new is not equal to P old , then RAID controller 18 reads the data on the remaining stripe units except By , x in this stripe, and the second parity data on the stripe unit SP y , and generates The new data D new corresponding to the target stripe unit, more specifically, the new data D new corresponding to the target stripe unit is based on the data on the stripe unit B y,1 -B y,4 and the data on the stripe unit SP y Second parity data generation. Then generate a comparison first parity data P' new according to the new data D new . The algorithm used to generate P' new is the same as the algorithm for generating P new . Comparing P' new and P new , if P' new and P new are the same, then the existing data D old on the stripe unit B y,x is overwritten by D new . However, when the additionally generated comparison first parity data P' new is different from P new , it is compared whether the new data D new is equal to D old .

如果Dnew与Dold比较后不相同,则向主机12返回一个错误信息,表明RAID存储系统10有过多的数据损坏。If D new is different from D old after comparison, an error message is returned to the host 12, indicating that the RAID storage system 10 has excessive data damage.

如果Dnew与Dold比较后相同,则说明本条带中的某一个或某几个第一奇偶校验数据发生错误,需要按照奇偶校验算法进行修复。每一个第一奇偶校验数据的具体修复过程为:If D new is the same as D old after comparison, it means that one or some first parity data in this stripe has an error, and needs to be repaired according to the parity algorithm. The specific repair process of each first parity data is:

根据条带单元By,x中的已存数据生成新奇偶校验数据Pnew(i)。用于生成Pnew的算法与生成Py,x上的Pold的算法相同。接着将Pnew(i)写入覆盖掉Pold(i)。重复上述过程,知道将本条带中全部的第一奇偶校验数据修改完为止。其中下标i表示多个条带单元依次循环进行。Generate new parity data P new(i) according to the stored data in the stripe unit B y,x . The algorithm used to generate P new is the same as that used to generate P old on P y,x . Then write P new(i) to overwrite P old(i) . The above process is repeated until all the first parity data in this stripe are modified. The subscript i indicates that multiple strip units are cyclically performed sequentially.

图5展示了RAID存储系统10接收了只对条带单元By,x的读取数据请求。然而,若RAID存储系统10接收到读取多个条带单元数据的请求,则都会重复一次图5中的流程。从时间上来讲,图5流程可能比当前技术流程所用时间更长,但却增加了返回到主机12的数据的有效性和可靠性,相对于现有技术中,可能会无限制的发送错误数据来说,本发明提供的方法所用的时间也是较少的,因此在一定程度上,效率也是较高的。FIG. 5 shows that the RAID storage system 10 receives a read data request for stripe unit B y,x only. However, if the RAID storage system 10 receives a request to read data from multiple stripe units, it will repeat the process in FIG. 5 once. In terms of time, the process in Figure 5 may take longer than the current technical process, but it increases the validity and reliability of the data returned to the host 12. Compared with the prior art, error data may be sent without limit Speaking, the time used by the method provided by the invention is also less, so to a certain extent, the efficiency is also higher.

对于图4来说For Figure 4

图4与图3相同的地方,本实施例不再赘述,磁盘16(6)上还存储了另一种数据,即校验和。与条带S1-Smax相对应的校验和CS1-CSmax,在一个系统中,每个校验和数据CSy都由条带单元By,1-By,4与和条带Sy相对应的SPy计算得来;其中,生成CSy的算法与生成SPy的算法不相同,且无论CSy是怎样的数据形式,任意条带单元By,x的数据都能根据CSy与SPy中的数据生成。Where FIG. 4 is the same as FIG. 3 , this embodiment will not describe it again. Another kind of data is stored on the disk 16 ( 6 ), that is, a checksum. Checksum CS 1 -CS max corresponding to stripes S 1 -S max , in a system each checksum data CS y is composed of stripe units B y,1 -B y,4 and stripe The SP y corresponding to band S y is calculated; the algorithm for generating CS y is different from the algorithm for generating SP y , and no matter what data form CS y is, the data of any strip unit B y,x can be Generated from data in CS y and SP y .

如Py,x一样,校验和数据CSy会在每次条带单元By,x改变时更新。当RAID控制器18接收到来自主机12对条带单元By,x的覆盖写请求时,RAID控制器18读取在条带单元By,x上的已有数据,SPy上的第二奇偶校验数据,CSy校验和;接着,RAID控制器18根据条带单元SPy上的第二奇偶数据,从主机12接收到的新数据,与条带单元By,x上已存的数据为SPy生成新的第二奇偶校验数据。同时,RAID控制器18也会根据CSy上的已存校验和,从主机12接收到的新数据,与条带单元By,x上的已存数据为CSy生成新的校验和。因此,RAID控制器18覆盖写入了在SPy上的新第二奇偶校验数据,在CSy上的新校验和,在By,x上的来自主机12的新数据。Like P y,x , the checksum data CS y is updated every time the stripe unit B y,x changes. When the RAID controller 18 receives an overwrite request from the host computer 12 to the stripe unit B y, x , the RAID controller 18 reads the existing data on the stripe unit B y, x , and the second data on the SP y Parity data, CS y checksum; Then, RAID controller 18 according to the second parity data on the stripe unit SP y , from the new data received from the host computer 12, and stripe unit B y, x has stored The data of SP y generates new second parity data. At the same time, RAID controller 18 will also generate a new checksum for CS y based on the existing checksum on CS y , the new data received from host 12, and the stored data on stripe unit B y,x . Thus, RAID controller 18 overwrites the new second parity data on SP y , the new checksum on CS y , and the new data from host 12 on By ,x .

图6为本发明实施例提供的另一种RAID存储系统的数据发送方法的流程图。如图6所示,与上述实施例相同的步骤,本实施例不再赘述,步骤S11具体包括:FIG. 6 is a flowchart of another data sending method of a RAID storage system provided by an embodiment of the present invention. As shown in FIG. 6, the same steps as those in the above-mentioned embodiment will not be repeated in this embodiment, and step S11 specifically includes:

S113:按照奇偶校验算法计算目标条带单元所在条带的第二奇偶校验数据。S113: Calculate the second parity data of the stripe where the target stripe unit is located according to the parity algorithm.

S114:判断计算得到的第二奇偶校验数据与已存第二奇偶校验数据是否相同,其中,如果是,则进入步骤S12,否则,进入步骤S13。S114: Determine whether the calculated second parity data is the same as the stored second parity data, if yes, go to step S12, otherwise, go to step S13.

图7为本发明实施例提供的一种步骤S13的流程图。如图7所示,步骤S13具体包括:FIG. 7 is a flow chart of step S13 provided by an embodiment of the present invention. As shown in Figure 7, step S13 specifically includes:

S137:设置目标条带单元所在条带的第一条带单元为起始单元。S137: Set the first stripe unit of the stripe where the target stripe unit is located as the starting unit.

S138:按照奇偶校验算法将当前条带的已存第二奇偶校验数据和目标条带单元所在条带的其余各条带单元的已存第一奇偶校验数据生成当前条带单元对应的新数据。S138: Generate the stored second parity data of the current stripe and the stored first parity data of the remaining stripe units in the stripe where the target stripe unit is located according to the parity algorithm to generate the corresponding data of the current stripe unit. new data.

S139:将当前条带单元对应的新数据与目标条带单元所在条带的其余各条带单元的已存数据生成当前条带对应的新校验和。S139: Generate a new checksum corresponding to the current stripe from the new data corresponding to the current stripe unit and the stored data of the remaining stripe units in the stripe where the target stripe unit is located.

S140:判断当前条带对应的新校验和与已存校验和是否相同,如果是,进入步骤S141,否则进入步骤S142。S140: Determine whether the new checksum corresponding to the current stripe is the same as the stored checksum, if yes, go to step S141, otherwise go to step S142.

S141:将当前条带单元对应的新数据覆盖当前条带单元的已存数据,并进入步骤S12。S141: Overwrite the stored data of the current stripe unit with the new data corresponding to the current stripe unit, and proceed to step S12.

S142:判断当前条带单元是否为最后一个存储数据的条带单元,如果是,则进入步骤S143,否则,进入步骤S144。S142: Determine whether the current stripe unit is the last stripe unit storing data, if yes, go to step S143, otherwise, go to step S144.

S143:输出提示错误的信息;S143: Outputting error message;

S144:将当前条带单元的下一个条带单元作为当前条带单元,并返回步骤S138。S144: Use the next stripe unit of the current stripe unit as the current stripe unit, and return to step S138.

RAID控制器18接受了来主机12的读取数据请求,被请求的数据存储在条带单元By,x中。RAID控制器18根据条带单元By,1-By,4的数据生成新第二奇偶校验数据Pnew。值得注意的是,Pnew的生成算法与生成条带单元SPy上的已存奇偶校验数据Pold相同。接着RAID控制器18比较Pnew与PoldThe RAID controller 18 accepts the read data request from the host 12, and the requested data is stored in the stripe unit B y,x . The RAID controller 18 generates new second parity data P new according to the data of the stripe units B y,1 -B y,4 . It should be noted that the generation algorithm of P new is the same as that of generating the existing parity data P old on the stripe unit SP y . Then the RAID controller 18 compares P new and P old .

若Pnew与Pold相等,则认为条带单元By,x上的数据是有效的,并发送至主机12。If P new is equal to P old , the data on the stripe unit By,x is considered to be valid and sent to the host 12.

当Pnew与Pold不相同时,则认为损坏数据存在于条带单元By,1-By,4中,需要对各条带单元的数据进行恢复。在具体实施中,可以设置一个虚拟变量i,一次对每个条带单元的数据进行恢复,本实施例不再赘述,参见图6。When P new is different from P old , it is considered that the damaged data exists in the stripe units B y,1 -B y,4 , and the data of each stripe unit needs to be restored. In a specific implementation, a dummy variable i may be set to restore the data of each stripe unit at a time, which will not be described in detail in this embodiment, see FIG. 6 .

在步骤S139中,RAID控制器18生成新校验和CSnew。值得注意的是,生成CSnew的算法与生成在磁盘16(6)上CS1-CSmax的算法相同。In step S139, the RAID controller 18 generates a new checksum CSnew . It is worth noting that the algorithm for generating CS new is the same as the algorithm for generating CS 1 -CS max on disk 16(6).

上述实施例中,公开了RAID存储系统的数据发送对应的几个实施例,下文中,将相对应的给出RAID存储系统的数据发送装置对应的实施例。由于RAID存储系统的数据发送装置与RAID存储系统的数据发送方法相对应,因此,具体实施方式参见上文的说明,本实施例不再赘述。图8为本发明实施例公开的一种RAID存储系统的数据发送装置的结构图。如图8所述,该装置包括:In the above-mentioned embodiments, several embodiments corresponding to the data sending device of the RAID storage system are disclosed, and hereinafter, corresponding embodiments corresponding to the data sending device of the RAID storage system will be given. Since the data sending device of the RAID storage system corresponds to the data sending method of the RAID storage system, please refer to the description above for the specific implementation manner, and details will not be repeated in this embodiment. FIG. 8 is a structural diagram of a data sending device of a RAID storage system disclosed by an embodiment of the present invention. As shown in Figure 8, the device includes:

查找单元1,用于接收主机发送的读取指令,并按照读取指令查找到目标条带单元;The search unit 1 is configured to receive the read instruction sent by the host, and find the target stripe unit according to the read instruction;

判断单元2,用于利用奇偶校验算法判断目标条带单元中的数据是否正确;Judging unit 2, configured to use a parity check algorithm to judge whether the data in the target stripe unit is correct;

恢复单元3,用于在判断单元的判断结果为否时,利用奇偶校验算法将目标条带单元中的数据进行恢复;The recovery unit 3 is used to recover the data in the target stripe unit by using a parity check algorithm when the determination result of the determination unit is No;

发送单元4,用于在判断单元的判断结果为是,或恢复单元将数据进行恢复后,将目标条带单元中的数据发送至主机。The sending unit 4 is configured to send the data in the target stripe unit to the host when the judging result of the judging unit is yes, or after the data is restored by the restoring unit.

作为优选的实施方式,判断单元2具体包括:As a preferred embodiment, the judging unit 2 specifically includes:

读取模块,用于读取目标条带单元的已存数据以及目标条带单元对应的已存第一奇偶校验数据;A reading module, configured to read the stored data of the target stripe unit and the stored first parity data corresponding to the target stripe unit;

第一生成模块,用于按照奇偶校验算法将目标条带单元的已存数据生成新第一奇偶校验数据;The first generation module is used to generate new first parity data from the stored data of the target stripe unit according to the parity algorithm;

第一判断模块,用于判断已存第一奇偶校验数据与新第一奇偶校验数据是否相同,如果是,则触发发送单元,否则,触发恢复单元。The first judging module is used to judge whether the stored first parity data is the same as the new first parity data, and if so, trigger the sending unit; otherwise, trigger the recovery unit.

作为优选的实施方式,恢复单元3具体包括:As a preferred embodiment, the recovery unit 3 specifically includes:

第二生成模块,用于获取目标条带单元所在条带的第二奇偶校验数据以及目标条带单元所在条带的其余各条带单元的已存数据,并按照奇偶校验算法生成目标条带单元对应的新数据;The second generation module is used to obtain the second parity data of the stripe where the target stripe unit is located and the stored data of the remaining stripe units of the stripe where the target stripe unit is located, and generate the target stripe according to the parity algorithm new data corresponding to the band unit;

第三生成模块,用于按照奇偶校验算法将目标条带单元对应的新数据生成对比第一奇偶校验数据;The third generation module is used to generate new data corresponding to the target stripe unit and compare the first parity data according to the parity algorithm;

第二判断模块,用于判断对比第一奇偶校验数据与已存第一奇偶校验数据是否相同;The second judging module is used to judge whether the first parity data is the same as the stored first parity data;

第一覆盖模块,用于在第二判断模块的判断结果为是时,将目标条带单元对应的新数据覆盖目标条带单元的已存数据,并触发发送单元;The first covering module is configured to overwrite the stored data of the target stripe unit with the new data corresponding to the target stripe unit when the judgment result of the second judging module is yes, and trigger the sending unit;

第三判断模块,用于在第二判断模块的判断结果为否时,判断目标条带单元对应的新数据与目标条带单元的已存数据是否相同;The third judging module is used to judge whether the new data corresponding to the target stripe unit is the same as the stored data of the target stripe unit when the judgment result of the second judging module is No;

第一输出模块,用于在第三判断模块的判断结果为否时,输出提示错误的信息;The first output module is used to output information prompting an error when the judgment result of the third judging module is No;

修改模块,用不在第三判断模块的判断结果为是时,按照奇偶校验算法修改目标条带单元所在条带的各条带单元所对应的第一奇偶校验数据,并触发发送单元。The modification module modifies the first parity data corresponding to each stripe unit of the stripe where the target stripe unit is located according to the parity algorithm when the judgment result of the third judgment module is yes, and triggers the sending unit.

在另外一个实施例中,判断单元2具体包括:In another embodiment, the judging unit 2 specifically includes:

计算模块,用于按照奇偶校验算法计算目标条带单元所在条带的第二奇偶校验数据;A calculation module, configured to calculate the second parity data of the stripe where the target stripe unit is located according to the parity algorithm;

第四判断模块,用于判断计算得到的第二奇偶校验数据与已存第二奇偶校验数据是否相同,如果是,则触发发送单元,否则,触发恢复单元。The fourth judging module is used to judge whether the calculated second parity data is the same as the stored second parity data, if yes, trigger the sending unit, otherwise, trigger the recovery unit.

作为优选地实施方式,恢复单元3具体包括:As a preferred embodiment, the recovery unit 3 specifically includes:

设置模块,用于设置目标条带单元所在条带的第一条带单元为起始单元;A setting module, configured to set the first strip unit of the strip where the target strip unit is located as the starting unit;

第四生成模块,用于按照奇偶校验算法将当前条带的已存第二奇偶校验数据和目标条带单元所在条带的其余各条带单元的已存第一奇偶校验数据生成当前条带单元对应的新数据;The fourth generation module is used to generate the current parity data from the stored second parity data of the current stripe and the stored first parity data of the remaining stripe units in the stripe where the target stripe unit is located according to the parity algorithm. The new data corresponding to the stripe unit;

第五生成模块,用于将当前条带单元对应的新数据与目标条带单元所在条带的其余各条带单元的已存数据生成当前条带对应的新校验和;The fifth generation module is used to generate a new checksum corresponding to the current stripe from the new data corresponding to the current stripe unit and the stored data of the remaining stripe units of the stripe where the target stripe unit is located;

第五判断模块,用于判断当前条带对应的新校验和与已存校验和是否相同;The fifth judging module is used to judge whether the new checksum corresponding to the current stripe is the same as the existing checksum;

第二覆盖模块,用于第五判断模块的判断结果为是时,将当前条带单元对应的新数据覆盖当前条带单元的已存数据,并触发发送单元;The second covering module is used to overwrite the stored data of the current stripe unit with the new data corresponding to the current stripe unit when the judgment result of the fifth judgment module is yes, and trigger the sending unit;

第六判断模块,用于第五判断模块的判断结果为否时,判断当前条带单元是否为最后一个存储数据的条带单元;The sixth judging module is used to judge whether the current stripe unit is the last stripe unit storing data when the judgment result of the fifth judging module is No;

第二输出模块,用于在第六判断模块的判断结果为是时,输出提示错误的信息;The second output module is used to output information prompting an error when the judgment result of the sixth judgment module is yes;

递增模块,用于在第六判断模块的判断结果为否时,将当前条带单元的下一个条带单元作为当前条带单元,并触发第四生成模块。The increment module is configured to use the next stripe unit of the current stripe unit as the current stripe unit when the judgment result of the sixth judgment module is negative, and trigger the fourth generation module.

本实施例提供的RAID存储系统的数据发送装置,在RAID存储系统接收到主机的读取指令时,会将相应的目标条带单元的数据进行检验,在确保数据正确的前提下,才将数据发送给主机,这样不仅避免了错误数据的发送,而且更重要的是,能够保证数据发送的有效性和提高发送的效率。The data sending device of the RAID storage system provided in this embodiment, when the RAID storage system receives a read command from the host, will check the data of the corresponding target stripe unit, and only send the data to It not only avoids the sending of wrong data, but more importantly, it can ensure the validity of data sending and improve the sending efficiency.

以上对本发明所提供的RAID存储系统的数据发送方法及装置进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。The data sending method and device of the RAID storage system provided by the present invention have 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 for those skilled in the art, without departing from the principles of the present invention, some improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the protection scope of the claims of the present invention.

Claims (10)

1. a kind of data transmission method for uplink of RAID storage system, it is characterised in that including:
The reading instruction that Receiving Host sends, and find target stripe unit according to the reading instruction;
Judge whether the data in the target stripe unit are correct using parity arithmetic;
If it is, by the data is activation in the target stripe unit to the main frame;
If it is not, then being recovered the data in the target stripe unit using the parity arithmetic, and enter institute The step of stating data is activation to the main frame in the target stripe unit.
2. the data transmission method for uplink of RAID storage system according to claim 1, it is characterised in that the utilization odd even school Checking method judges whether the data in the target stripe unit correctly specifically include:
Read the canned data of the target stripe unit and the target stripe unit is corresponding has deposited the first even-odd check Data;
The canned data of the target stripe unit is generated into new first parity data according to the parity arithmetic;
Whether the first parity data has been deposited in judgement identical with new first parity data;
Wherein, it is no if it is, the step of into data is activation to the main frame by the target stripe unit Then, into it is described the data in the target stripe unit are recovered using the parity arithmetic the step of.
3. the data transmission method for uplink of RAID storage system according to claim 2, it is characterised in that described using described strange Data in the target stripe unit are carried out recovery and specifically included by even parity check algorithm:
Obtain bar where second parity data and the target stripe unit of band where the target stripe unit The canned data of each stripe cell of remaining of band, and it is corresponding to generate the target stripe unit according to the parity arithmetic New data;
The corresponding new data generation of the target stripe unit is contrasted into the first even-odd check number according to the parity arithmetic According to;
Judge the first parity data of the contrast and whether described to have deposited the first parity data identical;
If it is, the corresponding new data of the target stripe unit is covered the canned data of the target stripe unit, and The step of into data is activation to the main frame by the target stripe unit;
If it is not, then judge the corresponding new data of the target stripe unit and the target stripe unit canned data whether It is identical;
If it is not, then the information of output prompting mistake;
If it is, right according to each stripe cell institute that the parity arithmetic changes band where the target stripe unit The first parity data answered, and enter the step of the data is activation by the target stripe unit to the main frame Suddenly.
4. the data transmission method for uplink of RAID storage system according to claim 1, it is characterised in that the utilization odd even school Checking method judges whether the data in the target stripe unit correctly specifically include:
The second parity data of band where the target stripe unit is calculated according to the parity arithmetic;
Whether the second parity data for being calculated of judgement is with to have deposited the second parity data identical;
Wherein, it is no if it is, the step of into data is activation to the main frame by the target stripe unit Then, into it is described the data in the target stripe unit are recovered using the parity arithmetic the step of.
5. the data transmission method for uplink of RAID storage system according to claim 4, it is characterised in that described using described strange Data in the target stripe unit are carried out recovery and specifically included by even parity check algorithm:
The first stripe cell for setting band where the target stripe unit is start element;
Current band the second parity data and the target stripe unit institute have been deposited into according to the parity arithmetic The corresponding new data of current stripe cell is generated in first parity data of having deposited of remaining each stripe cell of band;
By remaining each stripe cell of the corresponding new data of the current stripe cell and band where the target stripe unit Canned data generate the corresponding new verification of current band and;
Judge the corresponding new verification of the current band and verified and whether identical with having deposited;
If it is, by the canned data of the current stripe cell of the current corresponding new data covering of stripe cell, and enter The step of data is activation to main frame by the target stripe unit;
If it is not, then judge current stripe cell whether be last data storage stripe cell;
If it is, the information of output prompting mistake;If it is not, then using next stripe cell of current stripe cell as work as Preceding stripe cell, and return.
6. a kind of data sending device of RAID storage system, it is characterised in that including:
Searching unit, for the reading instruction that Receiving Host sends, and finds target stripe unit according to the reading instruction;
Judging unit, for judging whether the data in the target stripe unit are correct using parity arithmetic;
Recovery unit, for the judged result in the judging unit for it is no when, using the parity arithmetic by the mesh Data in mark stripe cell are recovered;
Transmitting element, for being yes in the judged result of the judging unit, or after the recovery unit is recovered data, By the data is activation in the target stripe unit to the main frame.
7. the data sending device of RAID storage system according to claim 6, it is characterised in that the judging unit tool Body includes:
Read module, for reading the canned data of the target stripe unit and the target stripe unit is corresponding has deposited First parity data;
First generation module, for according to the parity arithmetic by the canned data of target stripe unit generation new the One parity data;
First judge module, for judge to have deposited the first parity data and new first parity data whether phase Together, if it is, triggering the transmitting element, otherwise, the recovery unit is triggered.
8. the data sending device of RAID storage system according to claim 7, it is characterised in that the recovery unit tool Body includes:
Second generation module, the second parity data and the mesh for obtaining band where the target stripe unit The canned data of remaining each stripe cell of band where mark stripe cell, and generate the mesh according to the parity arithmetic The corresponding new data of mark stripe cell;
3rd generation module, for according to the parity arithmetic that the corresponding new data generation of the target stripe unit is right Than the first parity data;
Second judge module, for judge it is described contrast the first parity data be with first parity data of having deposited It is no identical;
First overlay module, during for the judged result in second judge module to be, by the target stripe unit pair The new data answered covers the canned data of the target stripe unit, and triggers the transmitting element;
3rd judge module, for when the judged result of second judge module is no, judging the target stripe unit Whether corresponding new data is identical with the canned data of the target stripe unit;
First output module, for when the judged result of the 3rd judge module is no, the information of mistake to be pointed out in output;
Modified module, with not when the judged result of the 3rd judge module is to be, according to parity arithmetic modification The first parity data where the target stripe unit corresponding to each stripe cell of band, and it is single to trigger the transmission Unit.
9. the data sending device of RAID storage system according to claim 6, it is characterised in that the judging unit tool Body includes:
Computing module, the second odd even school for calculating band where the target stripe unit according to the parity arithmetic Test data;
4th judge module, for judging the second parity data for being calculated and whether having deposited the second parity data It is identical, if it is, triggering the transmitting element, otherwise, trigger the recovery unit.
10. the data sending device of RAID storage system according to claim 9, it is characterised in that the recovery unit Specifically include:
Setup module, the first stripe cell for setting band where the target stripe unit is start element;
4th generation module, for current band have been deposited into the second parity data and institute according to the parity arithmetic The first parity data of having deposited for stating remaining each stripe cell of band where target stripe unit generates current stripe cell Corresponding new data;
5th generation module, for by the corresponding new data of the current stripe cell and band where the target stripe unit Remaining each stripe cell canned data generate the corresponding new verification of current band and;
Whether the 5th judge module, verify and identical for judging the corresponding new verification of the current band and with having deposited;
Second overlay module, the judged result for the 5th judge module is when being, by the current stripe cell correspondence New data cover the canned data of current stripe cell, and trigger the transmitting element;
6th judge module, for the 5th judge module judged result for it is no when, judge current stripe cell whether be The stripe cell of last data storage;
Second output module, during for the judged result in the 6th judge module to be, the information of output prompting mistake;
It is incremented by module, for when the judged result of the 6th judge module is no, by next of current stripe cell Tape cell triggers the 4th generation module as current stripe cell.
CN201710090027.8A 2017-02-20 2017-02-20 Data sending method and device of RAID storage system Active CN106844088B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710090027.8A CN106844088B (en) 2017-02-20 2017-02-20 Data sending method and device of RAID storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710090027.8A CN106844088B (en) 2017-02-20 2017-02-20 Data sending method and device of RAID storage system

Publications (2)

Publication Number Publication Date
CN106844088A true CN106844088A (en) 2017-06-13
CN106844088B CN106844088B (en) 2020-03-27

Family

ID=59128566

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710090027.8A Active CN106844088B (en) 2017-02-20 2017-02-20 Data sending method and device of RAID storage system

Country Status (1)

Country Link
CN (1) CN106844088B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221681A (en) * 2019-11-07 2020-06-02 华为技术有限公司 Memory repairing method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069381B1 (en) * 2003-07-01 2006-06-27 Veritas Operating Corporation Automated Recovery from data corruption of data volumes in RAID storage
CN101567211A (en) * 2009-05-27 2009-10-28 杭州华三通信技术有限公司 Method for improving usability of disk and disk array controller
CN101976177A (en) * 2010-08-19 2011-02-16 北京同有飞骥科技有限公司 Method for constructing vertical grouped disk array capable of being subject to parallel centralized check

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069381B1 (en) * 2003-07-01 2006-06-27 Veritas Operating Corporation Automated Recovery from data corruption of data volumes in RAID storage
CN101567211A (en) * 2009-05-27 2009-10-28 杭州华三通信技术有限公司 Method for improving usability of disk and disk array controller
CN101976177A (en) * 2010-08-19 2011-02-16 北京同有飞骥科技有限公司 Method for constructing vertical grouped disk array capable of being subject to parallel centralized check

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221681A (en) * 2019-11-07 2020-06-02 华为技术有限公司 Memory repairing method and device
WO2021088368A1 (en) * 2019-11-07 2021-05-14 华为技术有限公司 Method and device for repairing memory

Also Published As

Publication number Publication date
CN106844088B (en) 2020-03-27

Similar Documents

Publication Publication Date Title
CN106201338B (en) Data storage method and device
CN108646982B (en) Automatic data restoration method and device based on UBIFS
CN107807792A (en) A kind of data processing method and relevant apparatus based on copy storage system
CN104461641B (en) A kind of data programming method, system, burn writing equipment and target device
CN110399247B (en) A data recovery method, apparatus, device and computer-readable storage medium
CN102084350A (en) Verification of remote copies of data
CN110825569B (en) A kind of hard disk stability test method and test system
CN103034564B (en) Data disaster tolerance drilling method, data disaster tolerance practice device and system
US20120117040A1 (en) Method and System for Verifying Data Stored on a Medium
CN111078662A (en) Block chain data storage method and device
WO2019210844A1 (en) Anomaly detection method and apparatus for storage device, and distributed storage system
WO2021151298A1 (en) Data redundancy processing method and apparatus, device, and storage medium
US7849355B2 (en) Distributed object sharing system and method thereof
CN103019880A (en) Data verification method, storage device and storage system
CN104375905A (en) Incremental backing up method and system based on data block
US11372555B2 (en) Reconstructing data in a smart storage array
CN111198920B (en) Method and device for determining comparison table snapshot based on database synchronization
JP2005004753A (en) Method and device of performing data version checking
CN118708130B (en) Remote replication method and device for data volume, computer equipment and storage medium
CN114756624A (en) Data processing method, device and equipment for full-scale nodes and storage medium
CN106844088A (en) The data transmission method for uplink and device of a kind of RAID storage system
CN111857740A (en) A software upgrade method and device
CN109558086B (en) Data reading method, system and related components
CN108121509B (en) Method for improving RAID efficiency during SSD read operation and SSD
CN103823637B (en) A kind of data processing method and equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant