欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 数据采集方法、装置、电子设备及存储介质独创技术32555字

数据采集方法、装置、电子设备及存储介质

2021-03-02 17:58:42

数据采集方法、装置、电子设备及存储介质

  技术领域

  本申请涉及计算机网络技术领域,具体而言,涉及一种数据采集方法、装置、电子设备及存储介质。

  背景技术

  采用ipmitool工具来采集电子设备中的IPMI节点的目标数据,需要自己实现多线程大并发采集IPMI节点的目标数据。ipmitool采集IPMI节点的目标数据的效率比较低,对采集IPMI信息没有进行很好的优化,在大规模集群的情况下,如果用ipmitool采集IPMI信息,就会发现一次采集所有节点的IPMI信息花费时间很长,效率较低。

  针对上述问题,目前尚未有有效的技术解决方案。

  发明内容

  本申请实施例的目的在于提供一种数据采集方法、装置、电子设备及存储介质,可以提高目标数据的采集效率。

  第一方面,本申请实施例提供了一种数据采集方法,用于电子设备中,以对多个从设备的IPMI节点进行目标数据采集,所述方法包括:

  获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备;

  根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点;

  建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集。

  本申请实施例采用先将不可用的IPMI节点剔除,然后采用并行方式对多个可用的目标IPMI节点进行目标数据的采集,可以提高效率。

  可选地,在本申请实施例所述的数据采集方法中,所述建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,包括:

  将所述多个目标IPMI节点分为多个第一集合,每一所述第一集合包括多个目标IPMI节点;

  针对每一所述第一集合,建立多个线程,并以并行方式运行所述多个线程,以采集每一所述第一集合内的多个目标IPMI节点,每一线程用于对一个目标IPMI节点进行数据采集。

  本申请实施例通过将多个目标IPMI节点分组,并针对每一分组建立多个并行的线程,从而实现目标数据的快速采集,避免由于线程数量过多影响电子设备的性能,导致采集速度过慢,可以提高效率。

  可选地,在本申请实施例所述的数据采集方法中,所述将所述多个目标IPMI节点分为多个第一集合,包括:

  获取每一所述从设备的类型信息,并根据所述类型信息获取每一所述目标IPMI节点的目标数据的格式信息;

  根据每一所述目标数据的格式信息将所述多个目标IPMI节点分为多个第一集合。

  本申请实施例通过从设备的类型信息来进行分组,便于用于采集对应IPMI节点的目标数据的基本参数配置,针对一个第一集合只需要配置一次,进而可以提高效率。

  可选地,在本申请实施例所述的数据采集方法中,所述将所述多个目标IPMI节点分为多个第一集合,包括:

  获取每一所述目标IPMI节点的目标数据的数据量信息;

  根据所述数据量信息将所述多个目标IPMI节点分为多个第一集合,在同一所述第一集合内,任意两个目标IPMI节点的目标数据的数据量的差值小于第一预设阈值。

  本申请实施例基于数据量信息进行第一集合的划分,避免同一集合内的目标IPMI节点对应的目标数据的数据量差距过大,使得所需时间趋于均匀,从而可以提高该多个线程的利用率,可以提高效率。

  可选地,在本申请实施例所述的数据采集方法中,所述建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,包括:

  将所述多个目标IPMI节点分为多个第二集合,每一所述第二集合包括多个目标IPMI节点;

  建立多个线程,所述多个线程与所述多个第二集合一一对应;

  采用并行方式运行所述多个线程,使得每一所述线程以串行地方式对对应第二集合内的多个目标IPMI节点进行目标数据采集。

  本申请实施例通过针对同一第二集合建立一个线程,从而减少了所需线程的总数量,可以节约时间,从而大大提高效率。

  可选地,在本申请实施例所述的数据采集方法中,每一所述第二集合内的目标IPMI节点的目标数据具有相同的数据类型,任意两个第二集合内的对应的目标数据的总数据量的差值小于第二预设阈值。

  可选地,在本申请实施例所述的数据采集方法中,所述根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点,包括:

  根据第一预设策略将所述多个IPMI节点分成多个分组,每一所述分组包括多个IPMI节点,同一所述分组内的IPMI节点的目标数据的格式相同;

  根据每一所述分组的多个IPMI节点的节点标识发送查询指令至对应IPMI节点以判断每一IPMI节点的可用性,并将可用的IPMI节点设置为目标IPMI节点。

  第二方面,本申请实施例还提供了一种数据采集装置,用于电子设备中,以对多个从设备的IPMI节点进行硬件信息采集,所述装置包括:

  获取模块,用于获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备;

  筛选模块,用于根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点;

  采集模块,用于建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集。

  第三方面,本申请实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。

  第四方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。

  由上可知,本申请实施例提供的数据采集方法及装置通过获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备;根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点;建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集从而实现对多个从设备的目标数据的快速采集,可以提高效率。

  本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

  附图说明

  为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

  图1为本申请实施例提供的数据采集方法的一种流程图。

  图2为本申请实施例提供的数据采集装置的一种结构示意图。

  图3为本申请实施例提供的电子设备的结构示意图。

  具体实施方式

  下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

  应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

  请参照图1,图1是本申请一些实施例中的一种数据采集方法的流程图。该方法用于电子设备中,以对多个从设备的IPMI节点进行硬件信息采集,其中,该电子设备可以为服务器或者终端设备。

  其中,该数据采集方法包括以下步骤:

  S101、获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备。

  S102、根据多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点;

  S103、建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集。

  其中,在该步骤S101中,IPMI是指(Intelligent PlatformManagementInterface,简称IPMI)智能平台管理接口。该多个从设备与该电子设备处于同一个预先建立的群组内。每一从设备上均设置有对应的IPMI节点,以便于该电子设备通过该IPMI节点来采集对应从设备的硬件信息,也即是目标数据。其中,该目标数据可以包括硬件的基本配置信息,还可以包括硬件运行参数信息,例如某一从设备为路由器,对应的,该目标数据可以包括该路由器的上行及下行流量信息、与通过该路由器进行上网的终端个数、每一终端的标识信息、该路由器的一些基本配置参数等。当然,其并不限于此。

  其中,在该步骤S102中,通过对每一从设备对应的IPMI节点发送查询指令,以判断每一IPMI节点的可用性,也即判断每一IPMI节点是否可以正常信息采集。可以理解地,在进行查询时,首先,该电子设备向每一IPMI节点发送查询指令,然后等待接收每一IPMI节点的反馈信息。若预设时间内未收到某一IPMI节点的反馈信息,则判断该IPMI节点为不可用。对于在预设时间内返回了反馈信息的IPMI节点,还需要对反馈信息进行查询及分析,以判断对应的IPMI节点当前是否可用状态,也即是当前是否处于可以采集目标数据的状态。

  在一些实施例中,该步骤S102可以包括以下子步骤:S1021、将所述多个IPMI节点分成多个分组;S1022、根据每一所述分组的多个IPMI节点的节点标识发送查询指令至对应IPMI节点以判断每一IPMI节点的可用性,并将可用的IPMI节点设置为目标IPMI节点。其中,在该步骤S1021中,可以依据IPMI节点对应的从设备的类型来进行分组,同一类型的从设备的IPMI节点分在同一组。当然,也可以进行平均分组,每一组具有相同数量的IPMI节点。其中,在该步骤S1022中,可以建立多个线程,从而并行查询每一IPMI节点的可用性。检查完毕后,生成一个可用节点列表以及一个不可用节点列表,将所有不可用的IMPI节点的节点标识放入不可用节点列表中,将所有可用的IMPI节点的节点标识放入可用节点列表中。

  可以理解地,在查询时,可以设置一个检查窗口,将每分组内的IPMI节点的节点标识放入其中,检查窗口的大小分为1024、2048、4096等。当节点列表内的IPMI节点的数量小于或等于1024时,设置检查窗口大小为1024,也即是该节点列表的内的IPMI节点可以一起放入该检查窗口进行检测。当节点列表上的IPMI节点的数量大于1024且小于4096时,设置窗口大小为2048。可以采用两次来对该多个IPMI节点进行检测。当节点列表上的IPMI节点的数量大于或等于4096时,设置窗口的大小为4096。检查窗口大小不再无限增大主要是考虑窗口增大后查询IPMI节点可用性的效率会变低。检查窗口的输入信息是节点列表中的节点,输出信息是可用的IPMI节点列表和不可用的IPMI节点列表两个列表。

  其中,在该步骤S103中,可以采用多种方式来实现对该多个目标IPMI节点的目标数据进行采集。尽量对目标IPMI节点以并行方式进行数据采集,以提高效率。当然,由于电子设备本身的性能限制,一次可以同时运行的线程数量不可能无限大,线程数量超过一定数量后会使得整体的运行效率急速下降,从而影响目标数据的采集,还会影响该电子设备的其他工作。

  在一些实施例中,该步骤S103可以包括以下子步骤:S1031、将所述多个目标IPMI节点分为多个第一集合,每一所述第一集合包括多个目标IPMI节点;S1032、针对每一所述第一集合,建立多个线程,并以并行方式运行所述多个线程,以采集每一所述第一集合内的多个目标IPMI节点的目标数据,每一所述线程用于对一个目标IPMI节点进行数据采集。

  其中,在该步骤S1031中,每一第一集合内的目标IPMI节点的数量要小于该电子设备可同时运行的线程的数量。可以基于每一目标IPMI节点对应的从设备的类型来进行划分,具体可以根据每一从设备的目标数据的格式信息进行划分,或者也可以根据目标数据的数据量进行划分,从而提高数据采集的效率。

  具体地,在一些实施例中,该步骤S1031可以包括:S10311、获取每一所述从设备的类型信息,并根据所述类型信息获取每一所述目标IPMI节点的目标数据的格式信息;S10312、根据每一所述目标数据的格式信息将所述多个目标IPMI节点分为多个第一集合,每一所述第一集合包括多个目标IPMI节点。由于不同类型的从设备具有不同格式的目标数据,因此,为了保证同一批并行执行的线程可以更高效地完成对同一第一集合内的各个目标IPMI节点的数据采集,将具有相同格式的目标数据的目标IPMI节点放在同一批并行执行的线程中,在建立线程时,可以采用具有相同类型的配置参数的线程来对同一第一集合中的目标IPMI节点进行数据采集,从而可以提高效率。

  在另一些实施例中,该步骤S1031可以包括:S10313获取每一所述目标IPMI节点的目标数据的数据量信息;S10314根据数据量信息将多个目标IPMI节点分为多个第一集合,在同一所述第一集合内,任意两个目标IPMI节点的目标数据的数据量的差值小于第一预设阈值。其中,该第一预设阈值可以设置为某一固定值,例如x1KB。第一预设阈值也可以设置动态值,该第一预设阈值的大小与每一从设备的通信速度相关,以保证采集各个第一集合内的IPMI节点的目标数据所用的时间差不多。也即是同一第一集合内的任意两个目标IPMI节点的目标数据的采集工作耗时的差值小于5秒。其中,在该步骤S10313中,可以根据历史记录中的每一目标IPMI节点的目标数据的采集记录,得出每一目标IPMI节点的目标数据的大致数据量。当然,也可以通过其他常见方式来估算每一目标IPMI节点的目标数据的大致数据量。其中,在该步骤S10314中,较佳的方案是将具有相同数据量的目标IPMI节点划分到同一组,但是考虑到不可能完全相同,因此,可以设定一个第一预设阈值,保证在同一所述第一集合内,任意两个目标IPMI节点的目标数据量小于该第一预设阈值,从而使得同一批线程在执行时,可以以差不多的时间完成,然后可以更快地进入下一批线程的建立,从而完成对下一批的目标IPMI节点的目标数据的采集,从而可以提高效率。

  其中,在该步骤S1032中,例如,该第一集合内具有50个目标IPMI节点,则同时启动50个线程进行并行运行,从而实现对该50个目标IPMI节点的目标数据的快速采集。

  可以理解地,在另一些实施例中,该步骤S103包括以下步骤:S1033、将所述多个目标IPMI节点分为多个第二集合,每一所述第二集合包括多个目标IPMI节点;S1034、建立多个线程,所述多个线程与所述多个第二集合一一对应;S1035、并行运行所述多个线程,以使得每一所述线程以串行地方式对对应第二集合内的多个目标IPMI节点进行目标数据采集。其中,每一所述第二集合内的目标IPMI节点的目标数据具有相同的数据类型,所述任意两个第二集合内的对应的目标数据的总数据量的差值小于第二预设阈值。其中,该第二预设阈值可以是一个固定量,例如设定为x2KB,也可以是根据各个从设备的传输速率设置的动态阈值,以保证各个第二集合中的目标数据的采集操作的总耗时差距较小。当然,采用这种方式进行划分时,尽量保证各个第二集合内的目标数据的总数据量大致相同,从而保证多个线程可以尽可能长时间的并行运行。另外,还需要保证同一第二集合内的目标数据的格式信息相同,当然,由于数量不可能完全均衡,对于某些第二集合,可以对几个具有不同类型的目标数据的目标IPMI节点进行数据采集。

  可以理解地,在一些实施例中,如果目标IPMI节点的数量较大,例如目标IPMI节点的数量为1000个,该电子设备每次只能同时运行100个线程,因此,可以先建立100个线程来执行对100个目标IPMI节点的目标数据的采集,执行完毕后,再建立另外100个线程来执行对其他100个目标IPMI节点的目标数据的采集,直至将该1000个目标IPMI节点的目标数据采集完毕。

  由上可知,本申请实施例提供的数据采集方法通过获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备;根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点;建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集从而实现对多个从设备的目标数据的快速采集,可以提高效率。

  请参照图2,图2是本申请一些实施例中的一种数据采集装置的结构示意图,数据采集装置用于电子设备中,以对多个从设备的IPMI节点进行硬件信息采集,该装置包括:获取模块201、筛选模块202以及采集模块203。

  其中,该获取模块201用于获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备。该多个从设备与该电子设备处于同一个预先建立的群组内。每一个从设备上均设置有对应的IPMI节点,从而以便于使得该电子设备通过该IPMI节点来采集对应从设备的硬件信息,也即是目标数据。其中,该目标数据可以包括硬件的基本配置信息,还可以包括硬件运行参数信息,例如某一从设备为路由器,对应的,该目标数据可以包括该路由器的上行及下行流量信息、与通过该路由器进行上网的终端个数、每一终端的标识信息、该路由器的一些基本配置参数等。当然,其并不限于此。

  其中,该筛选模块202用于根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点。该筛选模块202通过对每一从设备对应的IPMI节点发送查询指令,以判断每一IPMI节点的可用性,也即判断是否可以正常信息采集。可以理解地,在进行查询时,首先,该电子设备向每一IPMI节点发送查询指令,然后等待接收每一IPMI节点的反馈信息。若预设时间内未收到某一IPMI节点的反馈信息,则判断该IPMI节点不可用。对于在预设时间内返回了反馈信息的IPMI节点,还需要对反馈信息进行查询及分析,以判断对应的IPMI节点当前是否可用,也即是对应IPMI节点当前是否处于可以采集目标数据的状态。

  在一些实施例中,该筛选模块202用于:将所述多个IPMI节点分成多个分组;根据每一所述分组的多个IPMI节点的节点标识发送查询指令至对应IPMI节点以判断每一IPMI节点的可用性,并将可用的IPMI节点设置为目标IPMI节点。其中,该筛选模块202可以依据IPMI节点对应的从设备的类型来进行分组,同一类型的从设备的IPMI节点分在同一组。当然,也可以进行平均分组,每一组具有相同数量的IPMI节点。其中,该筛选模块202可以建立多个线程,从而并行查询每一IPMI节点的可用性。检查完毕后,生成一个可用节点列表以及一个不可用节点列表,将所有不可用的IMPI节点的节点标识放入不可用节点列表中,将所有可用的IMPI节点的节点标识放入可用节点列表中。

  可以理解地,在查询时,该筛选模块202可以设置一个检查窗口,将每个分组内的IPMI节点的节点标识放入其中,检查窗口的大小分为1024、2048、4096等。当节点列表的内的IPMI节点的数量小于或等于1024时,设置检查窗口大小为1024,也即是该节点列表的内的IPMI节点可以一起放入该检查窗口进行检测。当节点列表上的IPMI节点的数量大于1024且小于4096时,设置窗口大小为2048。可以采用两次来对该多个IPMI节点进行检测。当节点列表上的IPMI节点的数量大于或等于4096时,设置窗口的大小为4096。检查窗口大小不再无限增大主要是考虑窗口增大后查询IPMI节点可用性的效率会变低。检查窗口的输入信息是节点列表中的节点,输出信息是可用的IPMI节点列表和不可用的IPMI节点列表两个列表。

  其中,该采集模块203用于建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集。该采集模块203可以采用多种方式来实现对该多个目标IPMI节点的目标数据进行采集。尽量对目标IPMI节点以并行方式进行数据采集,以提高效率。当然,由于电子设备本身的性能限制,一次可以同时运行的线程数量不可能无限大,线程数量超过一定数量后会使得整体的运行效率急速下降,从而影响目标数据的采集,还会影响该电子设备的其他工作。

  在一些实施例中,该采集模块203用于将所述多个目标IPMI节点分为多个第一集合,每一所述第一集合包括多个目标IPMI节点;针对每一所述第一集合,并行启动多个线程来采集每一所述第一集合内的多个目标IPMI节点。其中,每一第一集合内的目标IPMI节点的数量要小于该电子设备可同时运行的线程的数量。可以基于每一IPMI对应的从设备的类型来进行划分,具体可以根据每一从设备的目标数据的格式信息进行划分,也可以根据目标数据的数据量进行划分,从而提高数据采集的效率。

  具体地,在一些实施例中,该采集模块203具体用于:获取每一所述从设备的类型信息,并根据所述类型信息获取每一所述目标IPMI节点的目标数据的格式信息;根据每一所述目标数据的格式信息将所述多个目标IPMI节点分为多个第一集合,每一所述第一集合包括多个目标IPMI节点。由于不同类型的从设备具有不同格式的目标数据,因此,为了保证同一批并行执行的线程可以更高效地完成对同一第一集合内的各个目标IPMI节点的目标数据的采集,将具有相同格式的目标数据的目标IPMI节放在同一一批并行执行的线程中,可以提高效率。

  在另一些实施例中,该采集模块203可以用于:获取每一所述目标IPMI节点的目标数据的数据量信息;根据数据量信息将多个目标IPMI节点分为多个第一集合,在同一所述第一集合内,任意两个目标IPMI节点的目标数据的数据量的差值小于第一预设阈值。其中,该第一预设阈值可以设置为某一定值,例如x1KB。第一预设阈值也可以设置动态值,该第一预设阈值的大小与每一从设备的通信速度相关,以保证采集各个第一集合内的IPMI节点的目标数据所用的时间差不多。在同一所述第一集合内,任意两个目标IPMI节点的目标数据的采集工作耗时的差值小于5秒。其中,可以根据历史记录的每一目标IPMI节点的目标数据的采集记录,得出每一目标IPMI节点的目标数据的大致数据量。当然,也可以通过其他常见方式来估算每一目标IPMI节点的目标数据的大致数据量。其中,较佳方案是将具有相同数据量的目标IPMI节点划分到同一组,但是考虑到数据量不可能完全相同,可以设定一个第一预设阈值,保证在同一所述第一集合内,目标IPMI节点的最大数据量与最小数据量的差值小于第一预设阈值。从而使得同一批的线程在执行时,可以以差不多的时间完成,然后可以更快地进入下一批的目标数据的采集,从而可以提高效率。例如,该第一集合内具有50个目标IPMI节点,则同时启动50个线程进行并行运行,从而实现对该50个目标IPMI节点的目标数据的快速采集。

  可以理解地,在另一些实施例中该采集模块203用于:将所述多个目标IPMI节点分为多个第二集合,每一所述第二集合包括多个目标IPMI节点;建立多个线程,所述多个线程与所述多个第二集合一一对应;并行运行所述多个线程以使得每一所述线程以串行地方式对对应第二集合内的目标IPMI节点进行目标数据采集。其中,在每一所述第二集合内的目标IPMI节点的目标数据具有相同的数据类型,所述任意两个第二集合内的对应的目标数据的总数据量的差值小于第二预设阈值。其中,该第二预设阈值可以是一个固定量,例如设定为x2KB,也可以是根据各个从设备的传输速率设置的动态阈值,以保证各个第二集合中的目标数据的采集的总耗时差距较小。当然,采用这种方式进行划分时,尽量保证各个第二集合内的目标数据的总数据量大致相同,从而保证多个线程可以保持长时间并行运行。另外,还需要保证同一第二集合内的目标数据的格式信息相同,当然,由于各个类型的从设备的数量不可能完全均衡,对于某些第二集合,可以对几个不同类型的目标数据的目标IPMI节点进行数据采集。

  由上可知,本申请实施例提供的数据采集装置通过获取节点列表,所述节点列表包括待检测的多个IPMI节点的节点标识,每一所述IPMI节点对应一所述从设备;根据所述多个IPMI节点的节点标识发送查询指令至每一IPMI节点以判断每一IPMI节点的可用性,从而筛选出的多个可用的目标IPMI节点;建立多个线程,并以并行方式运行所述多个线程,以采集所述多个目标IPMI节点的目标数据,每一线程用于对至少一个目标IPMI节点进行数据采集;从而实现对多个从设备的目标数据的快速采集,可以提高效率。

  请参照图3,图3为本申请实施例提供的一种电子设备的结构示意图,本申请提供一种电子设备3,包括:处理器301和存储器32,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当计算设备运行时,处理器301执行该计算机程序,以执行时执行上述实施例的任一可选的实现方式中的方法。

  本申请实施例提供一种存储介质,所述计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的方法。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random AccessMemory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable ProgrammableRead OnlyMemory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。

  在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

  另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

  再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

  在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

  以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

《数据采集方法、装置、电子设备及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)