一种硬盘上线检测方法与装置

文档序号:70731 发布日期:2021-10-01 浏览:31次 >En<

阅读说明:本技术 一种硬盘上线检测方法与装置 (Hard disk online detection method and device ) 是由 寇耀飞 王志豪 周明伟 江文龙 罗心 于 2021-07-28 设计创作,主要内容包括:一种硬盘上线检测方法与装置,所述方法包括:数据节点获取待上线硬盘中的校验信息;所述校验信息包括集群信息和/或集群信息标识;所述集群信息标识用于标记所述集群信息,所述集群信息包括所述数据节点当前所处集群的信息;所述数据节点根据所述校验信息对所述待上线硬盘进行校验;如果校验通过,硬盘上线。通过这种方式,可以保证存储集群的数据安全,有效提升了存储系统的可用性和可靠性。(A hard disk online detection method and device are provided, the method comprises the following steps: the data node acquires check information in a hard disk to be online; the verification information comprises cluster information and/or a cluster information identifier; the cluster information identifier is used for marking the cluster information, and the cluster information comprises information of a cluster where the data node is located currently; the data node verifies the hard disk to be online according to the verification information; and if the verification is passed, the hard disk is on line. By the method, the data security of the storage cluster can be ensured, and the availability and reliability of the storage system are effectively improved.)

一种硬盘上线检测方法与装置

技术领域

本申请涉及分布式存储集群系统领域,尤其涉及一种硬盘上线检测方法与装置。

背景技术

在分布式存储集群中,每台数据节点服务器及其硬盘在首次上线时,都会被元数据服务器分配本集群独有的标记信息,从而确保硬盘中的数据属于当前的存储集群,而不属于当前集群的硬盘不会被上线,确保硬盘数据安全的同时,还可以支持硬盘在同一集群的内部迁移。

在实际使用过程中,随着业务规模的增长,存储集群管理的数据节点、以及节点内部的硬盘数量非常多,如果硬盘中的集群标识丢失会导致硬盘上线失败;而且如果硬盘无法被分配集群标识(比如硬盘无法使用文件系统而导致集群标识无法持久化到硬盘上)时,也无法正常上线。

发明内容

本申请提供一种硬盘上线检测方法与装置,用于提升存储系统的可用性和可靠性。

第一方面,提供一种硬盘上线检测方法,包括:

数据节点获取待上线硬盘的校验信息;其中,所述校验信息包括集群信息和/或集群信息标识;所述集群信息标识用于标记所述集群信息,所述集群信息包括所述数据节点当前所处集群的信息;

所述数据节点根据所述校验信息对所述待上线硬盘进行校验;

如果对所述待上线硬盘校验通过,上线所述硬盘。

在一种可能的设计中,在数据节点获取待上线硬盘中的校验信息之前,还包括:在所述待上线硬盘中第一区域内存储所述集群信息;

在所述待上线硬盘中第二区域内存储第一信息;所述第一信息包括所述待上线硬盘的介质类型、管理方式以及所述集群信息标识;所述介质类型用于指示所述硬盘的类型;所述管理方式用于指示所述待上线硬盘支持的管理模式;其中,当所述第一区域内所述集群信息更新时,所述第二区域内所述集群信息标识对应更新。

在一种可能的设计中,所述硬盘中包括传统磁记录CMR区域和叠瓦式磁性记录SMR区域;所述数据节点根据所述校验信息对所述待上线硬盘,包括:

对所述SMR区域内的集群信息与所述SMR区域中集群信息标识进行校验;和/或,

对所述CMR区域内的集群信息与所述CMR区域中集群信息标识进行校验。

在一种可能的设计中,所述硬盘中包括CMR区域和SMR区域;所述数据节点根据所述校验信息对所述待上线硬盘,包括:

将所述SMR区域内的集群信息和/或所述集群信息标识,与所述CMR区域内的集群信息和/或所述集群信息标识进行比较。

在一种可能的设计中,所述硬盘中包括SMR区域和CMR区域;所述数据节点根据所述校验信息对所述待上线硬盘,包括:

将所述CMR区域内的集群信息和/或所述集群信息标识,与所述数据节点内的集群信息和/或所述集群信息标识对比;和/或,

将所述SMR区域内的集群信息和/或所述集群信息标识,与所述数据节点内的集群信息和/或所述集群信息标识对比。

在一种可能的设计中,所述数据节点根据所述校验信息对所述待上线硬盘进行校验,包括:

通过所述校验信息,验证所述硬盘属于所述数据节点。

在一种可能的设计中,所述方法还包括:

如果对所述待上线硬盘校验不通过,对所述硬盘进行修复;

上线修复后的硬盘。

在一种可能的设计中,对所述硬盘进行修复,包括:

获取所述数据节点内的集群信息和/或集群信息标识;

根据所述数据节点内的集群信息和/或集群信息标识,更新所述硬盘。

在一种可能的设计中,所述硬盘中包括CMR区域和SMR区域;

所述CMR区域中的校验信息为主校验信息,所述SMR区域中的校验信息为备校验信息,对所述硬盘进行修复,包括:

如果所述CMR区域损坏,在所述SMR区域申请所述集群信息的存储地址,以使所述SMR区域中包括两个存储地址,分别用于存储所述主校验信息和所述备校验信息。

第二方面,提供一种硬盘上线检测装置,包括:

扫描单元,用于获取待上线硬盘中的校验信息;其中,所述校验信息包括集群信息和/或集群信息标识;所述集群信息标识用于标记所述集群信息,所述集群信息包括所述数据节点当前所处集群的信息;

校验单元,根据所述校验信息对所述待上线硬盘进行校验;

处理单元,用于在校验通过时,上线所述硬盘。

在一种可能的实施方案中,所述处理单元还用于:

在所述待上线硬盘中第一区域内存储所述集群信息;

在所述待上线硬盘中第二区域内存储第一信息;所述第一信息包括所述待上线硬盘的介质类型、管理方式以及所述集群信息标识;所述介质类型用于指示所述硬盘的类型;所述管理方式用于指示所述待上线硬盘支持的管理模式;其中,当所述第一区域内所述集群信息更新时,所述第二区域内所述集群信息标识对应更新。

在一种可能的实施方案中,所述硬盘中包括CMR区域和SMR区域;所述校验单元具体用于:

对所述SMR区域内的集群信息与所述SMR区域中集群信息标识进行校验;和/或,

对所述CMR区域内的集群信息与所述CMR区域中集群信息标识进行校验。

在一种可能的实施方案中,所述硬盘中包括CMR区域和SMR区域;所述校验单元具体用于:

将所述SMR区域内的集群信息和/或集群信息标识,与所述CMR区域内的集群信息和/或所述集群信息标识进行比较。

在一种可能的实施方案中,所述硬盘中包括CMR区域和SMR区域;所述校验单元具体用于:

将所述CMR区域内的集群信息和/或所述集群信息标识,与所述数据节点内的集群信息和/或所述集群信息标识对比;和/或,

将所述SMR区域内的集群信息和/或所述集群信息标识,与所述数据节点内的集群信息和/或所述集群信息标识对比。

在一种可能的实施方案中,所述校验单元具体用于:

通过所述校验信息,验证所述硬盘属于所述数据节点。

在一种可能的实施方案中,所述处理单元具体用于:

如果对所述待上线硬盘校验不通过,对所述硬盘进行修复;

上线修复后的硬盘。

在一种可能的实施方案中,所述处理单元具体用于:

获取所述数据节点内的集群信息和/或集群信息标识;

根据所述数据节点内的集群信息和/或集群信息标识,更新所述硬盘。

在一种可能的实施方案中,所述硬盘中包括CMR区域和SMR区域;所述CMR区域中的校验信息为主校验信息,所述SMR区域中的校验信息为备校验信息,所述修复装置具体用于:

如果所述CMR区域损坏,在所述SMR区域申请所述集群信息的存储地址,以使所述SMR区域中包括两个存储地址,分别用于存储所述主校验信息和所述备校验信息。

第三方面,提供一种电子设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行上述第一方面所提供的方法包括的步骤。

第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时,使所述计算机执行上述第一方面所提供的方法。

第五方面,提供一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行上述第一方面提供的方法步骤。

在本申请实施例中,数据节点获取待上线硬盘中的校验信息;所述校验信息包括集群信息和/或集群信息标识;所述集群信息标识用于标记所述集群信息,所述集群信息包括所述数据节点当前所处集群的信息;所述数据节点根据所述校验信息对所述待上线硬盘进行校验;如果校验通过,硬盘上线。通过这种方式,上线的硬盘是安全的,可以保证存储集群的数据安全,有效提升了存储系统的可用性和可靠性。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。

图1为本申请实施例提供的系统结构框架;

图2为本申请实施例提供的流程图;

图3为本申请实施例提供的SMR盘在节点中的上线检测流程图;

图4为本申请实施例提供的SMR盘集群信息损坏时的处理流程图;

图5为本申请实施例提供的一种SMR硬盘上线检测装置构成图;

图6为本申请实施例提供的一种电子设备示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请中的“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本申请实施例不做限制。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。

下面结合说明书附图介绍本申请实施例提供的技术方案。

请参见图1所示,图1为本申请提供的系统的结构框架示意图。所述系统包括:元数据服务器、多个数据节点、多个硬盘。其中,所述元数据服务器可以向每台数据节点发送集群信息,数据节点可以将集群信息存储在对应的硬盘中,比如,数据节点1将集群信息存储在硬盘1中,数据节点2将集群信息存储在硬盘2中等等。

图2为本申请实施例提供的硬盘上线检测方法的流程示意图,该方法流程可以应用到图1所示的系统中。图2所示方法的流程图描述如下:

步骤201:数据节点获取待上线硬盘中的校验信息。

一种可能的实现方式为,所述数据节点系统启动完成后,会扫描与该数据节点连接的所有可用硬盘,读取硬盘中的校验信息;其中,所述校验信息包括集群信息和/或集群信息标记,所述集群信息标记用于标记集群信息,比如,所述集群信息标记可以是用于存储集群信息的存储地址。如果校验信息存储在硬盘中的指定扇区内,则从所述指定扇区内获取所述硬盘中的校验信息。示例性的,集群信息和集群信息标记可以存储在硬盘中的相同区域或不同区域内。

可选的,在步骤201之前,还可以包括:在所述待上线硬盘中第一区域内存储所述集群信息;在所述待上线硬盘中第二区域内存储第一信息(可以称为超级块信息);所述第一信息包括所述待上线硬盘的介质类型、管理方式以及所述集群信息标识。

其中,所述介质类型用于指示所述硬盘的类型。所述介质类型可以包括:机械盘,比如传统磁记录(Conventional Magneting Recording,CMR)硬盘、叠瓦式磁性记录(Shingled Magneting Recording,SMR)硬盘等;或者是固态盘SSD等中的至少一种。

所述管理方式用于指示所述待上线硬盘支持的管理模式;可以包括:文件系统,比如第三代扩展文件系统ext3,或者一种高性能的日志文件系统xfs等;或者是无文件系统管理方式,或者是SMR硬盘下的混合管理方式等中的至少一种。

所述集群信息标识可以是用于存储集群信息的存储地址,可以包括:所述硬盘中集群信息的绝对路径和/或相对路径。如果集群信息存储在硬盘中的指定扇区内,那么所述位置是指集群信息在指定扇区内绝对路径和/或相对路径。当所述第一区域内所述集群信息更新时,所述第二区域内所述集群信息标识对应更新位于硬盘中的位置,

本申请实施例中的待上线硬盘可以时采用混合模式的SMR硬盘,所述SMR硬盘被划分为CMR区域和SMR区域。为了方便描述,下文中将所述CMR区域内的集群信息及CMR区域内所述集群信息的存储地址作为主校验信息;将所述SMR区域内的集群信息及SMR区域内所述集群信息的存储地址作为备份校验信息。

其中,所述CMR分区被用作单盘管理区域,所述单盘管理就是所述CMR区域用作管理当前硬盘的区域(包括但不仅限于在硬盘上保存集群信息,本申请中不做过多解释),从所述硬盘的起始位置开始,为其配置了一部分CMR介质的存储容量;本申请中将所述CMR分区格式化成通用文件系统,以文件的形式保存集群信息。

其中,所述SMR分区被用作数据管理区域,所述数据管理是利用计算机硬件和软件技术对数据进行有效的收集、存储、处理和应用的过程。数据管理的目的在于充分有效地发挥数据的作用,实现数据的有效管理;一般情况下,SMR硬盘中的SMR介质的存储空间原本就是用来存储和管理用户数据的,且所述SMR分区并没有文件的概念,而是一些二进制的数据,(比如0101…);本申请中在所述SMR盘的SMR区域中预留了一段用来保存所述硬盘携带的集群信息的空间,所述SMR分区中存储的集群信息被用作所述CMR区域集群信息文件的备份。

可选的,所述CMR分区中存储的集群信息及所述集群信息的存储地址与所述SMR分区中存储的集群信息及所述集群信息的存储地址理论上是一致的。

本申请使用混合模式管理SMR盘的目的是:在通用文件系统中,以文件形式存在的集群信息在不同操作系统中具有通用性和可视性;示例性的,硬盘中的集群标识信息文件在Linux操作系统生成后,可以将该文件导出到Windows操作系统中查看和修改,再将其更新到硬盘中后,数据节点仍能解析该文件,提升了存储集群的可用性。

可选的,如果所述待上线的SMR硬盘是之前用过的,所述数据节点无需对其进行初始化,只需要对所述SMR硬盘进行检验所述集群标识信息即可;当所述SMR硬盘是新盘,所述数据节点可以对所述SMR硬盘执行初始化动作。比如,将所述SMR硬盘分区、格式化;将写有集群信息的超级块写入硬盘;将所述集群信息更新到CMR区域的集群标识文件,并被分到所述SMR硬盘的所述SMR分区等等。

步骤202:根据所述校验信息对所述待上线硬盘进行校验。

其中,校验信息包括:集群信息和/或所述集群信息在所述硬盘中的存储地址。所述硬盘中包括CMR区域和SMR区域,所述CMR区域内的校验信息包括集群信息和所述集群信息的存储地址,所述SMR区域内的校验信息包括集群信息和所述集群信息的存储地址。

第一种校验方式为,对所述SMR区域内的集群信息与所述SMR区域中集群信息的存储地址进行校验;和/或,对所述CMR区域内的集群信息与所述CMR区域中集群信息的存储地址进行校验。

示例性的,将所述SMR区域内的集群信息与所述SMR区域内的所述集群信息的存储地址进行比对;比如,读取所述存储地址中的集群信息,将读取出的集群信息与SMR区域内的集群信息比对,如果一致,则验证通过,如果不一致,则严重不通过。

第二种校验方式为,将所述SMR区域内的集群信息和/或所述存储地址,与所述CMR区域内的集群信息和/或所述存储地址进行比较。可能存在的情况包括:将所述SMR区域内的集群信息,与所述CMR区域内的所述集群信息进行比较;或者,将所述SMR区域内的所述集群信息的存储地址与所述CMR区域内的所述集群信息的存储地址进行比较;或者,将所述SMR区域内的所述集群信息与所述CMR区域内的所述集群信息的存储地址进行比较;或者,将所述SMR区域内的所述集群信息的存储地址与所述CMR区域内的所述集群信息进行比较。

第二种校验方式与第一种校验方式的区别在于,第一种校验方式是同一区域内的信息校验,第二种校验方式是不同区域之间的信息校验。

第三种校验方式,将所述CMR区域内的集群信息和/或所述存储地址,与所述数据节点内的集群信息和/或所述存储地址对比;和/或,将所述SMR区域内的集群信息和/或所述存储地址,与所述数据节点内的集群信息和/或所述存储地址对比。

第三种校验方式与前面两种校验方式的区别在于,第三种校验方式是硬盘上不同区域分别与数据节点之间的信息校验。

示例性的,优先以所述CMR区域内的集群信息和所述集群信息的存储地址为准,与所述数据节点中的集群信息和所述集群信息的存储地址进行校验,如果不匹配,则用所述SMR区域内的集群信息和所述集群信息的存储地址与所述数据节点中的集群信息和所述集群信息的存储地址进行校验;或者,同时将所述CMR区域内的集群信息及所述集群信息的存储地址和所述SMR区域内的集群信息及所述集群信息的存储地址,分别与所述数据节点中的集群信息及所述集群信息的存储地址进行校验。

第四种校验方式,通过所述校验信息验证所述硬盘属于所述数据节点。比如可以使用前面的第三种校验方式,如果校验通过,证明所述硬盘属于所述数据节点。或者,还可以通过其它校验方式验证所述硬盘是否属于所述数据节点。比如,在所述硬盘中有一个节点标识,和数据节点中的节点标识比对,比对通过,证明所述硬盘属于所述数据节点。或者,元数据服务器将元数据服务器信息传送到所述数据节点中,其中,所述元数据服务器信息包括:所述元数据服务器中的集群信息及所述集群信息的存储地址。将所述硬盘中的集群信息及所述集群信息的存储地址,与所述数据节点中的元数据服务器信息进行比对;当所述校验信息与所述元数据服务器信息校验成功时,可以确认所述硬盘中的数据是属于当前所述集群的;在确认所述硬盘中的数据属于当前所述集群后,进一步比对所述硬盘与所述数据节点中的校验信息,校验通过时,可以确定所述硬盘属于当前节点;硬盘上线。

步骤203:对所述待上线硬盘校验通过,上线所述硬盘。

可选的,如果步骤202校验不通过,还可以进行硬盘修复。

第一种修复方式为,获取所述数据节点内的集群信息和/或集群信息标识;根据所述数据节点内的集群信息和/或集群信息标识,更新所述硬盘。也就是说,如果验证不通过,以数据节点中的集群信息为准。

第一种情况,当所述SMR区域内和所述CMR区域内的集群信息与所述集群信息的存储地址数据不匹配,则认定为所述硬盘中保存的所述集群信息校验失效,且所述硬盘内的集群信息将不会再继续参与集群信息的比对和校验;此时所述硬盘会以所述数据节点中的集群信息为准,对所述硬盘中的节点数据进行更新,在更新所述硬盘相应的集群信息时,同步更新所述集群信息在硬盘内的存储地址,即更新所述硬盘。

第二种情况,所述SMR硬盘中一共携带两份集群信息;其中,一份是保存在所述CMR区域内的集群信息文件,另一份是以二进制形式保存在SMR区域内的集群信息数据;当所述SMR区域内的集群信息与所述集群信息的存储地址,或者所述CMR区域内的集群信息与所述集群信息的存储地址,二者中有且只有一个不匹配时,根据匹配的区域内的集群信息及其所述集群信息的存储地址,更新所述不匹配的区域内的集群信息及其所述集群信息的存储地址,同步更新数据后,两份数据互为备份。

第三种情况,当所述SMR区域内的数据与CMR区域内的数据不一致时,以CMR区域内的集群信息为准,与所述数据节点中的集群信息进行校验,如果匹配,则根据CMR区域内正确的集群信息更新所述SMR区域内的集群信息和所述集群信息的存储地址;如果不匹配,则根据所述数据节点中的集群信息,对所述硬盘中的SMR区域与CMR区域内的集群信息和所述集群信息的存储地址进行更新。

第二种修复方式为,如果所述CMR损坏,在所述SMR区域再次申请所述集群信息的存储地址,以使所述SMR区域中包括两个存储地址,分别用于存储所述主校验信息和所述备校验信息。与第一种修复方式的区别在于,第一种修复方式是直接对硬盘进行更新和修复,而第二种修复方式是在所述硬盘的所述SMR区域中划分两个区域存储集群信息。

第一种情况,当所述CMR区域的校验数据与所述数据节点中的校验数据不匹配,而所述SMR区域的校验数据与所述数据节点中的检验数据匹配时,则认定所述CMR区域的通用文件系统损坏,此时很有可能导致整个SMR硬盘中的CMR区域不可用;由于所述SMR硬盘的容量一般都很大,所以在这种情况下,所述数据节点通常可以在所述SMR区域再次申请一段可用的存储空间,所述空间用于保存新的集群信息,所述的新的集群信息被再次写入所述硬盘的所述超级块中,为保证所述硬盘中始终有两份有效的集群信息;此时所述硬盘的所述SMR区域中拥有的两份集群信息互为备份,完成硬盘上线。

第二种情况,当所述SMR区域内的校验数据和CMR区域内的校验数据与所述数据节点中的校验数据都不匹配时,会出现读取和/或更新CMR区域和/或SMR区域的集群信息及所述集群信息的存储地址失败的情况,此时认定保存所述集群信息的存储介质损坏。这种情况下,需要在所述硬盘中寻找其他的有效扇区,并将所述集群信息及所述集群信息的存储地址更换到所述新的有效扇区内,在更新完成后,将新保存的所述集群信息的存储地址保存到所述SMR硬盘中。

与第一种情况的区别在于:第一种情况中所述CMR区域和SMR区域至少有一个区域内的校验信息与所述数据节点内的校验信息是匹配的,而第二种情况中,所述区域内的校验信息与所述数据节点之中的校验数据都不匹配。

第三种修复方式为,当所述硬盘中的校验信息与所述元数据服务器信息比对不一致时,认定所述被比对的硬盘并不属于当前所述集群,所述硬盘内的集群信息及所述集群信息的存储地址数据不可用,需要进行如上述第一种修复方式进行修复操作;重新执行硬盘上线动作。当所述硬盘中的校验信息与所述元数据服务器信息比对结果一致,但所述硬盘与所述数据节点中的校验信息校验不成功时,所述硬盘并不属于当前所述节点;本申请中认定所述硬盘是从所述集群中的其他节点中迁移过来的,此时所述硬盘数据仍然可以被继续使用,但需要将从其他节点中迁移过来的集群信息及所述集群信息的存储地址重新上报给所述元数据服务器,以完成数据迁移的动作;在完成完整的集群信息及所述集群信息的存储地址的校验后,要同步更新所述硬盘中的SMR区域和CMR区域内的集群信息及所属集群信息的存储地址,确保所述SMR区域和所述CMR区域内的集群信息及所述集群信息的存储地址与所属数据节点中的集群信息和所述集群信息的存储地址一致。

可选的,每份集群信息都对应唯一一份存储地址,以确保所属待校验的集群信息的有效性和完整性,因此在更新待校验的集群信息的同时会同步更新所述集群信息的存储地址;示例性的,如步骤201中所述,无论待上线的SMR盘是新盘还是之前被用过的旧盘,当所述集群信息及所述集群信息的存储地址被校验更新后,所述硬盘中的集群信息会发生变化,此时需要同步更新所述SMR硬盘中的CMR区域和SMR区域内的集群信息及所述集群信息的存储地址,为确保所述硬盘中的集群信息及所述集群信息的存储地址、当前元数据服务器及所述数据节点中的集群信息及所述集群信息的存储地址都是一致的,目的是为了多方便下一次所述硬盘在进行热插拔时的信息校验。

本申请实施例中所述硬盘中携带的集群信息始终有两份,即所述CMR区域和所述SMR区域各有一份集群信息,可能的实施场景有:

第一种场景为,所述SMR硬盘的CMR区域被格式化为通用文件系统,所述集群信息以文件的形式保存;所述SMR硬盘的SMR区域以二进制的形式保存所述集群信息;所述两份集群信息互为备份。

第二种场景为,所述SMR硬盘的CMR区域不需要被格式化为通用文件系统,与所述SMR区域中的集群信息一起,都采用二进制的形式保存所述集群信息,上述两份数据仍互为备份。

第三种场景为,在第一种场景的前提下,所述CMR区域内的通用文件系统损坏,在所述SMR区域中在获取一段容量,所述容量用于保存集群信息,并继承原来所述CMR区域中的主集群信息的身份,而原来所述SMR区域中的另一份集群信息则作为备份的集群信息保持不变,上述两份数据仍互为备份。

本申请通过对所述SMR硬盘中集群信息损坏时的处理,进一步保证了所述待上线硬盘中只要存在可用的扇区就可以提供给所述硬盘一般可以保存所述集群信息的存储地址,同时可以提供给所述集群信息管理和校验的功能,进一步保证了存储所述集群信息的数据安全,提升了系统的可用性和安全性。

图3为本申请实施例提供的一种示例。如图3所示,所述流程包括:

S301,扫描并解析硬盘超级块。其中,所述超级块的介绍请参见前文。

S302,获取超级块是否存在SMR盘的主/备校验信息。其中,SMR盘的介绍请参见前文,主校验信息包括:所述SMR盘的CMR区域内的集群信息和所述集群信息的存储地址;备校验信息包括:所述SMR盘的SMR区域内的集群信息和所述集群信息的存储地址;

S303,主校验信息与数据节点的校验信息是否匹配;其中,当S302中的输出为是时,继续步骤S303,否则进入步骤S305;

S305,硬盘上线;

S304,备校验信息与数据节点的校验信息是否匹配;其中,当S303的输出为否时,即进入步骤S304,否则进入步骤S306;

S306,更新硬盘中的主备校验信息;当S303输出为是,或者,S304输出为是时,进入步骤S306;

S307,根据数据节点中的校验信息生成需要持久化到硬盘的校验信息,并将其写入SMR盘的主备校验信息区域;其中,当S305完成后进入步骤S306;

S308,硬盘上线成功;其中,当S301-S307步骤均完成操作后,进行S308.

S309,硬盘上线失败;当S304输出为否时,进行步骤S309。

图4为本申请实施例提供的另一种示例。如图4所示,所述流程包括:

S401,读取SMR盘的主集群信息是否成功;其中,SMR盘的介绍请参见前文,主集群信息是所述SMR盘中CMR区域内的集群信息;

S402,SMR盘的主集群信息与其存储地址是否匹配;其中,主集群信息是所述SMR盘中CMR区域内的集群信息;当S401的输出为是时,进行步骤S402,否则进行S403;

S403,读取SMR盘的备集群信息是否成功;其中,备集群信息是所述SMR盘中SMR区域内的集群信息;当S401输出为否,或者S402输出为否时,继续步骤S403;

S404,SMR盘的备集群信息与其存储地址是否匹配;当S403输出为是时进入步骤S404,否则进行步骤S405;

S405,硬盘中的集群信息彻底损坏;当S404输出为否,或者S403输出为否时,进入步骤S405;

S406,硬盘上线失败;当S401-S405的动作均完成,进入步骤S406;

S407,作为有效的校验信息;其中,所述校验信息时所述集群信息及器存储地址;当S402输出为是,或者S404输出为是时,进入步骤S407;

S408,是否需要修复主、备集群信息;当S401-S404、S407的动作均完成时,进入步骤S408;

S409,更新集群信息后,将其新地址更新到硬盘超级块中;其中,超级块的介绍请参见前文;当S408输出为是时,进入操作S409,否则进行操作S410;

S410,硬盘上线成功;当S406-S410的动作均被完成,进入操作S410。

基于同一发明构思,本申请实施例提供了一种硬盘上线检测装置。该硬盘上线检测装置可以是硬件结构、软件模块、或硬件结构加软件模块。该硬盘上线检测装置可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图5所示,该硬盘上线检测装置包括扫描单元501、校验单元502和处理单元503。其中:扫描单元501,用于数据节点扫描待上线的硬盘,获取所述硬盘中的校验信息;其中,所述校验信息包括集群信息和/或集群信息标识;

校验单元502,根据所述校验信息对所述待上线硬盘进行校验;

处理单元503,用于在对待上线硬盘校验通过时,上线所述硬盘。

一种可能的实施方式,所述待上线硬盘包括SMR区域和CMR区域;所述校验单元502具体用于:

对所述SMR区域内的集群信息与所述SMR区域中集群信息标识进行校验;和/或,

对所述CMR区域内的集群信息与所述CMR区域中集群信息标识进行校验。

一种可能的实施方式,所述待上线硬盘包括SMR区域和CMR区域;所述校验单元502具体用于:

将所述SMR区域内的集群信息和/或所述集群信息标识,与所述CMR区域内的集群信息和/或所述集群信息标识进行比较。

一种可能的实施方式,所述待上线硬盘包括SMR区域和CMR区域;所述校验单元502具体用于:

将所述CMR区域内的集群信息和/或所述集群信息标识,与所述数据节点内的集群信息和/或所述集群信息标识对比;和/或,

将所述SMR区域内的集群信息和/或所述集群信息标识,与所述数据节点内的集群信息和/或所述集群信息标识对比。

一种可能的实施方式,所述待上线硬盘包括SMR区域和CMR区域;所述校验单元502具体用于:

通过所述校验信息验证所述硬盘属于所述数据节点。

一种可能的实施方式,所述处理单元503具体用于:

如果校验不通过,对所述硬盘进行修复;

上线修复后的硬盘。

一种可能的实施方式,所述处理单元503具体用于:

获取所述数据节点内的集群信息和/或集群信息标识;

根据所述数据节点内的集群信息和/或集群信息标识,更新所述硬盘。

一种可能的实施方式,所述待上线硬盘包括SMR区域和CMR区域;所述CMR区域中的校验信息为主校验信息,所述SMR区域中的校验信息为备校验信息,所述修复装置具体用于:

如果所述CMR损坏,在所述SMR区域申请所述集群信息的存储地址,以使所述SMR区域中包括两个存储地址,分别用于存储所述主校验信息和所述备校验信息。

基于同一发明构思,本申请实施例提供一种电子设备。请参见图6所示,该电子设备包括至少一个处理器601,以及与至少一个处理器连接的存储器602,本申请实施例中不限定处理器601与存储器602之间的具体连接介质,图6中是以处理器601和存储器602之间通过总线600连接为例,总线600在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线600可以分为地址总线、数据总线、控制总线等,为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

在本申请实施例中,存储器602存储有可被至少一个处理器601执行的指令,至少一个处理器601通过执行存储器602存储的指令,可以执行前述的学习监督方法中所包括的步骤。

其中,处理器601是电子设备的控制中心,可以利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器602内的指令以及调用存储在存储器602内的数据,电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器601可包括一个或多个处理单元,处理器601可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。在一些实施例中,处理器601和存储器602可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。

处理器601可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的学习监督方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器602作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器602可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器602是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器602还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。

通过对处理器601进行设计编程,可以将前述实施例中介绍的车灯检测方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行前述的学习监督方法的步骤,如何对处理器601进行设计编程为本领域技术人员所公知的技术,这里不再赘述。

基于同一发明构思,本申请实施例还提供一种计算可读存储介质,该计算可读存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行如前述的学习监督方法的步骤。

在一些可能的实施方式中,本申请提供的车灯检测方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使该检测设备执行本说明书上述描述的根据本申请各种示例性实施方式的学习监督方法中的步骤。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

20页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:固态硬盘不可纠错数据的处理方法、装置、设备及介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!