一种机组数据采集系统及数据采集方法与流程

文档序号:11234705阅读:544来源:国知局
一种机组数据采集系统及数据采集方法与流程
本发明涉及数据采集
技术领域
,尤其涉及一种机组数据采集系统及数据采集方法。
背景技术
:为保证机组(如,空调机组)在安全、可靠的情况下长期稳定运行,会采用无线通讯方式对空调机组的运行执行实时监测,以便能及时掌握空调机组的各项运行数据。现有技术下,通常会以下两种无线通讯方式,将空调机组的各项运行数据上传至管理系统:方式一:通过2g网络将空调机组的各项运行数据上传至管理系统,然而,上述方式不仅会产生大量的计费流量,而且,2g网络的传输速率也并不理想。方式二:通过wifi模块将空调机组的各项运行数据上传至管理系统,然而,上述方式通常是针对传输控制协议(transmissioncontrolprotocol,tcp)实现的,总所周知,tcp协议是面向连接的,即,通信双方在正式发送数据之前,需通过三次对话建立可靠连接,然而,针对多空调机组的情况,上述方式后期维护时比较复杂。有鉴于此,本发明采用用户数据报协议(userdataprotocol,udp)实现wifi模块的无线通信,然而,针对udp协议,现有的机组数据采集系统并不适用,因此,需重新设计一种机组数据采集系统,以满足udp协议的传输要求。技术实现要素:本发明实施例提供一种机组数据采集系统及数据采集方法,用以解决现有的机组数据采集系统不能支持udp协议的问题。本发明实施例提供的具体技术方案如下:一种机组数据采集系统,包括:数据传输模块,用于监听预设的用户数据报协议udp端口,并将监听到的若干机组数据保存在指定存储区域,以及确定所述指定存储区域的存储量满足设定条件时,从所述指定存储区域中提取相应的机组数据,并将提取到的机组数据上传至指定分布式存储系统;数据管理模块,用于接收到数据解析模块发送的数据请求指令时,从所述指定分布式存储系统中提取相应的机组数据,并将提取到的机组数据发送至相应的数据解析模块;至少一个数据解析模块,用于接收所述数据管理模块发送的相应的机组数据,以及对所述相应的机组数据进行解析,并将解析结果保存至指定数据库。可选的,所示指定存储区域为本地文件系统,其中,所述本地文件系统包含至少一个存储文件。可选的,将监听到的若干机组数据保存在指定存储区域之前,所述数据传输模块用于:基于预设规则,分别对监听到的每一个机组数据进行有效性判断;筛选出具有有效性的各个机组数据,并确定所述各个机组数据各自在本地文件系统中对应的存储文件;所述将监听到的若干机组数据保存在指定存储区域,包括:将具有有效性的各个机组数据保存在各自对应的存储文件中。可选的,确定所述指定存储区域的存储量满足设定条件时,从所述指定存储区域中提取相应的机组数据,并将提取到的机组数据上传至指定分布式存储系统时,所述数据传输模块用于:分别针对本地文件系统包含的每一个存储文件,执行以下操作:确定存储量达到设定阈值时,提取存储的全部或部分机组数据;将提取到的所述全部或部分机组数据上传至所述指定分布式存储系统。可选的,对所述相应的机组数据进行解析,并将解析结果保存至指定数据库时,所述数据解析模块用于:分别针对接收到的每一个机组数据,执行以下操作:基于预设的udp协议,对机组数据包含的各个字段进行解析;确定所述各个字段各自对应的实际参数;将确定的各个实际参数,保存至所述指定数据库。可选的,所述数据管理模块还用于:管理并维护所述至少一个数据解析模块。一种机组数据采集方法,包括:监听预设的用户数据报协议udp端口,并将监听到的若干机组数据保存在指定存储区域;确定所述指定存储区域的存储量满足设定条件时,从所述指定存储区域中提取相应的机组数据,并将提取到的机组数据保存在指定分布式存储系统;基于产生的数据请求指令,从所述指定分布式存储系统中提取相应的机组数据,以及对提取到的机组数据进行解析,并将解析结果保存至指定数据库。可选的,所示指定存储区域为本地文件系统,其中,所述本地文件系统包含至少一个存储文件。可选的,将监听到的若干机组数据保存在指定存储区域之前,还包括:基于预设规则,分别对监听到的每一个机组数据进行有效性判断;筛选出具有有效性的各个机组数据,并确定所述各个机组数据各自在本地文件系统中对应的存储文件;所述将监听到的若干机组数据保存在指定存储区域,包括:将具有有效性的各个机组数据保存在各自对应的存储文件中。可选的,确定所述指定存储区域的存储量满足设定条件时,从所述指定存储区域中提取相应的机组数据,并将提取到的机组数据保存在指定分布式存储系统,包括:分别针对本地文件系统包含的每一个存储文件,执行以下操作:确定存储量达到设定阈值时,提取存储的全部或部分机组数据;将提取到的所述全部或部分机组数据保存在所述指定分布式存储系统。可选的,对提取到的机组数据进行解析,并将解析结果保存至指定数据库,包括:分别针对接收到的每一个机组数据,执行以下操作:基于预设的udp协议,对机组数据包含的各个字段进行解析;确定所述各个字段各自对应的实际参数;将确定的各个实际参数,保存至所述指定数据库。本发明实施例中,机组数据采集系统包括:数据传输模块、数据管理模块和至少一个数据解析模块,其中,数据传输模块能用于监听预设的udp端口,并将监听到的若干机组数据从指定存储区域上传到hdfs,再由至少一个数据解析模块,通过数据管理模块对从hdfs中提取到的机组数据进行解析,并将解析结果保存至指定数据库,这样,改进后的机组数据采集系统不仅能支持udp协议,而且,通过多级存储机制,能将监听到的所有机组数据进行正确收录,进而提高了数据采集速率以及数据处理效率,从而提高了用户体验。附图说明图1为本发明实施例中,机组数据采集系统结构示意图;图2为本发明实施例中,机组数据采集方法流程图。具体实施方式为了解决现有的机组数据采集系统不能支持udp协议的问题,本发明实施例中,重新设计了一种机组数据采集系统及数据采集方法,该系统包括:数据传输模块、数据管理模块和至少一个数据解析模块,其中,数据传输模块用于监听预设的用户数据报协议udp端口,并将监听到的若干机组数据保存在指定存储区域,以及确定指定存储区域的存储量满足设定条件时,从指定存储区域中提取相应的机组数据,并将提取到的机组数据上传至指定分布式存储系统;数据管理模块,用于接收到数据解析模块发送的数据请求指令时,从指定分布式存储系统中提取相应的机组数据,并将提取到的机组数据发送至相应的数据解析模块;至少一个数据解析模块,用于接收数据管理模块发送的相应的机组数据,以及对相应的机组数据进行解析,并将解析结果保存至指定数据库。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面将通过具体实施例对本发明的方案进行详细描述,当然,本发明并不限于以下实施例。本发明实施例中,所有的机组(以下均以空调机组为例进行说明)都配置有相应的wifi模块,每一台空调机组产生的空调机组数据都可通过与自身关联的wifi模块向外发送,其中,空调机组与wifi模块之间,可以通过串口进行数据通信,在此不做限定。参阅图1所示,本发明实施例中,设计了一种机组数据采集系统,至少包括数据传输模块、数据管理模块和至少一个数据解析模块,其中,数据传输模块,用于接收若干空调机组数据,并将接收到的若干空调机组数据保存在指定存储区域,以及确定指定存储区域的存储量满足设定条件时,从指定存储区域中提取相应的空调机组数据,并将提取到的空调机组数据上传至指定分布式存储系统;数据管理模块,用于接收到数据解析模块发送的数据请求指令时,从指定分布式存储系统中提取相应的空调机组数据,并将提取到的空调机组数据发送至相应的数据解析模块;至少一个数据解析模块,用于接收数据管理模块发送的相应的空调机组数据,以及对相应的空调机组数据进行解析,并将解析结果保存至指定数据库。具体的,参阅图2所示,结合附图对本发明优选的实施方式进行详细的说明,本发明实施例中空调机组数据采集的具体流程如下:步骤200:数据传输模块接收若干空调机组数据,并将接收到的若干空调机组数据保存在指定存储区域。具体的,本发明实施例中,预先为各个wifi模块,配置数据传输模块指定的服务器的域名和用户数据报协议(userdatagramprotocol,udp)端口,当wifi模块接收到对应空调机组上传的空调机组数据后,wifi模块会将待传的空调机组数据以udp数据包的形式发送到已配置好的udp端口上。本实施例之所以采用udp通信,是因为udp协议是面向无连接的,即,通信双方无需建立可靠连接,发送端只要确定接收端的udp端口,就可向接收端发送数据。进一步地,数据传输模块会监听指定的服务器的udp端口,一旦监听到udp端口有数据,会对监听到的空调机组数据执行初步筛选,将筛选得到的空调机组数据保存在指定存储区域,较佳的,本实施例优选的指定存储区域为本地文件系统,其中,本地文件系统包含至少一个存储文件,上述存储文件即是指一种存储区域。具体的,数据传输模块会基于预设规则,分别对接收到的每一个空调机组数据进行有效性判断,筛选出具有有效性的各个空调机组数据,并确定具有有效性的各个空调机组数据各自对应的存储文件,其中,有效性判断可以包括:空调机组数据是否为完整数据,空调机组数据是否为干扰数据,空调机组数据是否为错误数据,等等。例如,数据传输模块可采用循环冗余校验(cyclicredundancycheck,crc)检测,接收到的空调机组数据是否为错误数据。当数据传输模块确定具有有效性的各个空调机组数据,各自在本地文件系统中对应的存储文件后,会将上述各个空调机组数据保存在各自对应的存储文件中。步骤210:数据传输模块确定指定存储区域的存储量满足设定条件时,从指定存储区域中提取相应的空调机组数据,并将提取到的空调机组数据上传至指定分布式存储系统。具体的,数据传输模块将具有有效性的各个空调机组数据保存在各自对应的存储文件中后,若存在一个存储文件的存储量达到设定阈值时,将提取上述一个存储文件中存储的全部或部分空调机组数据,并将提取到的上述全部或部分空调机组数据,上传至指定分布式存储系统中。本发明实施例中,分布式存储系统,可以为hadoop分布式文件系统(hadoopdistributefilesystem,hdfs),也可以为谷歌文件系统(googlefilesystem,gfs),或者为lustre平行分布式文件系统,等等,为便于理解,以下描述中,均以hdfs表示分布式存储系统,当然,实际应用时,分布式存储系统并不限定于hdfs。例如,假设本地文件系统中存在存储文件1、存储文件2和存储文件3,且每一个存储文件的存储空间都为500m,若预先为每一个存储文件设置的阈值为450m,当数据传输模块检测到,存储文件1中当前存储量达到450m时,则将存储文件1中的全部或部分空调机组数据上传至指定hdfs中。当然,每一个存储文件的存储空间也可以不同,每一个存储文件设置的阈值也可以不同,上述仅仅是举例,具体可看实际配置。进一步地,之所以,要将存储在本地文件系统中的空调机组数据上传到hdfs中,是因为本地文件系统的存储能力是有限的,而各个空调机组又随时在产生大量的空调机组数据,因此,本实施例中,为减轻本地文件系统的负荷,将已满载或即将满载的存储文件中的空调机组数据,上传至指定hdfs中。当然,在具体实施时,数据传输模块实现步骤200可由数据接收程序完成,数据传输模块实现步骤210可由数据上传程序完成。步骤220:数据解析模块向数据管理模块发送数据请求指令。具体的,本发明实施例提供的空调机组数据采集系统,包含了若干数据解析模块,当数据解析模块需要执行数据解析操作时,会基于实际需求向数据管理模块发送数据请求指令,以便能获取空调机组数据,其中,数据请求指令可以包含数据解析模块的id号,需获取的数据数目,等等。而数据解析模块何时需要执行数据解析操作,可以以上一数据解析操作已完成,或者,得到了解析指令来判定。例如,假设空调机组数据系统中存在数据解析模块1、数据解析模块2、数据解析模块3和数据解析模块4,若数据解析模块1和数据解析模块4需执行数据解析操作,则分别会向数据管理模块发送数据请求指令a和数据请求指令b,其中,数据请求指令a为{数据解析模块1,10条},数据请求指令b为{数据解析模块2,50条}。步骤230:数据管理模块接收到数据解析模块发送的数据请求指令时,从指定分布式存储系统中提取相应的空调机组数据,并将提取到的空调机组数据发送至相应的数据解析模块。具体的,数据管理模块接收到各个数据解析模块发送的数据请求指令时,从指定hdfs中提取相应的空调机组数据,并基于接收到的各个数据请求指令,将提取到的空调机组数据返回给对应的数据解析模块。例如,继续以上述示例进行说明,数据管理模块接收到数据解析模块1发送的数据请求指令a,以及数据解析模块2发送的数据请求指令b,经过解析,确定数据解析模块1需要10条空调机组数据,数据解析模块2需要50条空调机组数据,则从指定hdfs中,提取10条空调机组数据,并将上述10条空调机组数据返回给数据解析模块1,以及从指定hdfs中,提取50条空调机组数据,并将上述50条空调机组数据返回给数据解析模块5。步骤240:数据解析模块接收到数据管理模块返回的相应的空调机组数据后,对接收到的空调机组数据进行解析,并将解析结果保存在指定数据库。具体的,数据解析模块接收到数据管理模块返回的相应的空调机组数据后,对接收到的空调机组数据进行解析,之所以数据解析模块还需对数据管理模块返回的空调机组数据解析,是因为,wifi模块在向数据传输模块发送空调机组数据时,已将空调机组数据转换为udp数据包,故,数据解析模块在接收到空调机组数据时,需基于预设的udp协议,对接收到的空调机组数据进行解析。进一步地,以一个数据解析模块接收到的一个空调机组数据为例,上述一个数据解析模块,会基于预设的udp协议,对上述一个空调机组数据包含的各个字段进行解析,确定上述各个字段各自对应的实际参数,并将确定的各个实际参数,保存在指定数据库中。例如,假设预设的udp协议中,定义第一个字段对应为空调机组编号,定义第二个字段对应的实际参数为“室温”,定义第三个字段对应的实际参数为“运行模式”,其中,第一个字段包含2个字节,第二个字段包含2个字节,第三字段包含4个字节;若数据解析模块1接收到的空调机组数据a,其中,空调机组数据a为{78、18、制冷},数据解析模块1接收到的空调机组数据b,其中,空调机组数据b为{03、22、制冷};数据解析模块2接收到的空调机组数据c,其中,空调机组数据c为{31、30、制热};数据解析模块3接收到的空调机组数据d,其中,空调机组数据d为{09、25、制热};经解析,数据解析模块1确定,空调机组78号当前处于“制冷”状态,室温为“18”℃;数据解析模块1确定,空调机组03号当前处于“制冷”状态,室温为“22”℃;数据解析模块2确定,空调机组31号当前处于“制热”状态,室温为“30”℃;数据解析模块3确定,空调机组09号当前处于“制热”状态,室温为“25”℃。进一步地,数据解析模块1、数据解析模块2和数据解析模块3会,分别将各自解析得到的各个空调机组数据结果保存在数据库的数据表中,如,参见表1所示。表1空调机组编号室温(℃)运行模式7818制冷0322制冷3130制热0925制热进一步地,由于本实施中存在多个数据解析模块,因此,数据管理模块也可以提供管理和维护各个数据解析模块的功能。当然,本发明实施例提供的机组数据采集系统,并不仅限于在空调机组中使用,上述仅仅是以空调机组为例,其他类似的大型设备(如,由多个机组或设备构成)也适用。综上所述,本发明实施例中,机组数据采集系统包括:数据传输模块、数据管理模块和至少一个数据解析模块,其中,数据传输模块能用于监听预设的udp端口,并将监听到的若干机组数据从指定存储区域上传到指定hdfs,再由至少一个数据解析模块,通过数据管理模块对从上述指定hdfs中提取到的机组数据进行解析,并将解析结果保存至指定数据库,这样,改进后的机组数据采集系统可以支持udp协议,能快速的将海量的机组数据上传到指定存储区域,而且,通过上述多级存储机制,能对监听到的所有机组数据进行正确收录。进一步地,本发明实施例中,为避免指定hdfs存储太多的临时数据,利用数据管理模块实现对海量机组数据的调度,以及对多个数据解析模块的调度,这样,通过数据管理模块调度多个数据解析模块完成对海量机组数据的解析,并将解析结果保存在指定数据库中,提高了数据采集速率和数据处理效率,从而提高了用户体验。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1