CN107562569A - 一种数据重构方法及装置 - Google Patents
一种数据重构方法及装置 Download PDFInfo
- Publication number
- CN107562569A CN107562569A CN201610533490.0A CN201610533490A CN107562569A CN 107562569 A CN107562569 A CN 107562569A CN 201610533490 A CN201610533490 A CN 201610533490A CN 107562569 A CN107562569 A CN 107562569A
- Authority
- CN
- China
- Prior art keywords
- mark
- memory cell
- object data
- network hard
- storage server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据重构方法及装置,应用于元数据服务器,该方法包括:当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息,其中,第一通知消息中包括第一网络硬盘的第一标识;根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与第一标识对应的第一对象数据的第二标识,其中,第一对象数据存储于第一网络硬盘中;根据第二标识,获得与第一对象数据对应的第一存储单元的标识,其中,第一存储单元在第一网络硬盘中;将第一存储单元的标识发送至存储服务器,以使存储服务器重构第一存储单元中的第一对象数据。应用本发明实施例,保证了快速地获得完整的对象数据。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种数据重构方法及装置。
背景技术
随着网络技术的发展,人们常常将对象数据上传至网络侧,即将对象数据存储在存储服务器的网络硬盘(IP(Internet Protocol,网络协议)硬盘)中,节省本地客户端的存储空间,同时避免对象数据的丢失。
这里,存储服务器中包括至少一个IP硬盘,一个IP硬盘对应多个存储单元;一个条带对应多个存储单元,一个条带可以对应一个IP硬盘,也可以对应多个IP硬盘;另外,一个存储单元中仅存储一个对象数据,而一个对象数据可以存储在多个存储单元中。
实际应用中,在对象数据完整(存储该对象数据的存储单元对应的IP硬盘都有效)的情况下,才能正常读取该对象数据,而存储服务器的IP硬盘1存在无法读取已存储数据的情况,也就是IP硬盘失效的情况,此时,为了保证正常的读取对象数据,需要将该IP硬盘1中的对象数据迁移至其他有效的IP硬盘中,即重构IP硬盘1中存储的对象数据。
在对IP硬盘1中存储的对象数据进行重构时,存储服务器逐一扫描该存储服务器对应的条带,若一条带中存在一个存储单元1,该存储单元1对应IP硬盘1,则重构该存储单元1中的对象数据;若一条带中的存储单元都不对应IP硬盘1,则继续扫描其他条带。
由上可知,相关技术重构数据时,存储服务器并不能获知哪一条带、哪一存储单元中的对象数据需要重构,若对象数据存储在多个存储单元中,这些存储单元对应多个不相邻的IP硬盘1中的条带,这将使得存储服务器不能快速地重构出一个完整的对象数据;并且IP硬盘1中存储的对象数据越多,重构出一个完整的对象数据的速度就会越慢。
发明内容
本发明实施例公开了一种数据重构方法及装置,以保证快速地获得完整的对象数据。
为达到上述目的,本发明实施例公开了一种数据重构方法,应用于元数据服务器,所述方法包括:
当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息,其中,所述第一网络硬盘为所述存储服务器中的一个网络硬盘,所述第一通知消息中包括所述第一网络硬盘的第一标识;
根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与所述第一标识对应的第一对象数据的第二标识,其中,所述第一对象数据存储于所述第一网络硬盘中;
根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,其中,所述第一存储单元在所述第一网络硬盘中;
将所述第一存储单元的标识发送至所述存储服务器,以使所述存储服务器重构所述第一存储单元中的所述第一对象数据。
可选的,所述根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,包括:
根据预先存储的对象数据的标识与条带的标识之间的第二对应关系,基于所述第一对象数据的第二标识,获得所述第一对象数据对应的第一条带的第三标识;
根据预先存储的条带的标识、网络硬盘的标识以及存储单元的标识三者之间的第三对应关系,基于所述第一标识和所述第三标识,获得所述第一条带中、与所述第一网络硬盘对应的存储单元的标识,并将所获得的存储单元的标识作为与所述第一对象数据对应的第一存储单元的标识。
可选的,所述将所述第一存储单元的标识发送至所述存储服务器,包括:
根据所述第一存储单元的标识,确定所述第一条带中所述第一存储单元的数量;
获取所述第一条带中用于存储校验数据的存储单元的数量M,M为正整数;
在所述第一条带中所述第一存储单元的数量不大于M的情况下,将所述第一存储单元的标识发送至所述存储服务器。
可选的,在所述将所述第一存储单元的标识发送至所述存储服务器之后,所述方法还包括:
接收所述存储服务器发送的所述第一存储单元对应的第二网络硬盘的标识;
根据所述第二网络硬盘的标识,更新所述第一对应关系和所述第三对应关系。
可选的,所述存储服务器一个条带中的各个存储单元分别对应于不同的网络硬盘。
可选的,所述将所述第一存储单元的标识发送至所述存储服务器,包括:
获取所述第一存储单元的存储状态;
在所述第一存储单元对应的存储状态为正常状态的情况下,将所述第一存储单元的标识发送至所述存储服务器。
为达到上述目的,本发明实施例还公开了一种数据重构装置,应用于元数据服务器,所述装置包括:
第一消息接收单元,用于当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息,其中,所述第一网络硬盘为所述存储服务器中的一个网络硬盘,所述第一通知消息中包括所述第一网络硬盘的第一标识;
第一标识获得单元,用于根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与所述第一标识对应的第一对象数据的第二标识,其中,所述第一对象数据存储于所述第一网络硬盘中;
第二标识获得单元,用于根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,其中,所述第一存储单元在所述第一网络硬盘中;
标识发送单元,用于将所述第一存储单元的标识发送至所述存储服务器,以使所述存储服务器重构所述第一存储单元中的所述第一对象数据。
可选的,所述第二标识获得单元,具体用于:
根据预先存储的对象数据的标识与条带的标识之间的第二对应关系,基于所述第一对象数据的第二标识,获得所述第一对象数据对应的第一条带的第三标识;
根据预先存储的条带的标识、网络硬盘的标识以及存储单元的标识三者之间的第三对应关系,基于所述第一标识和所述第三标识,获得所述第一条带中、与所述第一网络硬盘对应的存储单元的标识,并将所获得的存储单元的标识作为与所述第一对象数据对应的第一存储单元的标识。
可选的,所述标识发送单元,包括:
数量确定子单元,用于根据所述第一存储单元的标识,确定所述第一条带中所述第一存储单元的数量;
数量获取子单元,用于获取所述第一条带中用于存储校验数据的存储单元的数量M,M为正整数;
标识发送子单元,用于在所述第一条带中所述第一存储单元的数量不大于M的情况下,将所述第一存储单元的标识发送至所述存储服务器。
可选的,所述装置还包括:
第二消息接收单元,用于在所述标识发送单元将所述第一存储单元的标识发送至所述存储服务器之后,接收所述存储服务器发送的所述第一存储单元对应的第二网络硬盘的标识;
关系更新单元,用于根据所述第二网络硬盘的标识,更新所述第一对应关系和所述第三对应关系。
可选的,所述存储服务器一个条带中的各个存储单元分别对应于不同的网络硬盘。
可选的,所述标识发送单元,包括:
状态获取子单元,用于获取所述第一存储单元的存储状态;
标识发送子单元,用于在所述第一存储单元对应的存储状态为正常状态的情况下,将所述第一存储单元的标识发送至所述存储服务器。
由上可知,本发明实施例中,元数据服务器接收到存储服务器发送的包括第一网络硬盘的第一标识的第一通知消息之后,根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与第一标识对应第一对象数据的第二标识,第一对象数据存储于第一网络硬盘中;根据第二标识,获得与第一对象数据对应的第一存储单元的标识,第一存储单元在第一网络硬盘中,将该第一存储单元的标识发送至存储服务器,此时,存储服务器获得了所有存储在第一网络硬盘中对象数据对应的存储单元,这样,存储服务器就可以按照对象数据的标识,逐一重构第一存储单元中的第一对象数据,也就是丢失的第一网络硬盘中存储的对象数据,进而保证了快速地获得完整的对象数据。
附图说明
为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据重构方法的流程示意图;
图2为本发明实施例提供的一种对象数据存储示意图;
图3为本发明实施例提供的一种存储单元与网络硬盘的对应关系示意图;
图4为本发明实施例提供的一种数据重构装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面通过具体实施例,对本发明进行详细说明。
参考图1,图1为本发明实施例提供的一种数据重构方法的流程示意图,应用于元数据服务器,该方法包括:
S101:当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息;
其中,第一网络硬盘为存储服务器中的一个网络硬盘,第一通知消息中包括:第一网络硬盘的第一标识。
在本发明的一个实施例中,若客户端不能从第一网络硬盘中读取到已存储数据,可以理解为该第一网络硬盘丢失,此时,为了保证客户端能正常读取数据,需要将存储在第一网络硬盘中的对象数据迁移至其他未丢失的网络硬盘中。
这里,网络硬盘的标识可以为wwn(World Wide Name,全球唯一名字),其中,wwn是由权威的组织分配的唯一的48位或64位数字,专门制定为公认的名称授权(通常通过区域分配给制造商),以区分一个或一组网络连接。
S102:根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与第一标识对应的第一对象数据的第二标识;
其中,第一对象数据存储于第一网络硬盘中。
第一网络硬盘中存储有对象数据,为了与其他网络硬盘中存储的对象数据区分,可以将第一网络硬盘中存储的对象数据称之为第一对象数据。
在本发明的一个实施例中,上述第一对应关系可以包括:网络硬盘的标识、对象数据的标识、网络硬盘的状态和网络硬盘的IP(Internet Protocol,网络协议)地址,可参考表1中的字段部分。
表1
字段 | Key(键) | 备注 |
wwn | Primary Key(主键) | 网络硬盘的标识 |
Object集合 | 在网络硬盘中存储的对象数据集合 | |
status | 网络硬盘的状态 | |
IP | 网络硬盘的IP地址 |
其中,在网络硬盘中会存储很多的对象数据,因此,上述第一对应关系中的对象数据的标识可以为对象数据的标识的集合。这种情况下,获得的与第一标识对应的第二标识可以为:对象数据的标识的集合中的一个或多个或所有对象数据的标识。
另外,网络硬盘的状态可以包括:上线状态和下线状态。当网络硬盘为上线状态时,可以理解为,用户可以向该网络硬盘中存储数据,并从该网络硬盘中读取数据;当网络硬盘为下线状态时,可以理解为,用户不可以向该网络硬盘中存储数据,也不可以从该网络硬盘中读取数据。
S103:根据第二标识,获得与第一对象数据对应的第一存储单元的标识;
其中,第一存储单元在第一网络硬盘中,其用于存储第一对象数据。
存储单元为网络硬盘中的最小存储单位,存储服务器在重构对象数据时,是以存储单元为基础来进行重构的。
在本发明的一个实施例中,为了便于获取第一对象数据对应的第一存储单元的标识,元数据服务器中还可以预先存储对象数据的标识与条带的标识之间的第二对应关系,以及条带的标识、网络硬盘的标识以及存储单元的标识三者之间的第三对应关系。
这种情况下,上述根据第二标识,获得第一网络硬盘中与第一对象数据对应的第一存储单元的标识可以包括:
S01、根据第二对应关系,基于第一对象数据的第二标识,获得第一对象数据对应的第一条带的第三标识;
由于一个对象数据可以存储在多个存储单元中,而各个存储单元又可以存储在不同的条带中,所以,第一对象数据可以存储在多个条带的多个存储单元中,相应的,上述所获得的第三标识可以为一个,也可以为多个。
另外,第二对应关系还可以包括:存储在条带对应的存储单元中的数据在整个对象数据中的第一偏移量、存储在条带对应的存储单元中的数据在该条带中的第二偏移量以及存储在条带对应的存储单元中的数据的长度,可参考表2中的字段部分。
表2
这样,就可以准确地确定对象数据在条带的存储位置了。需要说明的是,存储在条带对应的存储单元中的数据可以为一个对象数据的一部分,也可以为整个对象数据。
假设,一对象数据Object1的大小为1.5MB,将该对象数据Object1分别存储在两个存储单元中,一个存储单元1中存储了Object1前1MB,另一个存储单元7中存储了Object1后0.5MB,存储单元1对应条带Strip1,存储单元7对应条带Strip2,如图2所示,Object1对应2个条带,针对Strip1对应的Object1,第一偏移量为0MB,第二偏移量为0MB,存储在条带中的数据的长度为1MB;若一个存储单元的大小为1MB,针对Strip2对应的Object1,第一偏移量为1MB,第二偏移量为2MB,存储在条带中的数据的长度为0.5MB。
S02、根据第三对应关系,基于第一标识和第三标识,获得第一条带中、与第一网络硬盘对应的存储单元的标识,并将所获得的存储单元的标识作为与第一对象数据对应的第一存储单元的标识。
网络硬盘可以以<存储单元,值>的形式存储对象数据,其中,值中存储的是对象数据。
条带包含多个存储单元,这些存储单元除了可以用于存储对象数据外,为了确保在网络硬盘丢失的情况下,能够重构对象数据,存储单元还可以用于存储对象数据的校验数据,假设,一个条带中包括N+M个存储单元,其中,N个存储单元存储对象数据,M个存储单元存储对象数据的校验数据,其中,M和N为正整数。
条带中的校验数据可以通过对该条带中各个存储单元中存储的对象数据进行纠删码计算(EC计算)得到。
在本发明的一个实施例中,存储服务器通过EC计算,确定出对应丢失网络硬盘的存储单元中的对象数据,并进行重构,上述条带中M个存储单元存储校验数据,那么,就可以允许该条带中有M个存储对象数据的存储单元对应的网络硬盘丢失,当超过M个存储对象数据的存储单元对应的网络硬盘丢失时,将无法重构该条带中存储单元中的对象数据。如,当前一条带中有8个存储单元,其中2个存储单元中存储了校验数据,若该条带中有3个存储对象数据的存储单元对应的网络硬盘丢失,将无法确定出丢失的存储单元中的对象数据,进而无法重构该条带中存储单元中的对象数据。
因此,为了保证能够重构存储单元中存储的对象数据,并且能够快速、准确地确定一个条带中对应所丢失网络硬盘的存储单元,减小一个条带中对应所丢失网络硬盘的存储单元的数量超过M个的概率,存储服务器一个条带中的各个存储单元分别对应于不同的网络硬盘,如图3所示。
另外,存储单元为网络硬盘中的最小存储单位,为了避免对象数据混合存储,在重构一个存储单元中的对象数据时需要重构多个对象数据,导致无法快速地重构得到一个完整的对象数据的问题,一个存储单元中仅存储一个对象数据。假设,如图3所示,条带Strip1的一个存储单元的大小为1MB,对象数据Object1的大小为1.5MB,则将Object1存储在存储单元1和存储单元2中,当需要存储Object2时,Object2的大小为0.7MB,则将Object2存储在存储单元3中。
在本发明的一个实施例中,第三对应关系中还可以包括:存储状态。这里,存储状态为存储单元的存储状态,可以包括正常状态和删除状态,具体地,当存储单元中存储了对象数据时,该存储单元对应的存储状态设置为正常状态;当用户的客户端删除了存储单元中存储的对象数据时,该存储单元对应的存储状态设置为删除状态。这种情况下,第三对应关系中可以为:条带的标识、网络硬盘的标识、存储单元的标识、存储状态四者之间的对应关系,可参考表3中的字段部分。
表3
值得一提的是,存储服务器在重构对象数据时,可以根据一个条带中对应未丢失网络硬盘的存储单元中存储的对象数据,重构丢失网络硬盘的存储单元中存储的对象数据,因此,此处用户指示客户端删除存储单元中存储的对象数据,是针对用户的客户端而言的,表示用户的客户端不需要再读取该对象数据,但存储服务器并未真正删除该对象数据。这时若处于删除状态的存储单元对应的网络硬盘丢失,但用户的客户端不需要再读取该存储单元中的对象数据,则无需重构该存储单元中存储的对象数据。
这种情况下,为了提高重构对象数据的速度,获得与第三标识对应的第一存储单元的标识之后,将第一存储单元的标识发送至存储服务器,可以包括:
获取第一存储单元的存储状态;
在第一存储单元对应的存储状态为正常状态的情况下,将第一存储单元的标识发送至所述存储服务器。
在本发明的一个实施例中,元数据服务器可以直接在第三对应关系中获得第一存储单元的存储状态;若第三对应关系中不包含存储状态,元数据服务器可以向存储服务器发送状态检测消息,存储服务器根据该状态检测消息检测第一存储单元的存储状态,并将检测到的存储状态反馈给元数据服务器;另外,存储服务器还可以定期向元数据服务器发送第一存储单元的存储状态,这里的定期可以为预设的时间间隔,也可以为第一存储单元的存储状态发生变化的时间。
S104:将第一存储单元的标识发送至存储服务器。
这种情况下,存储服务器获得第一存储单元的标识后,就可以获知哪些存储单元对应的网络硬盘丢失,哪些对象数据需要重构,这样,存储服务器就可以按照对象数据,对第一存储单元中的第一对象数据进行重构,将第一存储单元中的第一对象数据从第一网络硬盘迁移至其他未丢失的第二网络硬盘,也就是,重构完成一个对象数据后,再重构另一个对象数据,保证了快速地获得完整的对象数据。
假设,对象数据a1存储在第一网络硬盘的一个存储单元A1中,对象数据a2存储在第一网络硬盘的另一存储单元A2中,这种情况下,元数据服务器可以首先获取对象数据a1的标识,根据该对象数据a1的标识获得存储单元A1的标识,并发送给存储服务器,存储服务器对该存储单元A1中存储的对象数据重构成功后,元数据服务器再获取下一个对象数据a2的标识,根据该对象数据a2的标识获得其对应的存储单元A2的标识,并发送给存储服务器,依次类推,直至丢失的网络硬盘中的数据全部重构完成。
另外,元数据服务器还可以获取所有对象数据的标识,将所有对象数据的标识对应的存储单元的标识发送给存储服务器,由存储服务器区分出那些存储单元中存储的对象数据为同一对象数据,进而一个对象数据接一个对象数据的进行重构。
为了确保能够重构成功存储单元中存储的对象数据,上述将第一存储单元的标识发送至存储服务器,可以包括:
根据第一存储单元的标识,确定第一条带中第一存储单元的数量;
获取第一条带中用于存储校验数据的存储单元的数量M,M为正整数;
在第一条带中第一存储单元的数量不大于M的情况下,将第一存储单元的标识发送至存储服务器。
在本发明的一个实施例中,存储服务器通过EC计算,确定出对应丢失网络硬盘的存储单元中的对象数据,并进行重构的。假设,如图3所示,网络硬盘1丢失,存储服务器接收到元数据服务器发送的第一存储单元的标识为:存储单元1,另外,存储单元1所在条带Strip1中存储单元1-存储单元4中存储了对象数据,存储单元5中存储了校验数据,重构对象数据时,存储服务器读取Strip1中存储单元2-存储单元4中的对象数据,对读取到的对象数据进行纠删码计算(EC计算),得到存储单元1中的对象数据,将得到的对象数据存储至网络硬盘11,网络硬盘11为未丢失的网络硬盘。
元数据服务器将第一存储单元的标识发送至存储服务器之后,若存储服务器对第一存储单元中的第一对象数据重构成功,存储服务器可以向元数据服务器发送一个第二通知消息,该第二通知消息用于通知元数据服务器更新已存储的第一对应关系和第三对应关系,第二通知消息包含第二网络硬盘的标识;元数据服务器接收到第二通知消息后,更新第一对应关系和第三对应关系,也就是,将第一对应关系中与第一对象数据的标识对应的第一网络硬盘标识更新为第二网络硬盘的标识,将第三对应关系中与第一条带的标识、第一存储单元的标识对应的第一网络硬盘的标识更新为第二网络硬盘的标识。
应用图1所示实施例,元数据服务器接收到存储服务器发送的包括第一网络硬盘的第一标识的第一通知消息之后,根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与第一标识对应第一对象数据的第二标识,第一对象数据存储于第一网络硬盘中;根据第二标识,获得与第一对象数据对应的第一存储单元的标识,第一存储单元在第一网络硬盘中,将该第一存储单元的标识发送至存储服务器,此时,存储服务器获得了所有存储在第一网络硬盘中对象数据对应的存储单元,这样,存储服务器就可以按照对象数据的标识,逐一重构第一存储单元中的第一对象数据,也就是丢失的第一网络硬盘中存储的对象数据,进而保证了快速地获得完整的对象数据。
与上述数据重构方法相对应,本发明实施例还提供的一种数据重构装置。
参考图4,图4为本发明实施例提供的一种数据重构装置的结构示意图,应用于元数据服务器,所述装置包括:
第一消息接收单元401,用于当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息,其中,所述第一网络硬盘为所述存储服务器中的一个网络硬盘,所述第一通知消息中包括所述第一网络硬盘的第一标识;
第一标识获得单元402,用于根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与所述第一标识对应的第一对象数据的第二标识,其中,所述第一对象数据存储于所述第一网络硬盘中;
第二标识获得单元403,用于根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,其中,所述第一存储单元在所述第一网络硬盘中;
标识发送单元404,用于将所述第一存储单元的标识发送至所述存储服务器,以使所述存储服务器重构所述第一存储单元中的所述第一对象数据。
在本发明的一个实施例中,第二标识获得单元403,具体用于:
根据预先存储的对象数据的标识与条带的标识之间的第二对应关系,基于所述第一对象数据的第二标识,获得所述第一对象数据对应的第一条带的第三标识;
根据预先存储的条带的标识、网络硬盘的标识以及存储单元的标识三者之间的第三对应关系,基于所述第一标识和所述第三标识,获得所述第一条带中、与所述第一网络硬盘对应的存储单元的标识,并将所获得的存储单元的标识作为与所述第一对象数据对应的第一存储单元的标识。
在本发明的一个实施例中,标识发送单元404,可以包括:
数量确定子单元(图4中未示出),用于根据所述第一存储单元的标识,确定所述第一条带中所述第一存储单元的数量;
数量获取子单元(图4中未示出),用于获取所述第一条带中用于存储校验数据的存储单元的数量M,M为正整数;
标识发送子单元(图4中未示出),用于在所述第一条带中所述第一存储单元的数量不大于M的情况下,将所述第一存储单元的标识发送至所述存储服务器。
在本发明的一个实施例中,上述数据重构装置还可以包括:
第二消息接收单元(图4中未示出),用于在所述标识发送单元404将所述第一存储单元的标识发送至所述存储服务器之后,接收所述存储服务器发送的所述第一存储单元对应的第二网络硬盘的标识;
关系更新单元,用于根据所述第二网络硬盘的标识,更新所述第一对应关系和所述第三对应关系。
在本发明的一个实施例中,存储服务器一个条带中的各个存储单元分别对应于不同的网络硬盘。
在本发明的一个实施例中,标识发送单元404,可以包括:
状态获取子单元(图4中未示出),用于获取所述第一存储单元的存储状态;
标识发送子单元(图4中未示出),用于在所述第一存储单元对应的存储状态为正常状态的情况下,将所述第一存储单元的标识发送至所述存储服务器。
应用图4所示实施例,元数据服务器接收到存储服务器发送的包括第一网络硬盘的第一标识的第一通知消息之后,根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与第一标识对应第一对象数据的第二标识,第一对象数据存储于第一网络硬盘中;根据第二标识,获得与第一对象数据对应的第一存储单元的标识,第一存储单元在第一网络硬盘中,将该第一存储单元的标识发送至存储服务器,此时,存储服务器获得了所有存储在第一网络硬盘中对象数据对应的存储单元,这样,存储服务器就可以按照对象数据的标识,逐一重构第一存储单元中的第一对象数据,也就是丢失的第一网络硬盘中存储的对象数据,进而保证了快速地获得完整的对象数据。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (12)
1.一种数据重构方法,应用于元数据服务器,其特征在于,所述方法包括:
当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息,其中,所述第一网络硬盘为所述存储服务器中的一个网络硬盘,所述第一通知消息中包括所述第一网络硬盘的第一标识;
根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与所述第一标识对应的第一对象数据的第二标识,其中,所述第一对象数据存储于所述第一网络硬盘中;
根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,其中,所述第一存储单元在所述第一网络硬盘中;
将所述第一存储单元的标识发送至所述存储服务器,以使所述存储服务器重构所述第一存储单元中的所述第一对象数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,包括:
根据预先存储的对象数据的标识与条带的标识之间的第二对应关系,基于所述第一对象数据的第二标识,获得所述第一对象数据对应的第一条带的第三标识;
根据预先存储的条带的标识、网络硬盘的标识以及存储单元的标识三者之间的第三对应关系,基于所述第一标识和所述第三标识,获得所述第一条带中、与所述第一网络硬盘对应的存储单元的标识,并将所获得的存储单元的标识作为与所述第一对象数据对应的第一存储单元的标识。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一存储单元的标识发送至所述存储服务器,包括:
根据所述第一存储单元的标识,确定所述第一条带中所述第一存储单元的数量;
获取所述第一条带中用于存储校验数据的存储单元的数量M,M为正整数;
在所述第一条带中所述第一存储单元的数量不大于M的情况下,将所述第一存储单元的标识发送至所述存储服务器。
4.根据权利要求2所述的方法,其特征在于,在所述将所述第一存储单元的标识发送至所述存储服务器之后,所述方法还包括:
接收所述存储服务器发送的所述第一存储单元对应的第二网络硬盘的标识;
根据所述第二网络硬盘的标识,更新所述第一对应关系和所述第三对应关系。
5.根据权利要求2-4中任一项所述的方法,其特征在于,
所述存储服务器一个条带中的各个存储单元分别对应于不同的网络硬盘。
6.根据权利要求1所述的方法,其特征在于,所述将所述第一存储单元的标识发送至所述存储服务器,包括:
获取所述第一存储单元的存储状态;
在所述第一存储单元对应的存储状态为正常状态的情况下,将所述第一存储单元的标识发送至所述存储服务器。
7.一种数据重构装置,应用于元数据服务器,其特征在于,所述装置包括:
第一消息接收单元,用于当第一网络硬盘丢失时,接收存储服务器发送的第一通知消息,其中,所述第一网络硬盘为所述存储服务器中的一个网络硬盘,所述第一通知消息中包括所述第一网络硬盘的第一标识;
第一标识获得单元,用于根据预先存储的网络硬盘的标识与对象数据的标识之间的第一对应关系,获得与所述第一标识对应的第一对象数据的第二标识,其中,所述第一对象数据存储于所述第一网络硬盘中;
第二标识获得单元,用于根据所述第二标识,获得与所述第一对象数据对应的第一存储单元的标识,其中,所述第一存储单元在所述第一网络硬盘中;
标识发送单元,用于将所述第一存储单元的标识发送至所述存储服务器,以使所述存储服务器重构所述第一存储单元中的所述第一对象数据。
8.根据权利要求7所述的装置,其特征在于,所述第二标识获得单元,具体用于:
根据预先存储的对象数据的标识与条带的标识之间的第二对应关系,基于所述第一对象数据的第二标识,获得所述第一对象数据对应的第一条带的第三标识;
根据预先存储的条带的标识、网络硬盘的标识以及存储单元的标识三者之间的第三对应关系,基于所述第一标识和所述第三标识,获得所述第一条带中、与所述第一网络硬盘对应的存储单元的标识,并将所获得的存储单元的标识作为与所述第一对象数据对应的第一存储单元的标识。
9.根据权利要求8所述的装置,其特征在于,所述标识发送单元,包括:
数量确定子单元,用于根据所述第一存储单元的标识,确定所述第一条带中所述第一存储单元的数量;
数量获取子单元,用于获取所述第一条带中用于存储校验数据的存储单元的数量M,M为正整数;
标识发送子单元,用于在所述第一条带中所述第一存储单元的数量不大于M的情况下,将所述第一存储单元的标识发送至所述存储服务器。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二消息接收单元,用于在所述标识发送单元将所述第一存储单元的标识发送至所述存储服务器之后,接收所述存储服务器发送的所述第一存储单元对应的第二网络硬盘的标识;
关系更新单元,用于根据所述第二网络硬盘的标识,更新所述第一对应关系和所述第三对应关系。
11.根据权利要求8-10中任一项所述的装置,其特征在于,
所述存储服务器一个条带中的各个存储单元分别对应于不同的网络硬盘。
12.根据权利要求7所述的装置,其特征在于,所述标识发送单元,包括:
状态获取子单元,用于获取所述第一存储单元的存储状态;
标识发送子单元,用于在所述第一存储单元对应的存储状态为正常状态的情况下,将所述第一存储单元的标识发送至所述存储服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610533490.0A CN107562569B (zh) | 2016-06-30 | 2016-06-30 | 一种数据重构方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610533490.0A CN107562569B (zh) | 2016-06-30 | 2016-06-30 | 一种数据重构方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107562569A true CN107562569A (zh) | 2018-01-09 |
CN107562569B CN107562569B (zh) | 2020-09-25 |
Family
ID=60973222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610533490.0A Active CN107562569B (zh) | 2016-06-30 | 2016-06-30 | 一种数据重构方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107562569B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120262A1 (en) * | 2001-08-28 | 2005-06-02 | Sedna Patent Services, Llc | Method and apparatus for striping data onto a plurality of disk drives |
CN101604548A (zh) * | 2009-03-26 | 2009-12-16 | 成都市华为赛门铁克科技有限公司 | 一种固态硬盘及数据存储方法 |
CN102012792A (zh) * | 2010-11-02 | 2011-04-13 | 华中科技大学 | 一种快速重构的raid-6编码及重构方法 |
CN102591746A (zh) * | 2011-12-29 | 2012-07-18 | 成都市华为赛门铁克科技有限公司 | 数据重构方法和存储设备 |
WO2014116181A2 (en) * | 2013-01-22 | 2014-07-31 | Agency For Science, Technology And Research | Cost-sensitive linear reconstruction based optic cup localization |
CN104156283A (zh) * | 2014-08-27 | 2014-11-19 | 华为技术有限公司 | 数据恢复方法、装置及存储系统 |
US20140366019A1 (en) * | 2013-06-11 | 2014-12-11 | Vmware, Inc. | Suspend-resume of virtual machines using de-duplication |
US8930653B1 (en) * | 2011-04-18 | 2015-01-06 | American Megatrends, Inc. | Data de-duplication for information storage systems |
CN104407815A (zh) * | 2014-11-25 | 2015-03-11 | 浪潮电子信息产业股份有限公司 | 一种raid5磁盘阵列中坏扇区处理的方法和装置 |
CN105094685A (zh) * | 2014-04-29 | 2015-11-25 | 国际商业机器公司 | 进行存储控制的方法和设备 |
CN105095013A (zh) * | 2015-06-04 | 2015-11-25 | 华为技术有限公司 | 数据存储方法、恢复方法、相关装置以及系统 |
CN105487810A (zh) * | 2014-09-18 | 2016-04-13 | 先智云端数据股份有限公司 | 用于达成无干扰性数据重构的系统 |
CN105549908A (zh) * | 2015-12-14 | 2016-05-04 | 深圳市万拓存储技术有限公司 | Raid磁盘阵列重新恢复冗余的方法 |
-
2016
- 2016-06-30 CN CN201610533490.0A patent/CN107562569B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120262A1 (en) * | 2001-08-28 | 2005-06-02 | Sedna Patent Services, Llc | Method and apparatus for striping data onto a plurality of disk drives |
CN101604548A (zh) * | 2009-03-26 | 2009-12-16 | 成都市华为赛门铁克科技有限公司 | 一种固态硬盘及数据存储方法 |
CN102012792A (zh) * | 2010-11-02 | 2011-04-13 | 华中科技大学 | 一种快速重构的raid-6编码及重构方法 |
US8930653B1 (en) * | 2011-04-18 | 2015-01-06 | American Megatrends, Inc. | Data de-duplication for information storage systems |
CN102591746A (zh) * | 2011-12-29 | 2012-07-18 | 成都市华为赛门铁克科技有限公司 | 数据重构方法和存储设备 |
WO2014116181A2 (en) * | 2013-01-22 | 2014-07-31 | Agency For Science, Technology And Research | Cost-sensitive linear reconstruction based optic cup localization |
US20140366019A1 (en) * | 2013-06-11 | 2014-12-11 | Vmware, Inc. | Suspend-resume of virtual machines using de-duplication |
CN105094685A (zh) * | 2014-04-29 | 2015-11-25 | 国际商业机器公司 | 进行存储控制的方法和设备 |
CN104156283A (zh) * | 2014-08-27 | 2014-11-19 | 华为技术有限公司 | 数据恢复方法、装置及存储系统 |
CN105487810A (zh) * | 2014-09-18 | 2016-04-13 | 先智云端数据股份有限公司 | 用于达成无干扰性数据重构的系统 |
CN104407815A (zh) * | 2014-11-25 | 2015-03-11 | 浪潮电子信息产业股份有限公司 | 一种raid5磁盘阵列中坏扇区处理的方法和装置 |
CN105095013A (zh) * | 2015-06-04 | 2015-11-25 | 华为技术有限公司 | 数据存储方法、恢复方法、相关装置以及系统 |
CN105549908A (zh) * | 2015-12-14 | 2016-05-04 | 深圳市万拓存储技术有限公司 | Raid磁盘阵列重新恢复冗余的方法 |
Non-Patent Citations (2)
Title |
---|
YANLI ZHA ET AL: "Detection of Disk in the MRI Spine Image with Reconstructing Coronal Plane", 《2009 3RD INTERNATIONAL CONFERENCE ON BIOINFORMATICS AND BIOMEDICAL ENGINEERING》 * |
万胜刚: "磁盘阵列高容错模式及重构技术研究", 《中国博士学位论文全文数据库 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN107562569B (zh) | 2020-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942252B (zh) | 一种恢复数据的方法及系统 | |
CN103294675B (zh) | 一种分布式存储系统中的数据更新方法及装置 | |
US8290994B2 (en) | Obtaining file system view in block-level data storage systems | |
CN109597717A (zh) | 一种数据备份、恢复方法、装置、电子设备及存储介质 | |
CN106406758A (zh) | 一种基于分布式存储系统的数据处理方法及存储设备 | |
CN103327085B (zh) | 一种分布式数据处理方法、数据中心及其系统 | |
CN104519090A (zh) | 文件传输方法及装置 | |
CN111291079A (zh) | 一种数据的查询方法和装置 | |
CN107592351A (zh) | 一种基于Redis的多用户发布订阅方法及系统 | |
CN104954444B (zh) | 一种迁移缓存数据的方法及设备 | |
CN103986779B (zh) | 一种应用数据传输方法、装置及终端设备 | |
CN111857592A (zh) | 基于对象存储系统的数据存储方法及装置、电子设备 | |
CN103535014B (zh) | 一种网络存储系统、数据处理方法和客户端 | |
CN109284073A (zh) | 数据存储方法、装置、系统、服务器、控制节点及介质 | |
US20210326211A1 (en) | Data backup method, apparatus, and system | |
CN106021284A (zh) | 数据查询方法、数据监测方法及装置 | |
CN108600281A (zh) | 一种云存储系统、媒体数据存储方法及系统 | |
WO2019045799A1 (en) | DISTRIBUTED DATA STORAGE SYSTEMS | |
CN108347459A (zh) | 一种云端数据快速存储方法及装置 | |
CN103595808B (zh) | 一种文件更新信息推送方法及装置 | |
CN103310154B (zh) | 信息安全处理的方法、设备和系统 | |
CN107506438A (zh) | 一种用于物联网的数据处理存储方法以及装置 | |
CN110874345B (zh) | 分布式存储系统中的数据处理方法、装置和系统 | |
CN107870940A (zh) | 一种文件存储方法及装置 | |
CN107562368B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |