一种采集数据的分布式集群系统及数据采集方法与流程

文档序号:13075420阅读:559来源:国知局
一种采集数据的分布式集群系统及数据采集方法与流程

本发明涉及大数据领域,特别涉及一种采集数据的分布式集群系统及数据采集方法。



背景技术:

随着大数据的广泛应用,针对海量数据的挖掘与分析已经成为当今的研究热点,而数据采集是大数据挖掘和分析的基础。因此一个有效的数据采集方案对大数据挖掘研究具有重要的意义。

现有技术中,分布式集群数据采集系统一般采用分布式采集方式,分布式采集系统采用由一个主采集节点和若干个子节点组成。其中主采集节点是系统的控制核心,负责整个系统数据采集控制、数据存储、系统管理等,子节点可以自动的根据配置信息完成数据采集动作,实现子节点所在设备的数据采集功能。主节点通过统一的扫描频率定时轮询子节点,读取子节点中采集到的信息,反馈到整个集群系统。在集群规模较小的情况下,主节点能够较好的收集各个子节点的数据。但是当集群规模达到大量的节点时,将会导致严重的数据i/o操作问题,从而使集群无法正常运行。另一方面,当主节点出现异常时,整个集群的数据采集系统也将崩溃。

因此,如何解决分布式集群规模较大时导致的数据i/o操作问题是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种采集数据的分布式集群系统及数据采集方法,解决了分布式集群规模较大时导致的数据i/o操作的问题。

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

一方面,本发明实施例提供了一种采集数据的分布式集群系统,包括:

呈树形结构排列的子节点、n层父节点和根节点;其中,n为大于零的正整数;所述n层父节点用于将所述子节点采集的数据传送至所述根节点,与子节点相连的最后一层父节点的数量小于子节点的数量。

优选的,每个子节点具有监测与各所述子节点相连的父节点工作状态的第一监控模块,当子节点监测到与所述子节点相连的父节点的工作状态异常时,启动所述子节点的数据收集功能并替换工作状态异常的父节点。

优选的,与所述根节点相连的第一层父节点具有监测所述根节点工作状态的第二监控模块,当第一层父节点监测到所述根节点的工作状态异常时,利用第一层父节点中的父节点替换工作状态异常的根节点。

优选的,每层父节点具有监测与每层父节点相连的上一层父节点工作状态的第三监控模块,当每层父节点监测到上一层父节点工作状态异常时,利用与上一层父节点连接的下一层父节点中的父节点替换上一层父节点中的工作状态异常的父节点。

另一方面,本发明实施例提供了一种分布式集群数据采集方法,包括:

分布式集群中的各个子节点根据预设的采样频率采集数据;其中,所述分布式集群中的子节点、n层父节点和根节点呈树形结构排列;n为大于零的正整数;与子节点相连的最后一层父节点的数量小于子节点的数量;

所述n层父节点将各个子节点采集的数据传送至所述根节点。

优选的,若所述n为2时,则所述n层父节点将各个子节点采集的数据传送至所述根节点包括:

第一层父节点中的每个父节点从相连的子节点中收集数据,并将收集的数据传送至与所述第一层父节点中的每个父节点相连的第二层父节点;所述第二层父节点将所述数据传送至与所述第二层父节点的每个父节点相连的根节点。

优选的,还包括:子节点的第一监控模块监测与所述子节点相连的父节点工作状态是否异常;如果是,则启动所述子节点的数据收集功能并替换工作状态异常的父节点。

优选的,还包括:第一层父节点的第二监控模块监测与所述第一层父节点相连的根节点工作状态是否异常;如果是,则利用所述第一层父节点中的父节点替换工作状态异常的根节点。

优选的,还包括:每层父节点的第三监控模块监测与每层父节点相连的上一层父节点工作状态是否异常;如果是,则利用与所述上一层父节点连接的下一层父节点中的父节点替换上一层父节点中的工作状态异常的父节点。

可见,本发明实施例提供的一种采集数据的分布式集群系统,通过在根节点和子节点之间增加父节点的方式,构造了多层次的数据采集结构,当子节点采集到数据之后,不直接将该数据传送至根节点,而是先传送至父节点,由父节点再传送至根节点;此时,n层父节点中的每层父节点数量由上往下依次减小,最后一层父节点中的节点数量小于子节点数量;因此,在集群规模达到很大时,避免了根节点遍历每个子节点而造成数据i/o操作问题。本发明还公开了一种分布式集群数据采集方法,同样能实现上述技术效果。

附图说明

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

图1为本发明实施例公开的一种采集数据的分布式集群系统结构示意图;

图2为本发明实施例公开的另一种采集数据的分布式集群系统结构示意图;

图3为本发明实施例公开的一种分布式集群数据采集方法流程示意图。

具体实施方式

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

本发明实施例公开了一种采集数据的分布式集群系统,解决了分布式集群规模较大时导致的数据i/o操作的问题。

请参见图1,图1为本发明实施例提供的一种采集数据的分布式集群系统,包括:呈树形结构排列的子节点30、n层父节点20和根节点10;其中,n为大于零的正整数;所述n层父节点20用于将所述子节点30采集的数据传送至所述根节点10,与子节点30相连的最后一层父节点的数量小于子节点30的数量。

具体的,本实施例中,n层父节点20可以包括一层父节点或多层父节点;每一层父节点包括多个父节点,在此父节点数量不作限定。其中,n层父节点20的第一层父节点的每个节点都与根节点10连接,n层父节点20的最后一层父节点的每个节点与对应的子节点30连接,每一个子节点都只对应连接n层父节点20的最后一层父节点的中的唯一的父节点,其中,子节点的数量在此不作限定。其中,子节点30用于根据预定的规则采集数据,预定的规则可以是默认的采集频率,例如,每60秒采集一次数据;子节点30将采集的数据传送至n层父节点20,n层父节点20接收到子节点30采集的数据后,根节点10根据预定规则遍历与根节点相连的父节点,收集各父节点的数据。

需要说明的是,本实施例中的与子节点相连的最后一层父节点的数量小于子节点的数量,与最后一层父节点连接的上一层父节点的数量小于最后一层的父节点数量,依次类推。

可见,本发明实施例中,通过在根节点和子节点之间增加父节点的方式,构造了多层次的数据采集结构,当子节点采集到数据之后,不直接将该数据传送至根节点,而是先传送至父节点,由父节点再传送至根节点;因此,在集群规模达到很大时,避免了根节点遍询每个子节点而造成数据i/o操作问题。

请参见图2,图2为本发明实施例提供的另一种采集数据的分布式集群系统,包括:呈树形结构排列的子节点30、n层父节点20和根节点10;其中,n为大于零的正整数;所述n层父节点20用于将所述子节点30采集的数据传送至所述根节点10,与子节点30相连的最后一层父节点的数量小于子节点30的数量。

每个子节点具有监测与各所述子节点相连的父节点工作状态的第一监控模块301,当子节点监测到与所述子节点相连的父节点的工作状态异常时,启动数据收集功能并替换工作状态异常的父节点。

与根节点相连的第一层父节点具有监测所述根节点工作状态的第二监控模块201,当第一层父节点监测到所述根节点10的工作状态异常时,利用第一层父节点中的父节点替换工作状态异常的根节点10。

具体的,本实施例中的第一监控模块301为监测与各个子节点相连的n层父节点20的最后一层父节点工作状态的监控模块;其中,其可以通过设定父节点正常工作的阈值对各子节点唯一对应连接的父节点进行监控,例如,若父节点收集子节点采集的数据正常工作频率为50至60秒之间进行一次数据采集,父节点收集数据的工作频率在50秒至60秒范围之外,则为异常工作。当该第一监控模块301监测到与子节点连接的父节点的工作状态异常时,启动子节点的数据收集功能,以替代与之相连的异常父节点进行数据收集。当然,也可以通过其他形式对父节点进行监控设置,例如在此并不作限定。

进一步,本实施例中的n层父节点20中的第一层父节点的每个父节点的第二监控模块201为监测与第一层父节点的每个父节点相连的根节点的工作状态的监控模块;其中,当根节点10工作状态异常时,可以根据管理员设定的与根节点10相连的父节点的优先级替换异常的根节点,利用替换为根节点的父节点收集其他父节点传送的数据;其中,具体的根节点的工作状态的设置与上述方法类同,在此不再赘述。

需要说明的是,本实施例中的用来替代异常的父节点的子节点可以优先设定,即管理员可以对每一个子节点进行优先级配置,当与子节点相连的父节点出现异常时,可以根据与该异常父节点相连的子节点的设置优先级替换;例如,与父节点连接的第一子节点、第二子节点、第三子节点,其中,第一子节点、第二子节点、第三子节点由管理员依次根据唯一标识并进行优先级设定,当该父节点异常时,根据子节点的优先级,应用优先级最高的第一子节点替换该异常的父节点。用第一子节点收集与该异常的父节点相连的第二子节点和第三子节点采集的数据;并且由第二子节点或第三子节点监控第一子节点的工作状态,当第二子节点或第三子节点监测到第一子节点的工作状态异常时,根据管理员设定的优先级,由第二子节点替换该异常的第一子节点,启动该第二子节点的数据收集功能,对第三子节点采集的数据进行收集。当然,子节点替换父节点的顺序也可以通过其他方式进行设定,在此并不作限定。

进一步,与根节点10连接的n层父节点20的第一层父节点替换根节点的顺序与上述子节点替换父节点的设置方式类同,在此不再赘述。

可见,本发明实施例中,通过对与父节点相连的子节点设置监控模块,监控与该子节点相连的父节点的工作状态,当父节点出现异常时,用与父节点相连的子节点替换异常的父节点进行数据收集,避免了因父节点异常导致的子节点数据收集失败的问题。同时,对与根节点连接的每个父节点配置监控模块,当根节点工作异常时,避免了整个数据采集系统的瘫痪。

基于上述实施例,在本实施例中,每层父节点具有监测与每层父节点相连的上一层父节点工作状态的第三监控模块,当每层父节点监测到上一层父节点工作状态异常时,利用与上一层父节点连接的下一层父节点中的父节点替换上一层父节点中的工作状态异常的父节点。

具体的,本实施例中的第三监控模块为n层父节点20的监控与当前层父节点连接上一层父节点工作状态的监测模块;例如,n层父节点20具有第一父节点、第二父节点;第二父节点具有监控第一父节点的第三监控模块,当第一父节点中的父节点工作异常时,与第一父节点中的异常的父节点相连的第二父节点中的父节点监控到该工作异常的父节点,利用与该第一父节点中的异常父节点相连的第二父节点中的父节点替换该第一父节点中的异常父节点。

可见,本实施例中,n层父节点20的每层父节点都具有监控模块,以监控与各层父节点相连的上一层父节点的工作状态,当上一层父节点中的父节点工作状态异常时,用该层父节点中的父节点替换上一层父节点中的父节点。从而保证子节点采集的数据的正常的传送。

参见图3,本发明实施例提供的一种分布式集群数据采集方法,包括:

s101、分布式集群中的各个子节点根据预设的采样频率采集数据;其中,所述分布式集群中的子节点、n层父节点和根节点呈树形结构排列;n为大于零的正整数;与子节点相连的最后一层父节点的数量小于子节点的数量。

具体的,本实施例中的采样频率为管理员预先设定的采集数据的频率,例如,每60秒采集一次数据,则子节点预设的采样频率即为60秒。

s102、所述n层父节点将各个子节点采集的数据传送至所述根节点。

具体的,本实施例中的n层父节点根据预定的规则依次遍询整个子节点,将子节点的数据进行收集,再传送至根节点;其中,n层父节点收集子节点的数据时,是逐层进行的;例如,n层父节点有3层父节点,分别为第一层父节点、第二层父节点和第三层父节点,最后一层父节点第三层父节点将与之对应连接的子节点的数据收集后,传送至与第三层父节点连接的第二层父节点,第二层父节点将数据再传送至与之相连的第一层父节点,第一层父节点再将数据传送至根节点。

需要说明的是,n层父节点由上往下,其每一层的父节点数量依次减小,最后一层父节点中的父节点数量小于与之相连的子节点的数量。

可见,本实施例提供的一种分布式集群数据采集方法,通过在根节点和子节点之间增加父节点的方式,构造了多层次的数据采集结构,当子节点采集到数据之后,不会直接将该数据传送至根节点,而是先传送至父节点,由父节点再传送至根节点;因此,在集群规模达到很大时,避免了根节点遍询每个子节点而造成数据i/o操作问题。

基于上述实施例,在本实施例中,若所述n为2时,则所述n层父节点将各个子节点采集的数据传送至所述根节点包括:

第一层父节点中的每个父节点从相连的子节点中收集数据,并将收集的数据传送至与所述第一层父节点中的每个父节点相连的第二层父节点;所述第二层父节点将所述数据传送至与所述第二层父节点的每个父节点相连的根节点。

基于上述实施例,在本实施例中,还包括:

子节点的第一监控模块监测与所述子节点相连的父节点工作状态是否异常;如果是,则启动所述子节点的数据收集功能并替换工作状态异常的父节点。

具体的,本实施例中的第一监控模块在上述已经详细赘述,在此并不作限定。若第一监控模块监测到与子节点相连的父节点工作状态为正常工作时,则继续保持该子节点采集数据。其中,每一个父节点下连接的子节点的数量可以相同,当然也可以不同;在此并不作限定。例如,与子节点相连的最后一层父节点中的第一父节点和第二父节点,第一父节点下连接有5个子节点,第二父节点下连接有4个子节点;当然也可以为第一子节点和第二子节点下都连接有5个子节点。

可见,本实施例中,通过对与父节点相连的子节点设置监控模块,监控与该子节点相连的父节点的工作状态,当父节点出现异常时,用与父节点相连的子节点替换异常的父节点进行数据收集,避免了因父节点异常导致的子节点数据收集失败的问题。

基于上述实施例,在本实施例中还包括:第一层父节点的第二监控模块监测与所述第一层父节点相连的根节点工作状态是否异常;如果是,则利用所述第一层父节点中的父节点替换工作状态异常的根节点。

可见,本实施例中,通过对与根节点连接的每个父节点配置监控模块,当根节点工作异常时,避免了整个数据采集系统的瘫痪。

基于上述实施例,在本实施例中,还包括:

每层父节点的第三监控模块监测与每层父节点相连的上一层父节点工作状态是否异常;如果是,则利用与所述上一层父节点连接的下一层父节点中的父节点替换上一层父节点中的工作状态异常的父节点。

可见,本实施例中,每层父节点都具有监控模块,以监控与各层父节点相连的上一层父节点的工作状态,当上一层父节点中的父节点工作状态异常时,用该层父节点中的父节点替换上一层父节点中的父节点。从而保证子节点采集的数据的正常的传送。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

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

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