时空流数据集成平台的制作方法

文档序号:21363721发布日期:2020-07-04 04:38阅读:324来源:国知局
时空流数据集成平台的制作方法

本发明涉及一种数据处理与传输系统,尤其是一种时空流数据集成平台。



背景技术:

公交卡刷卡记录、行车记录仪记录的驾驶行为、gps/北斗定位数据、飞机船舶的态势信息、设备运行状况、卫星对地观测信息等各式各样的实时流数据信息,构成了智慧城市、物联网、工业4.0的基础。这些实时信息由于都具有时间和空间属性标签,描述一个物体在历史的时间维度和地理纬度上的状态变化信息,而对于这些数据的分析,就是尝试掌握并把控其变化的规律的过程。随着物联网、大数据和人工智能技术的发展,时空流数据呈现爆发式的增长。

时空流数据的集成系统至少必须具备高吞吐量、高缓存和实时处理的能力。但现有的数据集成软件系统和方法多用于离线文件的批处理,如专利:数据集成系统和数据集成方法(申请号201310392454.3)、一种数据集成系统及方法(申请号:201811558696.4)、基于铝电解工厂的数据集成平台(申请号:201711481111.9),其目的是将业务数据(操作数据)文件从多个应用系统的数据库集成到统一的数据仓库中,以便于支持延时的决策分析,这类集成系统不具备高吞吐、高并发能力,也不能支持实时流计算方法,完全无法满足时空流数据的集成要求,难以整合利用时空流数据并从中获益。



技术实现要素:

本发明的目的在于克服现有技术中存在的不足,提供一种时空流数据集成平台,以高吞吐、高可用、高并发的分布式消息中间件为基础,根据时空流数据的特点和传输、集成、应用需求进行改进和性能提升。本发明采用的技术方案是:

一种时空流数据集成平台,包括:

数据传输模块,以分布式消息中间件为基础,建立控制和管理功能,供用户建立“数据源-连接器-消息中间件-连接器-数据目的地”之间的传输通道;

用户管理模块,用于注册和审核用户、管理历史操作日志,以及为用户分配权限;

任务管理模块,提供任务的新建、控制和通知功能;任务是指通过数据传输模块建立的传输通道执行和完成一次数据传输的过程;

运维监控模块,通过可视化运维看板管控所有数据传输过程和进展情况,提供多样化的图表;

实时计算模块,结合流式处理的分布式计算中间件,以api接口方式提供针对时空流数据的过滤、聚合、汇总实时计算;

数据清洗模块,提供自动化的纠正和转换方法,处理存在的无效数据、重复数据、异常数据。

进一步地,用户管理模块通过系统界面接收请求,进行权限验证后将权限转发给任务管理模块、实时计算模块、运维监控模块和数据传输模块;

实时计算模块通过消息中间件提供的调用接口输出数据进行处理、运维监控模块通过消息中间件提供的接口读取日志和运行状态,处理后进行呈现;

任务管理模块通过进程调用消息中间件的控制接口,实现任务管理;

数据传输模块通过接口调用实现连接器和消息中间件的参数配置。

进一步地,数据传输模块具体包括:

节点管理单元,用于新增、配置、修改和检测物理节点;

连接器管理单元,提供多个连接器的新建、配置、控制;显示正在运行的连接器列表和状态,实现连接器启动、暂停、停止和恢复,设置定时信息,包括执行频率和执行时间;

传输管理单元,用于通过可视化界面和拖拽方式实现数据源和数据目的地的传输管道,传输管理包含如下内容:连接配置、错误提示、内容管理。

进一步地,用户管理模块包括:

用户与用户组单元:提供用户注册、审核、登录和个人信息管理功能,提供创建和管理用户组功能,并将用户进行分组管理;

权限管理单元,用于添加和删除用户权限;组权限允许特定组中的每个用户具有指定的权限;支持为用户和用户组设置以下权限:

管理权限;

读权限,可以查看任务信息和执行情况和日志信息;

写权限,可以新建连接器和任务;

执行权限,可以运行、暂定、恢复、取消任务;

调用权限,可以调用实时计算api,以调用实时计算模块中的各计算单元;

用户日志单元,记录并能够呈现用户登录、创建、执行任务的日志信息。

进一步地,任务管理模块包括:

任务与任务组单元,提供任务和任务组的新建和编辑功能;供用户新建和删除任务,编写任务描述信息,说明任务或者任务组的意图,授予用户组管理任务的权限,或将任务分配至任务组中;

任务中心单元,呈现任务概览信息和运行状态,监控任务的执行情况,可视化管理数据传输过程,查看与任务相关的操作通知信息;

任务控制单元,用于进行,

任务取消:终止正在运行的任务并立即使任务失败;

任务暂停:阻止新任务或者连接器的运行,目前正在运行的任务、连接器照常进行;

任务恢复:恢复暂停执行;

任务重试:当任务仍处于活动状态时,重试将重新启动所有失败作业;

准备执行:设置任务运行的时间;

事件通知单元,在任务出现变更或执行过程中出现重大情况时,通知与任务相关的用户;每个任务均可设置如下通知项:任务变更、任务开始、任务失败、任务完成。

进一步地,运维监控模块,包括:

集群概况监控单元:进行包括主题数量、broker节点数量和地址、监控分区数量、leader数量监控项目;

节点负载监控单元:进行包括数据流入/流出速度、cpu占用率、网络流入/流出速度、磁盘读写速度、io等待情况、磁盘占有率、内存使用率监控项目;

数据传输监控单元:进行包括数据流入/流出总数、数据流入/流出速度、平均速度、1分钟或多分钟均速监控项目;

错误事件管理单元:实时收集所有的数据相关错误,以错误概览和详情方式呈现。

进一步地,实时计算模块包括:

多维度组合过滤单元,根据给定的不同时间、空间维度的条件,查找符合条件的时空流数据;

交互级聚合查询单元,提供时空流数据的聚合方法;

预聚合单元,对实时写入后的时空流数据经过预聚合的运算,生成按指定规则的结果;

自动汇总单元,不同时间层面上把相同维度的数据做聚合,转换为更粗时间粒度的数据,但是还是拥有相同的维度。

进一步地,清洗任务管理单元,主要负责对清洗任务的各个过程进行管理,包括任务控制、任务生成、任务列表;

异常数据刪除单元,主要负责,检测明显偏离所属样本的其余观测值的数据并对其值进行修正,利用拟合曲线或者聚类结果对异常数据进行处理;

无用数据删除,主要针对对于后续数据挖掘不存在意义的数据进行删除;

缺失数据填补单元,主要针对在数据采集、传输和存储过程中,由于疏忽或者设备故障原因造成的值空缺的数据,负责用指定参数填补缺失,利用拟合曲线、平均值填补记录中的缺失值;

拟合曲线生成单元,主要负责根据数据曲线找到相似曲线,通过加权进行空缺填补和异常完善,生成拟合曲线;

清洗结果对比单元,主要负责对比清洗前和清洗后的文件,计算清洗操作对文件的影响,即清洗前后数据的变化情况。

本发明的优点在于:

1)全程管控:通过可视化运维看板管控所有数据传输过程和进展情况,提供多样化的图表,实现对集群概况、节点负载、消息情况等多维度监控与告警设置,帮助用户及时发现问题。

2)实时计算:与传统的数据集成软件系统不同,时空流数据集成平台采用分布式消息中间件为为基础,具备数据实时计算能力,在此基础上,为了让用户能够更好的利用这些数据,结合spark、flink等流式处理框架,集成平台提供针对时空流数据的过滤、聚合、汇总等多种实时计算方法,大幅降低数据应用成本。

附图说明

图1为本发明的系统部署示意图。

图2为本发明的系统中各模块关系示意图。

具体实施方式

下面结合具体附图和实施例对本发明作进一步说明。

本发明实施例提出的时空流数据集成平台,其是一套软件,该软件的部署参考图1所示;图1中,所有服务器均通过网线连接在同一个局域网内;

集群的概念可以解释为两种,其一是物理集群,处于同一个局域网下的所有物理设备的总和可以称为一个物理集群,其中的一台机器被称为物理节点;其一是软件集群,指某个分布式系统所用的服务器(可以是物理服务器或者虚拟服务器)的总和,其中分布式系统的一部分部署在其中一台服务器上,这台服务器被称为分布式集群的一个节点;本文主要是用的第二种概念;

数据源和数据目的地主要是由数据库服务器承载的各类数据库系统和web服务器承载的、可以通过标准的webservice接口提供数据的web系统;

时空数据流集成平台需要两种分布式系统作为基础,一种是分布式消息中间件,数据传输模块在其基础上实现,一种是分布式计算中间件,实时计算模块在此基础上实现;分布式消息中间件部署至少需要3台服务器,每台服务器部署一个broker(代理者模块)进行数据传输;分布式计算中间件部署至少需要4台服务器,其中一台服务器部署一个proxy(代理者模块)作为主节点,其余三台服务器每台部署一个实现者模块进行计算;

时空数据流集成平台作为一个web系统,可以使用web容器(如tomcat或者apache应用服务器软件)提供基础运行环境,为提高系统稳定性,也可以采用负载均衡服务器软件(如nginx)组建集群;将时空数据流集成平台冗余部署在数个web服务器节点上,这些web服务器节点上都是相同的时空数据流集成平台的软件;

时空流数据集成平台,各模块之间的关系如图2所示,

1、用户管理模块通过系统界面接收请求,进行权限验证后将权限转发给任务管理模块、实时计算模块、运维监控模块和数据传输模块;

2、实时计算模块通过消息中间件提供的调用接口输出数据进行处理、运维监控模块通过消息中间件提供的接口读取日志和运行状态,处理后进行呈现;

3、任务管理模块通过进程调用消息中间件的控制接口,实现任务管理;

4、数据传输模块通过接口调用实现连接器和消息中间件的参数配置;

时空流数据集成平台,具体包括:

1)数据传输模块,以高吞吐、高并发、高可用的分布式消息中间件为基础,建立一系列的控制和管理功能,用户可以通过可视化界面建立“数据源-连接器-消息中间件-连接器-数据目的地”之间的传输通道;数据传输模块具体包括以下单元:

节点管理单元,用于新增、配置、修改和检测物理节点;数据传输模块可以部署在多个节点上,实现分布式的消息传输;

连接器管理单元,连接器是将消息中间件与数据源或者数据目的地相连接的逻辑结构,连接器管理单元提供多个连接器的新建、配置、控制;显示正在运行的连接器列表和状态,实现连接器启动、暂停、停止和恢复等,设置定时信息,包括执行频率和执行时间;

传输管理单元,通过可视化界面和拖拽方式实现数据源和数据目的地的传输管道,即可开始执行数据同步工作,传输管理包含如下内容:连接配置(选择连接类型、连接方式、配置主机名称、数据库名称、端口号、用户名密码信息)、错误提示(能够对缺少数据库驱动包、数据库无法正常访问、数据库连接参数配置等错误进行提示)、内容管理(显示数据源的字段名、类型等数据内容,用户可通过可视化界面配置需要传输的字段,配置传输时间和传输频率);

2)用户管理模块,用于注册和审核用户、管理历史操作日志,以及为用户分配权限;用户管理模块包括以下单元:

用户与用户组单元:提供用户注册、审核、登录和个人信息管理功能,提供创建和管理用户组功能,并将用户进行分组管理;

权限管理单元,用于添加和删除用户权限;组权限允许特定组中的每个用户具有指定的权限,通过取消选中组权限来删除组权限;

支持为用户和用户组设置以下权限:管理权限(任何权限)、读权限(可以查看任务信息和执行情况和日志信息)、写权限(可以新建连接器和任务)、执行权限(运行、暂定、恢复、取消任务)、调用权限(可以调用实时计算api,以调用实时计算模块中的各计算单元);

用户日志单元,记录并能够呈现用户登录、创建、执行任务等关键日志信息,支持通过日志种类、用户和时间段为关键字进行检索;

3)任务管理模块,提供任务的新建、控制和通知功能;任务是指通过数据传输模块建立的传输通道执行和完成一次数据传输的过程;包括以下单元:

任务与任务组单元,提供任务和任务组的新建和编辑功能;供用户新建和删除任务,编写任务描述信息,说明任务或者任务组的意图,授予用户组可以管理任务的权限,或将任务分配至任务组中;

任务中心单元,以列表方式呈现任务概览信息和运行状态,监控任务的执行情况,可视化管理数据传输过程,查看与任务相关的操作通知信息;

任务控制单元,用于进行,

任务取消:终止正在运行的任务并立即使任务失败;

任务暂停:阻止新任务或者连接器的运行,目前正在运行的任务、连接器照常进行;

任务恢复:恢复暂停执行;

任务重试:当任务仍处于活动状态时,重试将重新启动所有失败作业;

准备执行:设置任务运行的时间;

事件通知单元,在任务出现变更或执行过程中出现重大情况时,通知与任务相关的用户;支持事件历史日志列表和检索功能;每个任务均可设置如下通知项:任务变更(如更改数据源或者连接器配置)、任务开始、任务失败、任务完成等;

4)运维监控模块,通过可视化运维看板管控所有数据传输过程和进展情况,提供多样化的图表,实现对集群概况、节点负载、消息情况等多维度监控与告警设置,帮助用户及时发现问题;具体包括以下单元:

集群概况监控单元:进行主题数量(topics)、broker节点数量(brokers)和地址、监控分区数量(partitions)、leader数量(leaders,消息中间件中的一种节点)等监控项目;

节点负载监控单元:进行数据流入(msgin)/流出速度(msgout)(条/s)、cpu占用率(cpuused)、网络流入/流出速度(bytesin/bytesout)、磁盘读写速度(ioread/iowrite)、io等待情况(iowait)、磁盘占有率、内存使用率(memused)等监控项目;

数据传输监控单元:进行数据流入/流出总数(msgcount)、数据流入(msgin)/流出速度(msgout)(条/s)、平均速度(meanrate)、1分钟均速(oneminuterate)、5/15分钟均速等监控项目;

错误事件管理单元:实时收集所有的数据相关错误,以错误概览和详情方式呈现给管理人员,帮助管理人员分析错误原因,提高工作效率;

5)实时计算模块,与传统的数据集成软件系统不同,时空流数据集成平台采用分布式消息中间件为为基础,具备数据实时计算能力,在此基础上,为了让用户能够更好的利用这些数据,结合spark、flink等流式处理的分布式计算中间件,以api接口方式提供针对时空流数据的过滤、聚合、汇总等多种实时计算,大幅降低数据应用成本;主要包括以下单元:

多维度组合过滤单元,根据给定的不同时间、空间维度的条件,查找符合条件的时空流数据;

交互级聚合查询单元,提供时空流数据的avg、sum、max/min、方差/标准差、count、topn等聚合方法;时空流数据记录的是最原始的状态变化信息,而查询和分析通常需要的不是原始值,而是基于原始值的一些统计值,为此,集成平台提供的avg、sum、max/min、方差/标准差、count、topn等聚合方法;

预聚合单元,时空流数据实时写入后就会经过预聚合的运算,生成按指定规则的结果(avg、sum、max/min、方差/标准差、count、topn),供用户查询而不需要再次计算;当数据量较大,采用交互级聚合查询方式获取数据结果,过程较为缓慢,为此,集成平台提供预聚合功能;

自动汇总单元,不同时间层面上把相同维度的数据做聚合,转换为更粗时间粒度的数据,但是还是拥有相同的维度;

6)数据清洗模块,提供自动化的纠正和转换方法,处理存在的无效数据、重复数据、异常数据;用户可通过可视化界面在连接器中设置数据清洗方法,完成数据实时清洗;

由于设备状态和外界环境等原因,存在大量无效数据、重复数据、异常数据等“脏”数据,由于时空流数据的数据量较大且要求实时计算,传统集成系统提供的手工清洗方法并不适合,时空流数据集成平台提供自动化的纠正和转换方法,用户可通过可视化界面在连接器中设置数据清洗方法,完成数据实时清洗。主要包括以下单元:

清洗任务管理单元,主要负责对清洗任务的各个过程进行管理,包括任务控制(控制清洗任务的开始和停止)、任务生成(新建和编辑清洗任务的相关信息如清洗任务的id、清洗任务的描述信息以及清洗结果文件的名字)、任务列表(获取所有清洗任务列表和任务具体信息、对清洗任务的信息进行查询);

异常数据刪除单元,主要负责,检测明显偏离所属样本的其余观测值的数据并对其值进行修正,利用拟合曲线或者聚类结果对异常数据进行处理;

无用数据删除,主要针对对于后续数据挖掘不存在意义的数据进行删除,例如大部分数据值都空缺或者相同的记录或者属性;

缺失数据填补单元,主要针对在数据采集、传输和存储过程中,由于疏忽或者设备故障等原因造成的值空缺的数据,负责用指定参数填补缺失,利用拟合曲线、平均值填补记录中的缺失值;

拟合曲线生成单元,主要负责根据数据曲线找到相似曲线,通过加权进行空缺填补和异常完善,生成拟合曲线;通过曲线相似性度量以找出最相似的n条曲线,再根据相似曲线通过加权得到该曲线的拟合曲线;

清洗结果对比单元,主要负责对比清洗前和清洗后的文件,计算清洗操作对文件的影响,即清洗前后数据的变化情况。

最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

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