一种异构数据实时采集的方法技术

技术编号:22238183 阅读:27 留言:0更新日期:2019-10-09 18:04
本发明专利技术公开了一种异构数据实时采集的方法,属于大数据技术领域,包括建立数个代理服务器、数个对接服务器和管理服务器,在每一个代理服务器中均建立一个或多个Agent组件,在每一个对接服务器中均建立一个或多个Sink组件,在管理服务器中建立MQ日志队列和配置页面,解决了数据采集不及时以及采集时间点集中影响业务系统的技术问题,本发明专利技术将对不同数据源的实时采集,底层采用不同的技术,但是在上层是统一的管理和操作方法,通过实时分析数据库日志来采集数据的方式,本发明专利技术为了解决传输性能和可靠采用的数据封包协议。

A Real-time Acquisition Method for Heterogeneous Data

【技术实现步骤摘要】
一种异构数据实时采集的方法
本专利技术属于大数据
,尤其涉及一种异构数据实时采集的方法。
技术介绍
大数据时代,企业数据越来越多,许多企业都建立了数据仓库并且由于时效性业务,建立了实时计算的平台.数据仓库和实时计算的建立依赖于数据采集。一般的数据采集的技术方案是T+1的批量作业,然而T+1的批量作业采集方式,由于是定时执行任务会存在以下问题:1、采集时间不及时,不能够积极的响应实时业务需求;2、采集时间点集中对数据库和业务系统造成很压力过大;3、不同数据源采集工具技术不一致,带来管理成本很大。
技术实现思路
本专利技术的目的是提供一种异构数据实时采集的方法,解决了数据采集不及时以及采集时间点集中影响业务系统的技术问题。为实现上述目的,本专利技术采用如下技术方案:一种异构数据实时采集的方法,包括如下步骤:步骤1:建立数个代理服务器、数个对接服务器和管理服务器,所有代理服务器均与管理服务器通过互联网通信,所有对接服务器均与管理服务器通过互联网通信,代理服务器用于连接不同的数据库,对接服务器用于连接不同的分布式存储系统;步骤2:在每一个代理服务器中均建立一个或多个Agent组件,在每一个对接服务器中均建立一个或多个Sink组件,在管理服务器中建立MQ日志队列和配置页面;步骤3:每一个Agent组件分别模拟一个数据库,实时获取数据库的数据变动,生成数据变动信息,并将数据变动信息解析为JSON文件;步骤4:代理服务器将JSON文件发送给管理服务器,管理服务器接收到JSON文件后,将JSON文件存储在MQ日志队列中;步骤5:对接服务器通过每一个Sink组件分别模拟一个分布式存储系统,Sink组件从管理服务器中的MQ日志队列中读取JSON文件,并将JSON文件实时写入分布式存储系统,对接服务器通过JSON文件实现与代理服务器之间的对接;步骤6:管理员通过管理服务器提供的配置页面对所有代理服务器和所有对接服务器进行配置和部署,并通过配置页面对代理服务器与对接服务器之间的数据传输实施启动、停止和监控。优选的,所述对接服务器、所述对接服务和所述管理服务器之间的数据传输采用以下协议格式将多条数据封装成数据包压缩进行传输:MagicCode+packagelength+Compresstype+Packagesize+data1length+data2length+...+dataNlength+data1+data1crc+data2+data2crc+...dataN+dataNcrc;其中,MagicCode固定为ICKXPKG字符,标示一个数据包的开始;packagelength是一个4字节的INT类型数据,代表着包的长度;Compresstype为1字节数据代表着使用的压缩算法;Packagesize代表着数据包包含数据条数;data1length、data2length、...dataNlength表示数据包的大小,N的取值为正整数;data1、data2、...dataN为数据的内容;data1crc、data2crc、...dataNcrc代表每一个数据的校验位,所述校验位为4位。优选的,在执行步骤3时,所述数据库的数据变动为数据库中格式为二进制的数据的变动。优选的,在执行步骤6时,管理员通过所述配置页面输入配置信息,管理服务器根据配置信息生成配置文件,并将配置文件发送给配置文件中指定的代理服务器或对接服务器。本专利技术所述的一种异构数据实时采集的方法,解决了数据采集不及时以及采集时间点集中影响业务系统的技术问题,本专利技术将对不同数据源的实时采集,底层采用不同的技术,但是在上层是统一的管理和操作方法,通过实时分析数据库日志来采集数据的方式,本专利技术为了解决传输性能和可靠采用的数据封包协议。附图说明图1是本专利技术的系统构架图;图2是本专利技术的系统管理示意图;图3是本专利技术的数据流向图。具体实施方式如图1-图3所示的一种异构数据实时采集的方法,包括如下步骤:步骤1:建立数个代理服务器、数个对接服务器和管理服务器,所有代理服务器均与管理服务器通过互联网通信,所有对接服务器均与管理服务器通过互联网通信,代理服务器用于连接不同的数据库,对接服务器用于连接不同的分布式存储系统;步骤2:在每一个代理服务器中均建立一个或多个Agent组件,在每一个对接服务器中均建立一个或多个Sink组件,在管理服务器中建立MQ日志队列和配置页面;步骤3:每一个Agent组件分别模拟一个数据库,实时获取数据库的数据变动,生成数据变动信息,并将数据变动信息解析为JSON文件;步骤4:代理服务器将JSON文件发送给管理服务器,管理服务器接收到JSON文件后,将JSON文件存储在MQ日志队列中;步骤5:对接服务器通过每一个Sink组件分别模拟一个分布式存储系统,Sink组件从管理服务器中的MQ日志队列中读取JSON文件,并将JSON文件实时写入分布式存储系统,对接服务器通过JSON文件实现与代理服务器之间的对接;步骤6:管理员通过管理服务器提供的配置页面对所有代理服务器和所有对接服务器进行配置和部署,并通过配置页面对代理服务器与对接服务器之间的数据传输实施启动、停止和监控。在本实施例中,Agent组件有具体的各种类型的实现,用于应对不同的数据库,本实施例中的数据库包括MySQLAgent、OracleAgent和MongoAgent3,Agent组件分别实时采集MySQL、Oracle和MongoDB的数据;对应Sink组件实现有HBaseSink、HiveSink、HdfsSink,HBaseSink、HiveSink和HdfsSink分别将MQ日志队列中的数据对接到HBase、Hive和Hdfs中。所述分布式存储系统包括HBase、Hive和Hdfs。优选的,所述对接服务器、所述对接服务和所述管理服务器之间的数据传输采用以下协议格式将多条数据封装成数据包压缩进行传输:MagicCode+packagelength+Compresstype+Packagesize+data1length+data2length+...+dataNlength+data1+data1crc+data2+data2crc+...dataN+dataNcrc;其中,MagicCode固定为ICKXPKG字符,标示一个数据包的开始;packagelength是一个4字节的INT类型数据,代表着包的长度;Compresstype为1字节数据代表着使用的压缩算法;Packagesize代表着数据包包含数据条数;data1length、data2length、...dataNlength表示数据包的大小,N的取值为正整数;data1、data2、...dataN为数据的内容;如,data1可以根据data1length从解压后的数据中读出。data1crc、data2crc、...dataNcrc代表每一个数据的校验位,所述校验位为4位,读取完数据之后,在读取对应长度的校验信息,用来校验数据在传输中是否变异。优选的,在执行步骤3时,所述数据库的数据变动为数据库中格式为二进制的数据的变动。优选的,在执行步骤6时,管理员通过所述配置页面输入配置信息,管理服务器根据配置信息生成配置文件,并将本文档来自技高网...

【技术保护点】
1.一种异构数据实时采集的方法,其特征在于:包括如下步骤:步骤1:建立数个代理服务器、数个对接服务器和管理服务器,所有代理服务器均与管理服务器通过互联网通信,所有对接服务器均与管理服务器通过互联网通信,代理服务器用于连接不同的数据库,对接服务器用于连接不同的分布式存储系统;步骤2:在每一个代理服务器中均建立一个或多个Agent组件,在每一个对接服务器中均建立一个或多个Sink组件,在管理服务器中建立MQ日志队列和配置页面;步骤3:每一个Agent组件分别模拟一个数据库,实时获取数据库的数据变动,生成数据变动信息,并将数据变动信息解析为JSON文件;步骤4:代理服务器将JSON文件发送给管理服务器,管理服务器接收到JSON文件后,将JSON文件存储在MQ日志队列中;步骤5:对接服务器通过每一个Sink组件分别模拟一个分布式存储系统,Sink组件从管理服务器中的MQ日志队列中读取JSON文件,并将JSON文件实时写入分布式存储系统,对接服务器通过JSON文件实现与代理服务器之间的对接;步骤6:管理员通过管理服务器提供的配置页面对所有代理服务器和所有对接服务器进行配置和部署,并通过配置页面对代理服务器与对接服务器之间的数据传输实施启动、停止和监控。...

【技术特征摘要】
1.一种异构数据实时采集的方法,其特征在于:包括如下步骤:步骤1:建立数个代理服务器、数个对接服务器和管理服务器,所有代理服务器均与管理服务器通过互联网通信,所有对接服务器均与管理服务器通过互联网通信,代理服务器用于连接不同的数据库,对接服务器用于连接不同的分布式存储系统;步骤2:在每一个代理服务器中均建立一个或多个Agent组件,在每一个对接服务器中均建立一个或多个Sink组件,在管理服务器中建立MQ日志队列和配置页面;步骤3:每一个Agent组件分别模拟一个数据库,实时获取数据库的数据变动,生成数据变动信息,并将数据变动信息解析为JSON文件;步骤4:代理服务器将JSON文件发送给管理服务器,管理服务器接收到JSON文件后,将JSON文件存储在MQ日志队列中;步骤5:对接服务器通过每一个Sink组件分别模拟一个分布式存储系统,Sink组件从管理服务器中的MQ日志队列中读取JSON文件,并将JSON文件实时写入分布式存储系统,对接服务器通过JSON文件实现与代理服务器之间的对接;步骤6:管理员通过管理服务器提供的配置页面对所有代理服务器和所有对接服务器进行配置和部署,并通过配置页面对代理服务器与对接服务器之间的数据传输实施启动、停止和监控。2.如权利要求1所述的一种异构数据实时采集的方法,其特征在于:所述对接服务器、所述对接服务和所述管理服务器之间的数据传输采...

【专利技术属性】
技术研发人员:顾凌云王伟李军军李海全张力华
申请(专利权)人:常州冰鉴信息科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1