数据处理的分布式系统及其数据处理方法与流程

文档序号:11843472阅读:402来源:国知局
数据处理的分布式系统及其数据处理方法与流程

本发明涉及数据处理技术领域,具体而言,涉及一种数据处理的分布式系统及其数据处理方法。



背景技术:

远程智能服务中心系统能够对中央空调机组的运行数据进行远程采集和远程分析,及时为用户提供机组日常维护保养信息,并能在机组产生故障时及时报警,从而有效减少机组故障产生几率和杜绝故障扩大化,改善了中央空调机组多、管理分散、人机交互差等经济性及安全运行问题,为用户提供更省力、省心、省钱的中央空调服务。

而随着空调机组大数据时代的到来,系统需要监控的工程机组也越来越多。现有技术中的应用于远程监控中央空调机组的服务器分布式系统如图1所示,该系统能够对中央空调机组的运行数据进行远程采集和远程分析,但是这个系统在扩展性、兼容性和安全性方面还不够完善,有些情况未能考虑到。例如:图1的系统中的客户端直接连数据库,会带来一定的安全隐患。图1的系统中的关系处理模块使得GPRS模块和客户端关系处理的复杂性,且容易成为海量GPRS模块和大量客户端交互的瓶颈。此外,Client(客户端)接入模块采用socket连接,难以扩展兼容多种客户端。比如:移动客户端、桌面客户端和第三方应用程序等。

针对现有技术中数据处理的分布式系统中扩展性、兼容性和安全性不够完善的问题,目前尚未提出有效的解决方式。



技术实现要素:

本发明实施例提供了一种数据处理的分布式系统及其数据处理方法,以解决现有技术中数据处理的分布式系统中扩展性、兼容性和安全性不够完善的问题。

根据本发明的一个方面,提供了一种数据处理的分布式系统,包括监控客户端,待监控机组,数据处理服务器群组以及数据库,待监控机组中设置有用于传输机组原始数据的GPRS模块,其中,数据处理服务器群组中包括应用服务器、缓存服务器、数据访问服务器以及接口服务器,其中,应用服务器与GPRS模块以及缓存服务器相连,接口服务器分别与缓存服务器、数据库以及监控客户端相连,数据访问服务器与缓存服务器以及数据库相连。

在一个实施例中,该系统还包括:负载均衡器,应用服务器为一个或多个,应用服务器通过负载均衡器与GPRS模块连接。

在一个实施例中,应用服务器中包括用于与GPRS模块相连接的DTU接入模块,与DTU接入模块相连接的数据解析模块,DTU接入模块和数据解析模块分别与缓存服务器连接。

在一个实施例中,接口服务器中包括WCF中间集群模块,WCF中间集群模块分别与缓存服务器、数据库以及监控客户端相连。

在一个实施例中,缓存服务器中包括Redis集群缓存模块,Redis集群缓存模块分别与DTU接入模块、数据解析模块以及WCF中间集群模块相连。

在一个实施例中,数据访问服务器中包括机组数据存储集群模块,机组数据存储集群模块分别与Redis集群缓存模块以及数据库相连。

在一个实施例中,数据访问服务器中还包括工程信息同步模块,工程信息同步模块分别与Redis集群缓存模块以及数据库相连。

在一个实施例中,数据库包括:数据库集群模块。

在一个实施例中,监控客户端包括:PC客户端,和/或移动客户端,和/或网页客户端,和/或第三方应用客户端。

根据本发明的另一个方面,提供了一种应用于上述分布式系统中的数据处理方法,包括:应用服务器获取GPRS模块发送的待监控机组的原始数据;应用服务器对原始数据进行参数化处理,并将参数化处理后的数据发送至缓存服务器;数据访问服务器从缓存服务器中获取参数化后的数据并将参数化后的数据存储至数据库中;接口服务器从缓存服务器中获取参数化后的数据,并将参数化后的数据分发给对应的监控客户端。

在一个实施例中,分布式系统包括:负载均衡器,应用服务器为多个,应用服务器获取GPRS模块发送的待监控机组的原始数据,包括:GPRS模块连接至负载均衡器;负载均衡器根据应用服务器的负载状态,将连接请求发送至负载最小的应用服务器;负载最小的应用服务器获取GPRS模块发送的待监控机组的原始数据。

在一个实施例中,应用服务器对原始数据进行参数化处理,并将参数化处理后的数据发送至缓存服务器,包括:应用服务器中的DTU接入模块接收GPRS模块发送的待监控机组的原始数据;DTU接入模块将接收的待监控机组的原始数据发送至应用服务器中的数据解析模块;数据解析模块将待监控机组的原始数据进行解析,并将解析完的数据发送至缓存服务器的Redis集群模块。

在一个实施例中,数据访问服务器从缓存服务器中获取参数化后的数据并将参数化后的数据存储至数据库中,包括:数据访问服务器中的机组数据存储集群模块根据预先与缓存服务器的Redis集群模块建立的订阅关系,从Redis集群模块中获取参数化后的数据;机组数据存储集群模块将获取的参数化后的数据存入数据库中。

在一个实施例中,接口服务器从缓存服务器中获取参数化后的数据,并将参数化后的数据分发给对应的监控客户端,包括:接口服务器中的WCF中间集群模块根据预先与缓存服务器的Redis集群模块建立的订阅关系,从Redis集群模块中获取参数化后的数据;WCF中间集群模块将获取的参数化后的数据分发给对应的监控客户端。

在一个实施例中,数据访问服务器中还包括工程信息同步模块,在监听获知缓存服务器的Redis集群模块触发工程信息修改时,工程信息同步模块将修改的工程信息同步至数据库。

在本发明的数据处理的分布式系统及其数据处理方法中,整个分布式系统将现有技术中机组GPRS模块与客户端通过关系处理模块相连的方式替换成了缓存服务器利用其自身发布/订阅特性的方式。客户端需要哪个机组数据则去在缓存服务器订阅那个机组的数据,不需要则不订阅,这些订阅的关系由缓存服务器自身去完成,应用服务器无需去记录哪些客户端监控了哪些机组GPRS模块,减少了机组GPRS模块与客户端关系处理的逻辑复杂性,因此降低了机组GPRS模块与客户端之间的耦合性,为后续单独扩展应用服务器或者单独扩展接口服务器提供了便利性。在扩展应用服务器时,无需考虑客户端对其扩展造成的影响。在扩展接口服务器时,也无需考虑机组GPRS模块对其扩展造成的影响。同时,接口服务器可设置所支持的接口方式(如WCF接口方式)来提供给各种类型的客户端进行连接,方便后续能够扩展更多类型的客户端连接,并且,通过接口服务器可限制客户端访问数据库的某些权限,提高系统安全性。本发明提供的方案可有效地解决现有技术中数据处理的分布式系统中扩展性、兼容性和安全性不够完善的问题,提高数据处理的分布式系统中扩展性、兼容性和安全性。

附图说明

此处构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为现有技术中的一种数据处理的分布式系统框架图;

图2为本申请实施例提供的一种数据处理的分布式系统的系统框架图;

图3为本申请实施例提供的一种数据处理的分布式系统的数据处理方法的流程示意图;以及

图4为本申请实施例提供的一种数据处理方法的流程示意图。

具体实施方式

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

本发明实施例中提供的数据处理的分布式系统包括监控客户端,待监控机组,数据处理服务器群组以及数据库,待监控机组中设置有用于传输机组原始数据的GPRS模块,其特征在于,数据处理服务器群组中包括应用服务器、缓存服务器、数据访问服务器以及接口服务器,其中,应用服务器与GPRS模块以及缓存服务器相连,接口服务器分别与缓存服务器、数据库以及监控客户端相连,数据访问服务器与缓存服务器以及数据库相连。其中,优选地,上述应用服务器、缓存服务器以及数据访问服务器均可以为Linux服务器。

在本申请实施例中,为了将上述数据处理服务器群组中各个服务器的功能进行独立,可以将每个服务器中的各个功能模块化。具体地,图2为本申请实施例提供的一种数据处理的分布式系统的框架图。如图2所示,该分布式系统还包括负载均衡器,具体实现时,可以将负载均衡器设置于一计算机中心。本发明实施例中提供的应用服务器可以为一个,也可以为多个(图2示出应用服务器1至n的多个情况),应用服务器通过负载均衡器与GPRS模块连接。

具体来说,应用服务器中包括用于与GPRS模块相连接的DTU(Data Transfer Unit,数据传输单元)接入模块,与DTU接入模块相连接的数据解析模块,DTU接入模块和数据解析模块分别与缓存服务器连接。

在一个实施方式中,接口服务器中包括WCF中间集群模块,WCF中间集群模块分别与缓存服务器、数据库以及监控客户端相连。其中,优选地,如图2所示,监控客户端包括:PC客户端,和/或移动客户端,和/或网页客户端,和/或第三方应用客户端。此处的WCF是由微软开发的一系列支持数据通信的应用程序框架,可以称为Windows通讯开发平台。其整合了原有的windows通讯的.net Remoting,WebService,Socket的机制,并融合有HTTP和FTP的相关技术,是Windows平台上开发分布式应用最佳的实践方式。

另外,在本申请实施例中,为了提高缓存服务器的性能,可以采用内存数据库Redis来进行机组原始数据的中转和分发。因此,缓存服务器中包括Redis集群缓存模块,Redis集群缓存模块分别与DTU接入模块、数据解析模块以及WCF中间集群模块相连。数据访问服务器中包括机组数据存储集群模块,机组数据存储集群模块分别与Redis集群缓存模块以及数据库相连。

在本申请实施例中,Redis缓存模块可以采用发布/订阅的方式,机组数据存储集群模块和WCF中间件集群模块都从Redis上订阅解析后的数据。当Redis上接收到机组数据后,根据其自身发布/订阅特性,会自动将机组数据自动推送给订阅方。这样的方式对后续分布式服务器大规模扩展中的数据分发功能起到至关重要的作用,多个程序模块可连接在Redis缓存模块上接收消息,从而可以解决了多个模块之间多对多发送消息时需要多对多连接的问题。并且,Redis利用其自身发布/订阅特性的方式,使得客户端可以根据其需求订阅数据,需要哪个机组数据则去订阅那个机组的数据,不需要则不订阅,这些订阅的关系由Redis自身去完成,应用服务器无需去记录哪些客户端监控了哪些机组GPRS模块,减少了机组GPRS模块与客户端关系处理的逻辑复杂性,因此降低了机组GPRS模块与客户端之间的耦合性,为后续单独扩展应用服务器或者单独扩展WCF中间件集群提供了便利性。在扩展应用服务器时,无需考虑客户端对其扩展造成的影响。同理在扩展WCF中间件时,也无需考虑机组GPRS模块对其扩展造成的影响。

在现有技术中,待监控机组的GPRS模块与智能服务器中心的服务器之间往往是通过BMS协议(远程监控协议)进行通讯。该协议往往是由各个待监控机组的显示板控制器设计人员提供,并且需要将该协议写成对应的程序加入到待监控机组的显示板控制器中才可以实现对该待监控机组进行监控。这样,随着待监控机组数量的增加,将BMS协议写成对应的程序的过程则显得十分繁重。为了减轻系统维护人员的压力,本申请实施例可以在GPRS模块与DTU接入模块之间采用Modbus协议进行数据传输,从而可以避免在待监控机组的显示板控制器中写入与协议相对应的程序的步骤,从而可以减轻系统维护人员的压力。

在本申请实施例中,可以采用面向对象继承的设计思想,自上而下将协议和待监控机组的机型进行逐级继承分类处理。首先可以由父类派生出Modbus类,然后Modbus类下又可以派生出多个机型子类,各个机型的共同逻辑处理部分可以放在Modbus类中处理,不同逻辑处理部分则可以放在各自的机型子类中处理。这样就保证了无论是当前监控的机组还是后续新开发的机组,其机组数据都可以被本申请提供的分布式系统兼容处理,其机组数据都可以被分布式系统监控。

下面结合现有技术来对本实施例中提供的数据处理的分布式系统进行描述,以便更好理解本发明的优势所在:

现有技术中的分布式系统架构如图1所示,整个系统分为DTU接入、Client接入、关系处理、数据解析、Redis、数据访问接口、数据存储7个模块。

现有技术中的系统架构不够完善,未曾考虑到客户端的多样性和系统扩展可能带来的瓶颈。如图1所示,关系处理模块连着DTU接入模块和Client接入模块,是它们两者之间通讯的桥梁。当机组GPRS模块大量增加后,为保证服务器负载稳定,DTU接入模块也需要相应增加,同理,当客户端大量增加后,Client接入模块也需要相应增加。关系处理模块中由于记录了所有机组GPRS模块与所有客户端监控的对应关系,所以难以做到扩展成多个关系处理模块,于是成为了海量机组GPRS模块与大量客户端交互的瓶颈,抑制了整个系统的可扩展性。同时考虑到客户端类型后续发展的多样性,难以做到所有类型的客户端都统一采用socket方式来连接Client接入模块,且客户端直接连接数据库,也会给数据库的数据安全带来一些隐患。

对本图2所示的本发明提供的系统框架,整个系统分为DTU接入、数据解析、Redis集群、机组数据存储集群、工程信息同步、WCF中间件集群等6个模块。整个系统工作流程图如图3所示:

首先由机组GPRS模块连接负载均衡器,负载均衡器会根据各应用服务器的负载状态,将机组GPRS模块的连接请求转发到负载最轻的应用服务器的DTU接入模块上;

在GPRS模块与DTU接入模块建立连接后,GPRS模块将原始机组数据发给DTU接入模块;

之后DTU接入模块再将原始机组数据发给数据解析模块,数据解析模块对原始机组数据进行解析,解析完成后,将数据发布到Redis集群中。

机组数据存储集群模块和WCF中间件集群模块都从Redis上订阅解析后的数据。当Redis上接收到机组数据后,根据其自身发布/订阅特性,会自动将机组数据自动推送给订阅方。

机组数据存储集群模块获取到机组数据后,将数据存入数据库中。

WCF中间件集群获取到机组数据后,将数据分发给客户端。

整个系统将前期机组GPRS模块与客户端通过关系处理模块相连的方式替换成了Redis利用其自身发布/订阅特性的方式。客户端需要哪个机组数据则去订阅那个机组的数据,不需要则不订阅,这些订阅的关系由Redis自身去完成,应用服务器无需去记录哪些客户端监控了哪些机组GPRS模块,减少了机组GPRS模块与客户端关系处理的逻辑复杂性,因此降低了机组GPRS模块与客户端之间的耦合性,为后续单独扩展应用服务器或者单独扩展WCF中间件集群提供了便利性。在扩展应用服务器时,无需考虑客户端对其扩展造成的影响。同理在扩展WCF中间件时,也无需考虑机组GPRS模块对其扩展造成的影响。

系统通过通用的WCF接口方式来提供给各种类型的客户端进行连接,而不是以socket的方式,这是为了方便后续能够扩展更多类型的客户端连接。同时前期客户端可以直接连接数据库,如果由第三方开发的程序来连接数据库时,会对数据的安全会带来一定的隐患,所以本发明的系统通过WCF接口的方式,限制了客户端访问数据库的某些权限,提升了系统数据的安全性。

实施例2

在本申请实施例2中还提供一种应用于上述数据处理的分布式系统的数据处理的方法。图4为本申请实施例提供的一种数据处理的方法流程图。虽然下文描述流程包括以特定顺序出现的多个操作,但是应该清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。如图4所示,方法可以包括S1-S4:

S1:应用服务器获取GPRS模块发送的待监控机组的原始数据;

待监控机组中的原始数据可以通过其上的GPRS模块进行传输,GPRS模块可以将原始数据发送至应用服务器中的DTU接入模块。在一个可选的实施方式中,分布式系统包括:负载均衡器,应用服务器为多个,在实现上述S1时,GPRS模块连接至负载均衡器;负载均衡器根据应用服务器的负载状态,将连接请求发送至负载最小的应用服务器;负载最小的应用服务器获取GPRS模块发送的待监控机组的原始数据。

S2:应用服务器对原始数据进行参数化处理,并将参数化处理后的数据发送至缓存服务器;

具体实现时,应用服务器中的DTU接入模块接收GPRS模块发送的待监控机组的原始数据;DTU接入模块将接收的待监控机组的原始数据发送至应用服务器中的数据解析模块;数据解析模块将待监控机组的原始数据进行解析,并将解析完的数据发送至缓存服务器的Redis集群模块。

S3:数据访问服务器从缓存服务器中获取参数化后的数据并将参数化后的数据存储至数据库中;

具体实现时,数据访问服务器中的机组数据存储集群模块根据预先与缓存服务器的Redis集群模块建立的订阅关系,从Redis集群模块中获取参数化后的数据;机组数据存储集群模块将获取的参数化后的数据存入数据库中。

S4:接口服务器从缓存服务器中获取参数化后的数据,并将参数化后的数据分发给对应的监控客户端。

具体实现时,接口服务器中的WCF中间集群模块根据预先与缓存服务器的Redis集群模块建立的订阅关系,从Redis集群模块中获取参数化后的数据;WCF中间集群模块将获取的参数化后的数据分发给对应的监控客户端。

此外,作为优选,数据访问服务器中还包括工程信息同步模块,在监听获知缓存服务器的Redis集群模块触发工程信息修改时,工程信息同步模块将修改的工程信息同步至数据库。

在本发明提供的优选的实施方式中,整个分布式系统将现有技术中机组GPRS模块与客户端通过关系处理模块相连的方式替换成了缓存服务器利用其自身发布/订阅特性的方式。客户端需要哪个机组数据则去在缓存服务器订阅那个机组的数据,不需要则不订阅,这些订阅的关系由缓存服务器自身去完成,应用服务器无需去记录哪些客户端监控了哪些机组GPRS模块,减少了机组GPRS模块与客户端关系处理的逻辑复杂性,因此降低了机组GPRS模块与客户端之间的耦合性,为后续单独扩展应用服务器或者单独扩展接口服务器提供了便利性。在扩展应用服务器时,无需考虑客户端对其扩展造成的影响。在扩展接口服务器时,也无需考虑机组GPRS模块对其扩展造成的影响。同时,接口服务器可设置所支持的接口方式(如WCF接口方式)来提供给各种类型的客户端进行连接,方便后续能够扩展更多类型的客户端连接,并且,通过接口服务器可限制客户端访问数据库的某些权限,提高系统安全性。本发明提供的方案可有效地解决现有技术中数据处理的分布式系统中扩展性、兼容性和安全性不够完善的问题,提高数据处理的分布式系统中扩展性、兼容性和安全性。

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

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