CN116027986A - 一种数据存储校验方法、装置、设备及存储介质 - Google Patents
一种数据存储校验方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116027986A CN116027986A CN202310165981.4A CN202310165981A CN116027986A CN 116027986 A CN116027986 A CN 116027986A CN 202310165981 A CN202310165981 A CN 202310165981A CN 116027986 A CN116027986 A CN 116027986A
- Authority
- CN
- China
- Prior art keywords
- data segment
- unit
- solid state
- abnormal data
- state disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Detection And Correction Of Errors (AREA)
Abstract
本申请公开了一种数据存储校验方法、装置、设备及存储介质,涉及数据存储校验技术领域,包括:通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;外置磁盘阵列单元通过SAS卡与中央处理器级联;通过固态硬盘接收外置磁盘阵列单元发送的异常数据段,并通过固态硬盘对异常数据段进行第二轮校验以定位出异常数据段中的误码地址;固态硬盘通过独立磁盘冗余阵列单元与中央处理器直连;基于误码地址对异常数据段进行调整;利用调整后数据段替换异常数据段。本申请通过外置磁盘阵列单元与直连固态硬盘间的数据交互的存储方式,使数据校验与存储过程同时进行,提高了数据存储的效率和存储数据的准确性。
Description
技术领域
本发明涉及数据存储校验技术领域,特别涉及一种数据存储校验方法、装置、设备及存储介质。
背景技术
当前,在大数据时代,对存储阵列可靠性提出更高要求,尤其对存储系统数据存储的准确性。随着数据量的成倍提升,存储系统的数据传输逐渐升级到了PCIE5.0,存储速度极大的进行了提升,且存储空间也由之前的盘控一体升级到了外置大量的共享外置磁盘阵列单元进行数据存储,这种数据传输速率的升级以及数据存储容量的升级给数据传输过程的准确性带来压力。随着传输速率的提升,数据存储过程中出现误码率的可能性提高,且随着存储数据总容量的增加,出现误码的数量也会增多,当前系统总的校验算法难以保证校验的准确性,而且校验与存储过程分离,难以提升数据的校验速率。
发明内容
有鉴于此,本发明的目的在于提供一种数据存储校验方法、装置、设备及存储介质,能够使得数据校验与存储过程同时进行,提高数据存储的效率,保证存储数据的准确性。其具体方案如下:
第一方面,本申请公开了一种数据存储校验方法,包括:
通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联;
通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连;
通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段;
利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
可选的,所述通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段,包括:
通过外置磁盘阵列单元采用改进后奇偶校验算法对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段。
可选的,所述通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,包括:
通过所述固态硬盘单元提取所述异常数据段的起始码和终止码;
根据接收到所述固态硬盘单元反馈的所述起始码和所述终止码确定出相应的正常数据段;
通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段发送至所述固态硬盘单元;
通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值。
可选的,所述通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段发送至所述固态硬盘单元,包括:
通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段多次发送至所述固态硬盘单元。
可选的,所述通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值之后,还包括:
通过所述高速串行计算机扩展总线交换设备接收所述固态硬盘单元反馈的所述误码地址和所述误码值。
可选的,所述通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段,包括:
根据所述误码地址从所述正常数据段中确定出正确码值;
将所述正确码值和所述误码地址发送至所述固态硬盘;
通过所述固态硬盘利用所述正确码值对所述异常数据段进行调整得到调整后数据段。
可选的,所述利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段,包括:
通过所述高速串行计算机扩展总线交换设备将所述调整后数据段发送至所述外置磁盘阵列单元中,并利用所述调整后数据段替换所述外置磁盘阵列单元中相应的所述异常数据段。
第二方面,本申请公开了一种数据存储校验装置,包括:
第一校验模块,用于通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联;
第二校验模块,用于通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连;
数据段调整模块,用于通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段;
数据段替换模块,用于利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的数据存储校验方法的步骤。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的数据存储校验方法的步骤。
可见,本申请提供了一种数据存储校验方法,包括:通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联;通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连;通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段;利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。由此可知,本申请通过外置磁盘阵列单元进行第一轮校验确定出存在误码的异常数据段,通过固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,这种数据校验方式快捷高效,也即通过外置磁盘阵列单元与直连固态硬盘间的数据交互的存储方式,能够使得数据校验与存储过程同时进行,提高数据存储的效率,可以在不影响数据存储速度,外置磁盘阵列单元空间占用率的情况下,提高存储数据的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种数据交互存储的硬件拓扑结构示意图;
图2为本申请公开的一种数据存储校验方法流程图;
图3为本申请公开的一种数据动态交互存储校验算法整体流程图;
图4为本申请公开的一种第二轮校验方法流程图;
图5为本申请公开的一种具体的数据存储校验方法流程图;
图6为本申请公开的一种改进的奇偶校验数据结构示意图;
图7为本申请公开的一种数据存储校验装置结构示意图;
图8为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,在大数据时代,对存储阵列可靠性提出更高要求,尤其对存储系统数据存储的准确性。随着数据量的成倍提升,存储系统的数据传输逐渐升级到了PCIE5.0,存储速度极大的进行了提升,且存储空间也由之前的盘控一体升级到了外置大量的共享外置磁盘阵列单元进行数据存储,这种数据传输速率的升级以及数据存储容量的升级给数据传输过程的准确性带来压力。随着传输速率的提升,数据存储过程中出现误码率的可能性提高,且随着存储数据总容量的增加,出现误码的数量也会增多,当前系统总的校验算法难以保证校验的准确性,而且校验与存储过程分离,难以提升数据的校验速率。为此,本申请提供了一种新的数据存储校验方案,能够使得数据校验与存储过程同时进行,提高数据存储的效率,保证存储数据的准确性。
需要指出的是,本申请公开的一种数据存储校验方法对应的数据交互存储的硬件拓扑结构如图1所示,所述数据交互存储的硬件拓扑结构以PCIE SWITCH(即高速串行计算机扩展总线交换设备)作为传输介质,直接级联了前端的CPU(Central Processing unit,中央处理器),通过RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)卡直连后端SSD(Solid State Drives,固态硬盘),并通过SAS(Serial Attached SCSI,串行连接SCSI)卡级联了JBOD(Just a Bunch Of Disks,外置磁盘阵列)扩展柜存储单元,其中所述后端SSD用于数据校验,所述JBOD扩展柜存储单元用于数据存储,使数据的校验与存储过程同时进行,提高了数据存储的效率。并且所述数据交互存储的硬件拓扑结构可以用于但不限于服务器、军工计算机等包含存储介质,需要进行数据校验的设备。
本发明实施例公开了一种数据存储校验方法,参见图2所示,该方法包括:
步骤S11:通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联。
本实施例中,通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联。可以理解的是,数据经过控制器(即中央处理器)中处理,处理完成后,将处理后的数据通过PCIE SWITCH桥片存放至后端级联的JBOD单元中,并在JBOD单元中进行第一轮校验,第一轮校验主要以定位问题为主,即第一轮校验仅用于定位出数据中是否存在误码,所以不存在大规模运算场景。
步骤S12:通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连。
本实施例中,通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段之后,通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址。可以理解的是,在JBOD单元中进行第一轮校验确定出存在误码的异常数据段时,同时将所述异常数据段存储至通过RAID卡与中央处理器直连的后端SSD中,从而不会占用所述JBOD单元的存储空间,所述JBOD单元用于最终的数据存储,所述JBOD单元和所述后端SSD之间共同组成了一个新的RAID校验磁盘阵列结构,也就是说,存储到与控制器(即中央处理器)直连的所述后端SSD中的数据为在所述JBOD单元中进行第一轮校验时检测出的存在误码的异常数据端,由于所述后端SSD通过RAID卡与控制器进行直连,因此,具有较强的RAID校验计算功能,也就是说,通过RAID卡与控制器进行直连的后端SSD盘可以为数据校验提供足够的算力与存储空间,即第二轮校验依托于通过RAID卡与CPU直连的后端SSD单元的强大计算能力与自身存储空间,将异常数据段在与中央处理器直连的所述后端SSD中进行暂时存储,然后通过相应的算法进行误码定位,并在所述后端SSD中进行第二轮校验,第二轮校验的目的主要是进行误码问题的定位与修改,并能够准确地修正传输数据,同时保证数据的修正率达到100%,修正过程中不会引入其他误码,即具体定位出误码的位置,并将修改好的数据重新传输给所述JBOD单元,完成第二轮校验,并成功将修改后数据传输至所述JBOD单元后,意味着完成了数据交互校验存储过程。通过所述JBOD单元与所述后端SSD之间的数据交互的存储方式,在不影响数据存储速度、所述JBOD单元的空间占用率的情况下,还能够提高存储数据的准确性。
本实施例中,所述通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,具体可以包括:通过所述固态硬盘单元提取所述异常数据段的起始码和终止码;根据接收到所述固态硬盘单元反馈的所述起始码和所述终止码确定出相应的正常数据段;通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段发送至所述固态硬盘单元;通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值。可以理解的是,第二轮校验在第一轮校验的异常数据端传入后端SSD后开始,即首先提取所述异常数据端的起始码与终止码,完成所述起始码与所述终止码的提取之后将所述起始码与所述终止码反馈给PCIE SWITCH单元以及操作系统,操作系统在读取到所述起始码与所述终止码之后,通过PCIE SWITCH重新向后端SSD发送与所述起始码与所述终止码对应的正常数据段,并发送多次,也即通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段多次发送至所述固态硬盘单元,从而能够避免发送过程中出现问题导致固态硬盘单元没有接收到所述正常数据段的情况发生,然后将所述异常数据段与操作系统所发送的正常数据段进行一一比对,从而定位出误码地址,并根据所述正常数据段进行误码调整。
本实施例中,所述通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值之后,还包括:通过所述高速串行计算机扩展总线交换设备接收所述固态硬盘单元反馈的所述误码地址和所述误码值。也就是说,在对比过程中可能出现的问题是用于对比的码出现误码,因此,对比完成后,将异常数据段与正常数据段之间的不同码值与和误码地址再次通过PCIE SWITCH反馈给操作系统,即通过所述高速串行计算机扩展总线交换设备接收所述固态硬盘单元反馈的所述误码地址和所述误码值,操作系统根据所述误码地址对正常数据段进行识别,进而将正确的码值与所述误码地址重新发送给后端SSD。
步骤S13:通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段。
本实施例中,通过所述固态硬盘单元通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段。具体的,根据所述误码地址从所述正常数据段中确定出正确码值;将所述正确码值和所述误码地址发送至所述固态硬盘;通过所述固态硬盘利用所述正确码值对所述异常数据段进行调整得到调整后数据段。可以理解的是,后端SSD接收到正确码值时,利用所述正确码值对所述异常数据段进行调整得到调整后数据段。也就是说,操作系统根据所述误码地址对正常数据段进行识别,进而将正确的码值与所述误码地址重新发送给后端SSD,所述后端SSD利用所述正确码值调整所述异常数据段得到调整后数据段。
步骤S14:利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
本实施例中,通过所述固态硬盘单元完成异常数据段的调整之后,通过所述高速串行计算机扩展总线交换设备将所述调整后数据段发送至所述外置磁盘阵列单元中,并利用所述调整后数据段替换所述外置磁盘阵列单元中相应的所述异常数据段。也即通过所述固态硬盘单元将调整后数据段重新发送给PCIE SWITCH单元,进而通过PCIE链路发送给JBOD单元,利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
可见,本申请实施例中,通过外置磁盘阵列单元进行第一轮校验确定出存在误码的异常数据段,通过固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,这种数据校验方式快捷高效,也即通过外置磁盘阵列单元与直连固态硬盘间的数据交互的存储方式,能够使得数据校验与存储过程同时进行,提高数据存储的效率,可以在不影响数据存储速度,外置磁盘阵列单元空间占用率的情况下,提高存储数据的准确性。
例如,如图3所示,数据传输至JBOD,在JBOD中进行第一轮校验,确定出异常数据段,第一轮校验的异常数据端传入后端SSD中,在后端SSD中进行第二轮校验以定位出误码位置,并修改所述异常数据段,修改完成后,将修改后数据段上传至JBOD中,其中,在后端SSD中进行的第二轮校验如图4所示,后端SSD接收第一轮校验的异常数据段,优先提取所述异常数据端的起始码与终止码,完成所述起始码与所述终止码的提取之后,将所述起始码与所述终止码反馈给PCIE SWITCH单元以及操作系统,操作系统在读取到所述起始码与所述终止码之后,通过PCIE SWITCH重新向后端SSD发送与所述起始码与所述终止码对应的正常数据段,并发送多次,从而能够避免发送过程中出现问题导致固态硬盘单元没有接收到所述正常数据段的情况发生,然后将所述异常数据段与操作系统所发送的正常数据段进行一一比对,从而定位出误码地址和误码值,并将该误码地址和所述误码值反馈至操作系统,所述操作系统根据所述误码地址和误码值对正常数据段进行识别,进而将正确的码值与所述误码地址重新发送给后端SSD,后端SSD根据正确的码值与所述误码地址对所述异常数据段进行调整。也就是说,本申请数据存储校验的技术方案,通过全数字控制算法与系统硬件拓扑相结合,摒弃了传统的数据存储过程中,数据存储与校验两个过程分离的存储方式,硬件上的拓扑为存储留出专门的数据校验空间,使数据的校验与存储过程能够同时进行,提高了数据存储的可靠性。在JBOD中进行第一轮监测算法,在存储直连的SSD中进行第二轮算法以解决误码定位的问题,JBOD与直连SSD盘间数据交互的存储方式,在不影响数据存储速度、JBOD单元空间占用率的情况下,能够提高存储数据的准确性。
参见图5所示,本发明实施例公开了一种具体的数据存储校验方法,相较于上一实施例,本实施例对技术方案作了进一步的说明和优化。
步骤S21:通过外置磁盘阵列单元采用改进后奇偶校验算法对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联。
本实施例中,数据经过中央处理器处理,处理完成后,将处理后的数据通过PCIESWITCH桥片存放至后端级联的JBOD单元中,并在JBOD单元中进行第一轮校验,第一轮校验主要以定位问题为主,即第一轮校验仅用于定位出数据中是否存在误码,所以不存在大规模运算场景,并且在第一轮校验中采用改进后奇偶校验算法,该改进后奇偶校验算法用于诊断处理后数据是否存在误码。
需要说明的是,改进后奇偶校验算法以误码测试数据为基础,通过新增校验码来保证任何误码情况均被诊断出,并且不增加JBOD单元的计算能力,校验完成后,存在问题的异常数据段发送给后端SSD单元进行误码定位。也就是说,原始的奇偶校验能够诊断出一位误码或奇数位误码的情况,这种情况占误码率的80%,但无法诊断出偶数位误码的情况,JBOD单元以普通SAS SSD或HDD(Hard Disk Drive,机械硬盘)为主,无法采用RAID中的海明校验、CRC(Cyclic Redundancy Check,循环冗余校验)等复杂RAID校验算法,本申请中,对奇偶校验算法及整体的数据传输流程进行改进,将复杂的计算留给后端SSD中做专门校验并定位误码位置,在JBOD单元中采用改进的奇偶校验算法在不增加运算难度情况下,主要诊断出问题即可。所述改进后奇偶校验算法基于传输二进制过程中实际误码率情况来设计,采用误码率测试仪测试PCIE链路(即高速串行计算机扩展总线)在实际工作中出现的误码情况,测试过程中根据测试通道数来调整测试次数,对于x1的传输通道进行3次误码测试即可,对于x2的传输通道的测试次数翻倍,依次类推至x16的传输通道,测试完成后选择测试结果中误码率最高的结果作为奇偶校验改进的基础。如图6所示,根据误码率,在原本一位奇偶校验位的基础上增加最前面的校验位,针对奇偶校验不能校验偶数误码的问题,原校验位是对二进制序列中1的个数奇偶校验,而新增位是对二进制序列中出现两个1的个数的奇偶校验,再新增一位是对二进制序列中出现4个1的个数的奇偶校验,这样依次类推,即新增N位是对二进制序列中2的N次方个1的个数的奇偶校验结果,所述N位的取值需要根据误码测试仪的测试结果来确定,N位的个数需大于等于测试的二进制数据中的误码个数,一般取大于误码个数的整数,例如,发送方传输了100万位,即10的6次方位比特数据,监测出接收方有243位比特错误,此时对于1万位比特数据会有2.43位的误码个数,误码率为万分之2.43,此时在一万位数据之前,设置N的取值为3,即新增3位校验码,即可保证误码情况均被覆盖。改进后奇偶校验算法以误码测试数据为基础,通过新增校验码来保证任何误码情况均被诊断出,并且不增加JBOD单元计算能力,诊断完成后存在问题的异常数据段发送给后端SSD进行误码位置的定位。
步骤S22:通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连。
步骤S23:通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段。
步骤S24:利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
关于上述步骤S22至步骤S24的具体内容可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例中,通过外置磁盘阵列单元进行第一轮校验确定出存在误码的异常数据段,通过固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,这种数据校验方式快捷高效,也即通过外置磁盘阵列单元与直连固态硬盘间的数据交互的存储方式,能够使得数据校验与存储过程同时进行,提高数据存储的效率,可以在不影响数据存储速度,外置磁盘阵列单元空间占用率的情况下,提高存储数据的准确性。
相应的,本申请实施例还公开了一种数据存储校验装置,参见图7所示,该装置包括:
第一校验模块11,用于通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联;
第二校验模块12,用于通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连;
数据段调整模块13,用于通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段;
数据段替换模块14,用于利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
由上可见,本申请实施例中,通过外置磁盘阵列单元进行第一轮校验确定出存在误码的异常数据段,通过固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,这种数据校验方式快捷高效,也即通过外置磁盘阵列单元与直连固态硬盘间的数据交互的存储方式,能够使得数据校验与存储过程同时进行,提高数据存储的效率,可以在不影响数据存储速度,外置磁盘阵列单元空间占用率的情况下,提高存储数据的准确性。
在一些具体的实施例中,所述第一校验模块11,具体可以包括:
异常校验模块,用于通过外置磁盘阵列单元采用改进后奇偶校验算法对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段。
在一些具体的实施例中,所述第二校验模块12,具体可以包括:
提取模块,用于通过所述固态硬盘单元提取所述异常数据段的起始码和终止码;
正常数据段确定模块,用于根据接收到所述固态硬盘单元反馈的所述起始码和所述终止码确定出相应的正常数据段;
第一发送模块,用于通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段发送至所述固态硬盘单元;
对比模块,用于通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值。
在一些具体的实施例中,所述第一发送模块,具体可以包括:
发送单元,用于通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段多次发送至所述固态硬盘单元。
在一些具体的实施例中,所述数据存储校验装置,具体可以包括:
接收模块,用于通过所述高速串行计算机扩展总线交换设备接收所述固态硬盘单元反馈的所述误码地址和所述误码值。
在一些具体的实施例中,所述数据段调整模块13,具体可以包括:
正确码值确定单元,根据所述误码地址从所述正常数据段中确定出正确码值;
码值发送单元,用于将所述正确码值和所述误码地址发送至所述固态硬盘;
数据段调整单元,用于通过所述固态硬盘利用所述正确码值对所述异常数据段进行调整得到调整后数据段。
在一些具体的实施例中,所述数据段替换模块14,具体可以包括:
第二发送模块,用于通过所述高速串行计算机扩展总线交换设备将所述调整后数据段发送至所述外置磁盘阵列单元中,并利用所述调整后数据段替换所述外置磁盘阵列单元中相应的所述异常数据段。
进一步的,本申请实施例还提供了一种电子设备。图8是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图8为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的数据存储校验方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的数据存储校验方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的数据存储校验方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种数据存储校验方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种数据存储校验方法,其特征在于,包括:
通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联;
通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连;
通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段;
利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
2.根据权利要求1所述的数据存储校验方法,其特征在于,所述通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段,包括:
通过外置磁盘阵列单元采用改进后奇偶校验算法对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段。
3.根据权利要求1所述的数据存储校验方法,其特征在于,所述通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址,包括:
通过所述固态硬盘单元提取所述异常数据段的起始码和终止码;
根据接收到所述固态硬盘单元反馈的所述起始码和所述终止码确定出相应的正常数据段;
通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段发送至所述固态硬盘单元;
通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值。
4.根据权利要求3所述的数据存储校验方法,其特征在于,所述通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段发送至所述固态硬盘单元,包括:
通过作为传输介质的高速串行计算机扩展总线交换设备将所述正常数据段多次发送至所述固态硬盘单元。
5.根据权利要求3所述的数据存储校验方法,其特征在于,所述通过所述固态硬盘单元将所述异常数据段与所述正常数据段进行一一对比以定位出所述异常数据段中的误码地址和误码值之后,还包括:
通过所述高速串行计算机扩展总线交换设备接收所述固态硬盘单元反馈的所述误码地址和所述误码值。
6.根据权利要求1至5任一项所述的数据存储校验方法,其特征在于,所述通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段,包括:
根据所述误码地址从所述正常数据段中确定出正确码值;
将所述正确码值和所述误码地址发送至所述固态硬盘;
通过所述固态硬盘利用所述正确码值对所述异常数据段进行调整得到调整后数据段。
7.根据权利要求6所述的数据存储校验方法,其特征在于,所述利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段,包括:
通过所述高速串行计算机扩展总线交换设备将所述调整后数据段发送至所述外置磁盘阵列单元中,并利用所述调整后数据段替换所述外置磁盘阵列单元中相应的所述异常数据段。
8.一种数据存储校验装置,其特征在于,包括:
第一校验模块,用于通过外置磁盘阵列单元对中央处理器处理后的数据进行第一轮校验以确定出存在误码的异常数据段;所述外置磁盘阵列单元通过SAS卡与所述中央处理器级联;
第二校验模块,用于通过固态硬盘单元接收所述外置磁盘阵列单元发送的所述异常数据段,并通过所述固态硬盘单元对所述异常数据段进行第二轮校验以定位出所述异常数据段中的误码地址;所述固态硬盘单元通过独立磁盘冗余阵列单元与所述中央处理器直连;
数据段调整模块,用于通过所述固态硬盘单元基于所述误码地址对所述异常数据段进行调整得到调整后数据段;
数据段替换模块,用于利用所述调整后数据段替换所述外置磁盘阵列单元中的所述异常数据段。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的数据存储校验方法的步骤。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的数据存储校验方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310165981.4A CN116027986A (zh) | 2023-02-24 | 2023-02-24 | 一种数据存储校验方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310165981.4A CN116027986A (zh) | 2023-02-24 | 2023-02-24 | 一种数据存储校验方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116027986A true CN116027986A (zh) | 2023-04-28 |
Family
ID=86077732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310165981.4A Pending CN116027986A (zh) | 2023-02-24 | 2023-02-24 | 一种数据存储校验方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116027986A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069406A (zh) * | 2024-04-16 | 2024-05-24 | 苏州元脑智能科技有限公司 | 一种存储数据校验系统及方法 |
-
2023
- 2023-02-24 CN CN202310165981.4A patent/CN116027986A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069406A (zh) * | 2024-04-16 | 2024-05-24 | 苏州元脑智能科技有限公司 | 一种存储数据校验系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108351819B (zh) | 动态调整存储设备的错误校正作用等级 | |
US8020074B2 (en) | Method for auto-correction of errors in a RAID memory system | |
CN101110047B (zh) | 存储器重放机制 | |
US9569306B1 (en) | Recovery of multi-page failures in non-volatile memory system | |
KR101306645B1 (ko) | 시행착오에 의한 에러 보정 디코딩 | |
US20130124931A1 (en) | Transmission error detector for flash memory controller | |
CN102084343A (zh) | 一种用于确保数据存储过程中数据有效性的装置、系统和方法 | |
US11430540B2 (en) | Defective memory unit screening in a memory system | |
US11500707B2 (en) | Controller, memory controller, storage device, and method of operating the controller | |
CN103218271B (zh) | 一种数据纠错方法及装置 | |
CN113489570B (zh) | 一种PCIe链路的数据传输方法、装置及设备 | |
US10719392B1 (en) | Selective sampling for data recovery | |
CN110058957A (zh) | 一种固态硬盘纠错能力提升方法与固态硬盘 | |
CN116027986A (zh) | 一种数据存储校验方法、装置、设备及存储介质 | |
WO2017075130A1 (en) | Ensuring crash-safe forward progress of a system configuration update | |
US9467170B2 (en) | NAND flash memory systems with efficient soft information interface | |
CN105897689B (zh) | 嵌入式系统及其方法 | |
CN113168882B (zh) | 一种编码方法、译码方法以及存储控制器 | |
CN115129509B (zh) | 一种数据传输方法、装置、介质 | |
US20160080111A1 (en) | Receiver, transmitter and data transmission system | |
US20100325519A1 (en) | CRC For Error Correction | |
CN115700549A (zh) | 模型训练方法、故障确定方法、电子设备和程序产品 | |
US11876629B1 (en) | Data transmission method, device, electronic equipment, and storage medium | |
CN111625200B (zh) | 一种非易失性存储器的读取方法、装置及系统 | |
CN114880164B (zh) | 一种管理存储页的方法和装置 |
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 |