监控数据自适应压缩方法及系统的制作方法
【技术领域】
[0001]本发明涉及监控数据的管理,具体地,涉及监控数据自适应压缩方法及系统。
【背景技术】
[0002]监控系统通常用于采集计算集群或云平台中主机的运行时状态信息。通过在主机中植入传感器,主机能够和监控服务器通过预定的协议进行通信。传感器可以根据本地配置文件的默认配置进行工作,服务器也可以远程配置任意主机上的传感器在特定的模式工作,例如设置采样频率、启动新型信息的采集或者暂停传感器。一般而言,计算集群或云平台中包含成百上千台主机,每个主机需要采集大量的监控数据,并将其发送到监控服务器,导致了网络中数据流量的爆炸式增长,使得监控服务器面临很大负担。因此,迫切需要解决监控系统中数据爆炸式增长的问题。
[0003]监控系统对正在运行的系统进行监视与控制,被广泛应用到现实生活的各个领域,利用监控技术可以观察远端目标对象的状态,进行实时控制,不但简化了管理过程,而且显著提高了管理效率。本发明解决监控平台中主机数量多而引起的网络中监控数据呈爆炸式增长的问题。
【发明内容】
[0004]针对现有技术中的缺陷,本发明的目的是提供一种监控数据自适应压缩方法及系统。
[0005]根据本发明提供的监控数据自适应压缩系统,包括:监控服务器、主机、传输监控数据网络模块,所述主机内配置了采集监控数据传感器,其中,
[0006]-所述监控服务器,用于监控数据的接收和处理以及监控数据的显示,或者远程设置主机内的采集监控数据传感器的配置参数;
[0007]-所述主机,用于根据预设的发送频率,定期向监控服务器发送采集到的监控数据;
[0008]-所述传输监控数据网络模块,用于实现监控服务器与主机的通信,根据设定的通信协议完成监控数据的传输;
[0009]-所述采集监控数据传感器,用于根据设定的频率采集主机的运行时状态信息,所述主机的运行时状态信息构成相应的监控数据。
[0010]根据本发明提供的监控数据自适应压缩方法,包括如下步骤:
[0011]步骤1:构建监控系统,用于实现对多个主机运行状态的数据监控;
[0012]步骤2:为监控服务器所收集的监控数据设定一个阈值,所述阈值用于表征监控数据值的变化情况,根据监控服务器所收集的监控数据变化值是否大于所述阈值执行相应的操作;
[0013]步骤3:定期查找计算集群或云平台中存在的多个主机之间的函数关系,若主机之间存在函数关系,则仅需在所述存在函数关系的主机中任选一个主机向监控服务器发送监控数据;若主机之间不存在函数关系,则对应的每个主机均需要向监控服务器发送监控数据。
[0014]优选地,所述步骤1包括:构建包含监控服务器、主机、传输监控数据网络模块的监控系统,且所述主机内配置了采集监控数据传感器;所述主机能够将采集监控数据传感器采集到的主机的监控数据通过传输监控数据网络模块传输至监控服务器。
[0015]优选地,所述步骤2包括:
[0016]步骤2.1:为监控服务器所收集的监控数据设定一个阈值,所述阈值用于表征监控数据值的变化情况;
[0017]步骤2.2:当监控服务器所收集的监控数据变化值小于所述阈值时,主机不向监控服务器发送新的监控数据;
[0018]当监控服务器所收集的监控数据变化值大于所述阈值时,通过设置主机的频率参数改变主机向监控服务器发送监控数据的发送频率;其中,主机的频率参数包括采样频率、发送频率和调整频率。
[0019]优选地,所述步骤2.2包括:当监控服务器所收集的监控数据变化值大于所述阈值时,执行如下的步骤:
[0020]步骤2.2.1:将主机监控数据的发送频率设置为监控数据采样频率的两倍;则此时的发送频率大于采样频率,导致某些时刻内主机无监控数据发送;
[0021]若某一发送时间点监控服务器没有接收到监控数据,则监控服务器向数据库中插入前一时间点接收到的数值作为默认值;
[0022]步骤2.2.2:调整主机监控数据的发送频率,在设定的调整时刻计算过去一个周期的平均错误率,即某一发送时间点监控服务器没有接收到监控数据且所述监控服务器向数据库中插入前一时间点接收到的数值为错误的情况;
[0023]若平均错误率大于预定值MAX_ERR0R,则将主机监控数据的发送频率降至当前值的一半;
[0024]若平均错误率小于等于预定值MAX_ERR0R,则将主机监控数据的发送频率增加INC,所述INC为预定的增加值。
[0025]优选地,所述步骤3中的函数关系是指一台主机的监控数据能够由另一台主机的监控数据推导出,
[0026]假设主机A和主机B在某个属性上存在函数关系ValueA = f (ValueB),则仅需主机A或者主机B中的任一个向监控服务器发送监控数据;
[0027]其中,ValueA表示主机A的属性值,ValueB表示主机B的属性值,f 0表示ValueA和ValueB之间存在的函数关系。
[0028]与现有技术相比,本发明具有如下的有益效果:
[0029]1、本发明所提出的方法的优势在于可以根据应用的需求来自动调整监控数据的发送频率,在不影响监控数据采集精度的情况下,达到降低网络中监控数据流量的目的。
[0030]2、本发明通过减少单个主机发送的数据量和发现主机间存在的函数关系来减少需要发送监控数据的主机数目有效解决监控平台中主机数量多而引起的网络中监控数据呈爆炸式增长的问题。
【附图说明】
[0031]通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0032]图1为本发明提供的监控数据自适应压缩系统的结构示意图;
[0033]图2为本发明提供的监控数据自适应压缩方法中不同主机之间存在的函数关系示意图。
【具体实施方式】
[0034]下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
[0035]本发明公开了一种监控数据自适应压缩方法。该方法的设计目标是为了降低监控系统中的数据流量,进一步达到减轻监控服务器负担的目的。本发明主要针对计算集群或云平台中主机数量多、监控数据量大的问题,提出一种自适应的监控数据压缩方法。本方法从两个方面来解决监控系统中数据爆炸式增长的问题,一是减少单个主机发送的数据量;二是通过发现主机间存在的函数关系来减少需要发送监控数据的主机,最终达到减少网络中传输的数据量的目的。
[0036]具体地,本发明提供的监控数据自适应压缩系统,包括:监控服务器、主机、传输监控数据网络模块,所述主机内配置了采集监控数据传感器,其中,
[0037]-所述监控服务器,用于监控数据的接收和处理以及监控数据的显示,或者远程设置主机内的采集监控数据传感器的配置参数;
[0038]-所述主机,用于根据预设的发送频率,定期向监控服务器发送采集到的监控数据;
[0039]-所述传输监控数据网络模块,用于实现监控服务器与主机的通信,根据设定的通信协议完成监控数据的传输;
[0040]-所述采集监控数据传感器,用于根据设定的频率采集主机的运行时状态信息,所述主机的运行时状态信息构成相应的监控数据。
[0041]根据本发明提供的监控数据自适应压缩方法,包括如下步骤:
[0042]步骤1:构建监控系统,用于实现对多个主机运行状态的数据监控;
[0043]步骤2:为监控服务器所收集的监控数据设定一个阈值,所述阈值用于表征监控数据值的变化情况,根据监控服务器所收集的监控数据变化值是否大于所述阈值执行相应的操作;
[0044]步骤3:定期查找计算集群或云平台中存在的多个主机之间的函数关系,若主机之间存在函数关系,则仅需在所述存在函数关系的主机中任选一个主机向监控服务器发送监控数据;若主机之间不存在函数关系,则对应的每个主机均需要向监控服务器发送监控数据。
[0045]所述步骤1包括:构建包含监控服务器、主机、传输监控数据网络模块的监控系统,且所述主机内配置了采集监控数据传感器;所述主机能够将采集监控数据传感器采集到的主机的监控数据通过传输监控数据网络模块传输至监控服务器。
[0046]所述步骤2包括:
[0047]步骤2.1:为监控服务器所收集的监控数据设定一个阈值,所述阈值用于表征监控数据值的变化情况;
[0048]步骤2.2:当监控服务器所收集的监控数据变化值小于所述阈值时,主机不向监控服务器发送新的监控数据;
[0049]当监控服务器所收集的监控数据变化值大于所述阈值