一种分布式文件系统存储单元的启动方法、装置及设备与流程

文档序号:16736154发布日期:2019-01-28 12:38阅读:206来源:国知局
一种分布式文件系统存储单元的启动方法、装置及设备与流程

本发明涉及分布式文件系统技术领域,更具体地说,涉及一种分布式文件系统存储单元的启动方法、装置、设备及计算机可读存储介质。



背景技术:

分布式文件系统包括多个存储节点,每个存储节点包括多个存储单元,一般一个存储单元与一个物理盘(如stat硬盘、sas硬盘、ssd固态硬盘等硬盘)相对应,用于实现数据存储。

当分布式文件系统中某个存储节点被宕机后重启时,位于该存储节点上的多个存储单元会随机无序的启动,并上报自身状态给监控模块,监控模块基于各存储单元上报的自身状态的信息更新对应的存储单元列表,这就会导致分布式文件系统的存储单元列表会在存储节点刚启动的一段时间内多次、无规律的更新变化,由于分布式文件系统需要通过查询存储单元列表实现存储任务的分配,而在存储单元列表更新变化的过程中是无法提供查询功能的,因此,在存储节点重启时,其上多个存储单元按照上述方式启动及上报状态会降低分布式文件系统的系统性能,严重时导致分布式文件系统短暂时间内无法读写。

综上所述,现有技术中实现分布式文件系统中某重启的存储节点上存储单元的启动的技术方案存在降低分布式文件系统的系统性能的问题。



技术实现要素:

本发明的目的是提供一种分布式文件系统存储单元的启动方法、装置、设备及计算机可读存储介质,能够解决现有技术中实现分布式文件系统中某重启的存储节点上存储单元的启动的技术方案存在的降低分布式文件系统的系统性能的问题。

为了实现上述目的,本发明提供如下技术方案:

一种分布式文件系统存储单元的启动方法,包括:

当所述分布式文件系统中任一存储单元的主进程进行启动时,确定该任一存储单元为目标单元,该目标单元所属的存储节点为目标节点;

判断所述目标单元的主进程进行的启动是否为所述目标节点启动引发的自启动,如果是,则控制所述目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,如果否,则确定无需对所述状态信息的上报进行时间控制。

优选的,判断所述目标单元的主进程进行的启动是否为所述目标节点启动引发的自启动,包括:

获取所述目标单元的主进程开始启动的时刻与所述目标节点的操作系统开始启动的时刻之间的时间间隔,并判断该时间间隔是否小于预设时间间隔,如果是,则确定所述目标单元的主进程进行的启动是为所述目标节点启动引发的自启动,如果否,则确定所述目标单元的主进程进行的启动不是为所述目标节点启动引发的自启动。

优选的,还包括:

在所述目标节点上各存储单元等待所述预定时间的过程中,控制各存储单元的主进程完成预设准备工作;其中,所述预设准备工作包括对应存储单元能够提供存储服务所需完成的工作中,除需要所述控制模块响应完成的工作之外的其他全部工作。

优选的,控制所述目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,包括:

控制所述目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,所述状态信息包括启动状态、所属存储节点、ip地址及端口。

一种分布式文件系统存储单元的启动装置,包括:

确定模块,用于:当所述分布式文件系统中任一存储单元的主进程进行启动时,确定该任一存储单元为目标单元,该目标单元所属的存储节点为目标节点;

判断模块,用于:判断所述目标单元的主进程进行的启动是否为所述目标节点启动引发的自启动,如果是,则控制所述目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,如果否,则确定无需对所述状态信息的上报进行时间控制。

优选的,所述判断模块包括:

判断单元,用于:获取所述目标单元的主进程开始启动的时刻与所述目标节点的操作系统开始启动的时刻之间的时间间隔,并判断该时间间隔是否小于预设时间间隔,如果是,则确定所述目标单元的主进程进行的启动是为所述目标节点启动引发的自启动,如果否,则确定所述目标单元的主进程进行的启动不是为所述目标节点启动引发的自启动。

优选的,还包括:

控制模块,用于:在所述目标节点上各存储单元等待所述预定时间的过程中,控制各存储单元的主进程完成预设准备工作;其中,所述预设准备工作包括对应存储单元能够提供存储服务所需完成的工作中,除需要所述控制模块响应完成的工作之外的其他全部工作。

优选的,所述判断模块包括:

上报单元,用于:控制所述目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,所述状态信息包括启动状态、所属存储节点、ip地址及端口。

一种分布式文件系统存储单元的启动设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上任一项所述分布式文件系统存储单元的启动方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述分布式文件系统存储单元的启动方法的步骤。

本发明提供了一种分布式文件系统存储单元的启动方法、装置、设备及计算机可读存储介质,其中,该方法包括:当所述分布式文件系统中任一存储单元的主进程进行启动时,确定该任一存储单元为目标单元,该目标单元所属的存储节点为目标节点;判断所述目标单元的主进程进行的启动是否为所述目标节点启动引发的自启动,如果是,则控制所述目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,如果否,则确定无需对所述状态信息的上报进行时间控制。本申请公开的技术方案中,在分布式文件系统中任一存储单元的主进程进行启动成为目标单元时,如果目标单元的主进行启动为其所属的目标节点启动引发的自启动,则说明目标节点上全部存储单元均需启动,此时控制全部存储单元在同一时间(预定时间)实现状态信息上报,从而使得监控模块仅需基于各存储单元上报的状态信息实现一次存储单元列表的更新即可,相对于现有技术中存储单元列表在存储节点启动的一段时间内多次、无规律的更新变化,有效降低了存储单元列表的更新频率,进而大大提高了存储单元提供服务的效率,提升了分布式文件系统的系统性能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种分布式文件系统存储单元的启动方法的流程图;

图2为本发明实施例提供的一种分布式文件系统存储单元的启动装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,其示出了本发明实施例提供的一种分布式文件系统存储单元的启动方法的流程图,可以包括:

s11:当分布式文件系统中任一存储单元的主进程进行启动时,确定该任一存储单元为目标单元,该目标单元所属的存储节点为目标节点。

本发明实施例提供的一种分布式文件系统存储单元的启动方法的执行主语可以为对应的执行装置,而该装置可以设置于分布式文件系统中,因此,本发明实施例提供的上述方法的执行主语可以为分布式文件系统。存储单元的主线程与现有技术中对应概念的定义相同,而存储单元的主线程启动即为存储单元启动,本申请中任一进行启动的存储单元均可作为目标单元,目标单元所属的存储节点为目标节点。

s12:判断目标单元的主进程进行的启动是否为目标节点启动引发的自启动,如果是,则控制目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,如果否,则确定无需对状态信息的上报进行时间控制。

由于存储节点启动后该存储节点包括的全部存储单元都会自启动,本申请中如果目标单元的主进程进行的启动是目标节点启动引发的自启动,即目标节点启动引发目标单元启动,此时目标节点上全部存储单元均需要进行启动,将全部存储单元发送状态信息的时间均定在根据实际需要设定的预定时间,由此,监控模块能够同时接收到目标节点上全部存储单元的状态信息,进而基于接收到的状态信息实现存储单元列表的更新即可;如果目标单元的主进程进行的启动不是目标节点启动引发的自启动,即目标单元自身需要启动,此时仅需考虑目标单元的启动及状态信息上报即可,因此无需控制状态信息的上报时间,而是由目标单元按照其自身启动状态实现状态信息上报即可,由此,在目标节点上全部存储单元均需启动时通过对状态信息上报的时间的控制,使得全部存储单元在同一时间实现状态信息上报,进而使得监控模块仅需基于上报的全部状态信息实现一次存储单元列表的信息更新即可,而仅在目标单元需启动时按照现有技术中不对其状态信息上报的时间进程控制,而是由目标节点按照自身启动状态实现状态信息上报即可。

本申请公开的技术方案中,在分布式文件系统中任一存储单元的主进程进行启动成为目标单元时,如果目标单元的主进行启动为其所属的目标节点启动引发的自启动,则说明目标节点上全部存储单元均需启动,此时控制全部存储单元在同一时间(预定时间)实现状态信息上报,从而使得监控模块仅需基于各存储单元上报的状态信息实现一次存储单元列表的更新即可,相对于现有技术中存储单元列表在存储节点启动的一段时间内多次、无规律的更新变化,有效降低了存储单元列表的更新频率,进而大大提高了存储单元提供服务的效率,提升了分布式文件系统的系统性能。

另外,本申请公开的技术方案中,在判断出目标单元的启动并不是目标节点引发的自启动,即目标单元的启动为自身的启动行为时,确定无需控制目标单元上报状态信息的时间,从而既通过约定由存储节点的启动引起的自启动的全部存储单元的状态信息的上报时间,减少了存储单元列表更新的频率,降低了存储节点启动时对分布式文件系统的冲击;又保留了原因正常情况下存储单元的启动,各个情况都得以兼顾,可适用于对应的不同场景,灵活通用。

本发明实施例提供的一种分布式文件系统存储单元的启动方法,判断目标单元的主进程进行的启动是否为目标节点启动引发的自启动,可以包括:

获取目标单元的主进程开始启动的时刻与目标节点的操作系统开始启动的时刻之间的时间间隔,并判断该时间间隔是否小于预设时间间隔,如果是,则确定目标单元的主进程进行的启动是为目标节点启动引发的自启动,如果否,则确定目标单元的主进程进行的启动不是为目标节点启动引发的自启动。

其中,预设时间间隔可以根据实际需要进行设定,如5分钟,目标节点的操作系统启动即为目标节点启动。对于任一存储节点及位于该存储节点上的存储单元来说,当存储节点启动时,存储节点的操作系统启动本身是需要一定的时间的,并且在存储节点的操作系统启动完成后,存储单元的主进程会随存储节点的操作启动的启动而自启动,因此,如果是存储节点启动引发的存储单元自启动,则存储节点开始启动至启动完成这段时间后存储单元即会开始启动,也即存储节点的操作系统启动开始时刻与存储单元的主进程启动开始时间之间的时间间隔是在一定时间内的,对应的预设时间间隔为略大于目标节点的操作系统启动所需时间的值,所以,如果目标单元的主进程开始启动的时间与目标节点的操作系统启动完成时间间的时间间隔小于预设时间间隔,则说明目标单元的启动是随目标节点的启动而引发的自启动,否则,则认为目标单元的启动不是随目标节点的启动而引发的自启动,而仅是自己的启动行为,因此无需与目标节点上其他存储单元协同上报状态信息。由此能够基于目标单元及目标节点的启动之间间隔的时间有效辨别出目标单元的启动是否为目标节点的启动引发的自启动。当然还可以根据实际需要按照其他方式进行上述辨别,均在本发明的保护范围之内。

本发明实施例提供的一种分布式文件系统存储单元的启动方法,还可以包括:

在目标节点上各存储单元等待预定时间的过程中,控制各存储单元的主进程完成预设准备工作;其中,预设准备工作包括对应存储单元能够提供存储服务所需完成的工作中,除需要控制模块响应完成的工作之外的其他全部工作。

需要说明的是,存储单元的启动过程中有些工作是需要上报状态信息给控制模块后,得到控制模块基于收到的状态信息返回的响应后才能实现的,因此本申请中设定目标节点的启动过程中除了这部分工作外的其他工作均为预设准备工作,如预设准备工作可以包括数据校验、元数据加载、数据梳理等;在上报状态信息之前将预设准备工作全部完成,能够在得到控制模块基于状态信息返回的响应后以最快速度使得目标单元进入正常工作状态,以尽快提供数据存储服务,进一步提升了系统性能。

本发明实施例提供的一种分布式文件系统存储单元的启动方法,控制目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,可以包括:

控制目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,状态信息包括启动状态、所属存储节点、ip地址及端口。

其中,启动状态可以包括已经完成的启动工作及未完成的启动工作对应的标识,所属存储节点可以是所属存储节点的标识,ip地址为存储单元自身的ip地址,端口为存储单元与外界其他设备实现通讯的端口,当然可以根据实际需要将其他数据加入至状态信息中,从而使得监控模块能够基于获取的状态信息快速方便的实现信息更新及响应。

本发明实施例还提供了一种分布式文件系统存储单元的启动装置,如图2所示,可以包括:

确定模块11,用于:当分布式文件系统中任一存储单元的主进程进行启动时,确定该任一存储单元为目标单元,该目标单元所属的存储节点为目标节点;

判断模块12,用于:判断目标单元的主进程进行的启动是否为目标节点启动引发的自启动,如果是,则控制目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,如果否,则确定无需对状态信息的上报进行时间控制。

本发明实施例提供的一种分布式文件系统存储单元的启动装置,判断模块可以包括:

判断单元,用于:获取目标单元的主进程开始启动的时刻与目标节点的操作系统开始启动的时刻之间的时间间隔,并判断该时间间隔是否小于预设时间间隔,如果是,则确定目标单元的主进程进行的启动是为目标节点启动引发的自启动,如果否,则确定目标单元的主进程进行的启动不是为目标节点启动引发的自启动。

本发明实施例提供的一种分布式文件系统存储单元的启动装置,还可以包括:

控制模块,用于:在目标节点上各存储单元等待预定时间的过程中,控制各存储单元的主进程完成预设准备工作;其中,预设准备工作包括对应存储单元能够提供存储服务所需完成的工作中,除需要控制模块响应完成的工作之外的其他全部工作。

本发明实施例提供的一种分布式文件系统存储单元的启动装置,判断模块可以包括:

上报单元,用于:控制目标节点上全部存储单元均在预定时间将各自的状态信息上报给控制模块,状态信息包括启动状态、所属存储节点、ip地址及端口。

本发明实施例还提供了一种分布式文件系统存储单元的启动设备,可以包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上任一项分布式文件系统存储单元的启动方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任一项分布式文件系统存储单元的启动方法的步骤。

需要说明的是,本发明实施例提供的一种分布式文件系统存储单元的启动装置、设备及计算机可读存储介质中相关部分的说明请参见本发明实施例提供的一种分布式文件系统存储单元的启动方法中对应部分的详细说明,在此不再赘述。另外本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1