分布式存储元数据的修复方法、装置及系统的制作方法_2

文档序号:9616169阅读:来源:国知局
收所述MDS发送的第四消息,所述第四消息携带所述第一节点上缺失的元数据,从所述第四消息中获取所述第一节点上缺失的元数据。
[0067]第八方面,提供一种第二节点,所述第二节点包括:接收器、发送器和总线;其中,所述接收器和所述发送器通过所述总线连接并完成相互间的通信;
[0068]所述发送器,用于向第一节点发送第一消息,所述第一消息携带第一元数据,以及对所述第一元数据进行镜像写操作的操作请求;
[0069]所述接收器,用于若所述第一节点上的元数据不完整,接收所述第一节点发送的第二消息,所述第二消息用于请求所述第一节点上缺失的元数据;
[0070]所述发送器,还用于向所述第一节点发送第三消息,所述第三消息携带所述第一节点上缺失的元数据,由所述第一节点根据所述第一节点上缺失的元数据对所述第一节点上的元数据进行修复;
[0071]所述接收器,还用于接收所述第一节点发送的第四消息,所述第四消息用于指示所述第一元数据镜像写操作成功。
[0072]在第八方面第一种可能的实现方式中,结合第八方面,所述第二节点还包括处理器;
[0073]所述接收器,还用于在所述发送器向第一节点发送第一消息之前,接收元数据服务器MDS发送的所述第一消息;
[0074]所述处理器,用于根据所述第一消息,对所述第一元数据进行镜像写操作。
[0075]第九方面,提供一种元数据服务器MDS,所述MDS包括:接收器、发送器和总线;其中,所述接收器和所述发送器通过所述总线连接并完成相互间的通信;
[0076]所述发送器,用于向第二节点发送第一消息,所述第一消息携带第一元数据,以及对所述第一元数据进行镜像写操作的操作请求;
[0077]所述接收器,用于若所述第一节点上的元数据不完整,接收第一节点发送的第二消息,所述第二消息用于请求所述第一节点上缺失的元数据;
[0078]所述发送器,还用于向所述第一节点发送第三消息,所述第三消息携带所述第一节点上缺失的元数据,由所述第一节点根据所述第一节点上缺失的元数据对所述第一节点上的元数据进行修复。
[0079]第十方面,提供一种分布式存储架构,包括如第四方面任一项所述的第一节点、如第五方面任一项所述的第二节点、以及如第六方面所述的元数据服务器MDS ;
[0080]或者,包括如第七方面任一项所述的第一节点、如第八方面任一项所述的第二节点、以及如第九方面所述的MDS。
[0081]基于本发明实施例提供的分布式存储元数据的修复方法、装置及系统,本发明实施例中,第一节点接收到第二节点发送的携带第一元数据和对第一元数据进行镜像写操作的操作请求的第一消息之后,在所述第一节点上的元数据不完整时,所述第一节点获取所述第一节点上缺失的元数据,进而根据获取到的缺失的元数据对所述第一节点上的元数据进行修复,在将所述第一节点上的元数据修复完整后,所述第一节点对所述第一元数据进行镜像写操作,并向第二节点发送指示所述第一元数据镜像写成功的第二消息。也就是说,并不像现有技术中一样,在第一节点上的元数据不完整时,需要等待后台服务器获取修复日志后进行元数据的修复,当元数据的镜像写操作频率比较高时,可能生成大量的降级日志。本发明实施例中,可以在第一节点上的元数据不完整时,及时对第一节点上的元数据进行修复,使得本次镜像写操作成功,不会生成新的降级写日志,进而后续也不会生成更多的降级写日志。进一步的,由于后续不会生成更多的降级写日志,因此也避免了现有技术中当生成大量的降级写日志时,可能导致分布式存储元数据丢失,进而丢失用户文件的问题,增加了分布式存储架构中元数据镜像的可靠性。
【附图说明】
[0082]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0083]图1为本发明实施例提供的分布式存储架构示意图;
[0084]图2为现有技术中节点故障时分布式存储元数据的存储方法;
[0085]图3为现有技术中节点故障恢复时分布式存储元数据的修复方法;
[0086]图4为本发明实施例提供的分布式存储元数据的修复方法交互示意图;
[0087]图5为本发明实施例提供的分布式存储元数据的修复方法流程示意图一;
[0088]图6为本发明实施例提供的分布式存储元数据的修复方法流程示意图二;
[0089]图7为本发明实施例提供的分布式存储元数据的修复方法流程示意图三;
[0090]图8为本发明实施例提供的分布式存储元数据的修复方法流程示意图四;
[0091]图9为本发明实施例提供的分布式存储元数据的修复方法流程示意图五;
[0092]图10为本发明实施例提供的分布式存储元数据的修复方法流程示意图六;
[0093]图11为本发明实施例提供的第一节点结构示意图一;
[0094]图12为本发明实施例提供的第二节点结构示意图一;
[0095]图13为本发明实施例提供的第二节点结构示意图二 ;
[0096]图14为本发明实施例提供的MDS结构示意图一;
[0097]图15为本发明实施例提供的第一节点结构示意图二;
[0098]图16为本发明实施例提供的第二节点结构示意图三;
[0099]图17为本发明实施例提供的第二节点结构示意图四;
[0100]图18为本发明实施例提供的MDS结构示意图二。
【具体实施方式】
[0101]为了下述各实施例的描述清楚简洁,首先给出相关概念的简要介绍:
[0102]第一,元数据
[0103]元数据,是指用于描述数据及其环境的数据,比如,元数据可以用于描述数据的大小、访问时间及修改时间等。
[0104]第二,镜像(英文:Mirroring)
[0105]镜像是冗余的一种类型,一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本即为镜像。本发明实施例中,镜像写操作即为,将完全相同的数据写入另一个磁盘中。
[0106]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0107]需要说明的是,为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。
[0108]本发明实施例主要应用于如图1所示的分布式存储架构。如图1所示,该分布式存储架构中,元数据服务器(英文:Meta Data Server,简称:MDS)统一管理节点池中的多个节点,MDS可以选择节点池中的某个节点为管理节点,该管理节点负责将MDS下发的数据分发至节点池中的其它节点上。当该管理节点出现故障时,MDS可以重新选择节点池中的另外一个节点为管理节点,也就是通常所说的管理节点“漂移”。
[0109]其中,本发明实施例中的节点具体可以是某一个磁盘,本发明对此不作具体限定。
[0110]需要说明的是,图1所示的分布式存储架构中,MDS独立于节点池中的节点部署。当然,MDS还可以部署在节点池中的某一个节点上,本发明实施例对此不作具体限定。
[0111]基于图1所示的分布式存储架构,假设节点3为管理节点,节点1、节点2、节点4和节点5为元数据镜像节点,贝若节点5出现故障时(即节点5为故障节点),则节点3接收到MDS发送的请求对元数据1进行镜像写操作的请求消息1之后,节点1、节点2、节点3、节点4和节点5将执行如图2所示的分布式存储元数据的存储方法,包括:
[0112]S201、节点3向节点1发送消息1,所述消息1携带元数据1,以及对元数据1进行镜像写操作的操作请求。
[0113]S202、节点3向节点2发送消息1,所述消息1携带元数据1,以及对元数据1进行镜像写操作的操作请求。
[0114]S203、节点3向节点4发送消息1,所述消息1携带元数据1,以及对元数据1进行镜像写操作的操作请求。
[0115]S204、节点3向节点5发送消息1,所述消息1携带元数据1,以及对元数据1进行镜像写操作的操作请求。
[0116]S205、节点1接收节点3发送的所述消息1。
[0117]S206、节点2接收节点3发送的所述消息1。
[0118]S207、节点4接收节点3发送的所述消息1。
[0119]S208、节点1向节点3发送消息2,所述消息2用于指示元数据1镜像写操作成功。
[0120]S209、节点2向节点3发送消息2,所述消息2用于指示元数据1镜像写操作成功。
[0121]S210、节点4向节点3发送消息2,所述消息2用于指示元数据1镜像写操作成功。
[0122]S211、节点3接收节点1发送的所述消息2。
[0123]S212、节点3接收节点2发送的所述消息2。
[0124]S213、节点3接收节点4发送的所述消息2。
[0125]S214、节点3生成节点5写失败的日志。
[0126]由于节点5出现故障,因此节点5无法接收到节点3发送的消息1,进而也不会向节点3发送消息2,进而节点3无法接收到节点3发送的消息2,从而生成节点3写失败的曰志。
[0127]需要说明的是,上述分布式元数据的存储方法中,步骤S201-S204之间没有必然的执行先后顺序,可以先后执行步骤S201-S204中的任一个步骤,比如,顺次执行步骤S201-S204,也可以顺次执行步骤S202、S203、S201、S204等,还可以同时执行步骤S201-S204,本发明实施例对此不作具体限定。步骤S205-S207之间没有必然的执行先后顺序,其中,步骤S205在步骤S201之后执行,步骤S206在步骤S202之后执行,步骤S20
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1