一种高可靠性分布式海量数据传输方法及工具技术

技术编号:30017944 阅读:21 留言:0更新日期:2021-09-11 06:30
本发明专利技术公开一种高可靠性分布式海量数据传输方法,涉及数据传输技术领域,其实现基于分布式系统A和分布式系统B,其实现过程包括:分布式系统A启动logstash,通过定时任务下的多线程任务同时采集多个数据表的数据,并生成统一格式的数据文件;分布式系统A压缩所有数据文件,并在压缩完毕后通知分布式系统B;分布式系统B根据分布式系统A的通知消息获取压缩的数据文件;分布式系统B通过多线程并发的方式,解压数据文件,并批量插入到相应数据表中。本发明专利技术还公开一种数据传输工具,其包括部署于分布式系统的采集生成模块、压缩通知模块、获取文件模块和解压插入模块,通过与前述方法相结合,能够提高数据传输的效率、安全性、稳定性、便捷性。便捷性。便捷性。

【技术实现步骤摘要】
一种高可靠性分布式海量数据传输方法及工具


[0001]本专利技术涉及数据传输
,具体的说是一种高可靠性分布式海量数据传输方法及工具。

技术介绍

[0002]信息是决策的核心依据,及时有效的将数据采集处理就显得格外重要。因为数据的分散以及结构的不一致,导致传动的数据收集方式十分的费时费力。
[0003]数据的使用迫切需要一种高效收集数据方式,以将不同数据库不同数据结构的数据进行收集并且处理。为解决这一问题,人们开始关注企业数据集成研究,尝试着对不同系统中的数据进行再加工,从而形成一个集成的、面向分析处理的环境,以便能够从这些海量的信息中挖掘规律、提取知识、辅助决策。数据抽取工具的出现无疑可以提供对应的帮助,它使数据的收集变的非软件开发人员也可以轻易操作,大大降低了数据收集的成本和时间。但是,目前数据传输工具在处理海量数据时,很难做到性能高效、过程稳定和数据安全。

技术实现思路

[0004]本专利技术针对目前技术发展的需求和不足之处,提供一种高可靠性分布式海量数据传输方法及工具。
[0005]首先,本专利技术公开一种高可靠性分布式海量数据传输方法,解决上述技术问题采用的技术方案如下:
[0006]一种高可靠性分布式海量数据传输方法,其实现基于分布式系统A和分布式系统 B,其实现过程包括:
[0007]步骤S1、分布式系统A启动logstash,通过定时任务下的多线程任务同时采集多个数据表的数据,并生成统一格式的数据文件;
[0008]步骤S2、分布式系统A压缩所有数据文件,并在压缩完毕后通知分布式系统B;
[0009]步骤S3、分布式系统B根据分布式系统A的通知消息获取压缩的数据文件;
[0010]步骤S4、分布式系统B通过多线程并发的方式,解压数据文件,并批量插入到相应数据表中。
[0011]执行步骤S1时,每个数据表的数据生成csv格式的数据文件。
[0012]执行步骤S2时,分布式系统A将所有数据文件压缩成zip格式压缩包,全部数据文件压缩完毕后,分布式系统A通过kafka消息通道通知分布式系统B;
[0013]执行步骤S3时,分布式系统B通过kafka消息通道获取压缩包。
[0014]执行步骤S4后,分布式系统B自动删除已经进行过解压的压缩包。
[0015]分布式系统A启动logstash,可以首先自定义配置以下参数:
[0016]分布式系统A的数量、生成数据文件的数量,解压后数据文件的插入并发数量、每个数据文件的最大容量。
[0017]其次,本专利技术公开一种高可靠性分布式海量数据传输工具,解决上述技术问题采
用的技术方案如下:
[0018]一种高可靠性分布式海量数据传输工具,其结构包括部署于分布式系统的采集生成模块、压缩通知模块、获取文件模块和解压插入模块;
[0019]在分布式系统A向分布式系统B传输数据时,
[0020]部署于分布式系统A的采集生成模块启动logstash,通过定时任务下的多线程任务同时采集多个数据表的数据,并生成统一格式的数据文件;
[0021]部署于分布式系统A的压缩通知模块压缩所有数据文件,并在压缩完毕后通知分布式系统B;
[0022]部署于分布式系统B的获取文件模块根据压缩通知模块的通知消息获取压缩的数据文件;
[0023]部署于分布式系统B的解压插入模块通过多线程并发的方式解压数据文件,并批量插入到相应数据表中。
[0024]具体的,所涉及采集生成模块将采集的数据生成csv格式的数据文件。
[0025]具体的,所涉及压缩通知模块将所有数据文件压缩成zip格式压缩包,全部数据文件压缩完毕后,所述压缩通知模块还通过kafka消息通道通知分布式系统B。
[0026]更具体的,所涉及获取文件模块根据压缩通知模块的通知消息,通过kafka消息通道获取压缩包。
[0027]优选的,所涉及解压插入模块将解压得到的数据文件批量插入到相应数据表中,随后,所述解压插入模块自动删除压缩包。
[0028]本专利技术的一种高可靠性分布式海量数据传输方法及工具,与现有技术相比具有的有益效果是:
[0029](1)本专利技术采用了多线程同时处理的方式,对数据表表的多条数据采用了批量处理的方式,在海量数据的情况下,多线程和批量处理的使用大大提高了数据传输效率;
[0030](2)本专利技术数据传输过程中采用压缩文件的方式,有效避免了传输过程中的数据被篡改,也解决了单条数据传输方式带来的稳定性问题,使得整个数据采集过程安全且稳定;
[0031](3)本专利技术可以便捷快速的抽取分布式数据库的海量数据,且按照需要的格式进行输出,另外,本专利技术还可以进行参数可配置,包括进行数据传输的分布式系统数量、生成数据文件的数量,解压后数据文件的插入并发数量、每个数据文件的最大容量。
附图说明
[0032]附图1是本专利技术实施例一的数据传输示意图;
[0033]附图2是本专利技术实施例一的数据传输流程图;
[0034]附图3是本专利技术实施例二中各模块之间的数据传输示意图。
具体实施方式
[0035]为使本专利技术的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本专利技术的技术方案进行清楚、完整的描述。
[0036]实施例一:
[0037]本实施例提出一种高可靠性分布式海量数据传输方法,其实现基于分布式系统A 和分布式系统B,其实现过程包括:
[0038]步骤S1、分布式系统A启动logstash,通过定时任务下的多线程任务同时采集多个数据表的数据,并生成csv格式的数据文件。
[0039]分布式系统A启动logstash,可以首先自定义配置以下参数:
[0040]分布式系统A的数量、生成数据文件的数量,解压后数据文件的插入并发数量、每个数据文件的最大容量。
[0041]步骤S2、分布式系统A将所有数据文件压缩成zip格式压缩包,全部数据文件压缩完毕后,分布式系统A通过kafka消息通道通知分布式系统B。
[0042]步骤S3、分布式系统B接收分布式系统A的通知消息,通过kafka消息通道获取压缩包。
[0043]步骤S4、分布式系统B通过多线程并发的方式,解压数据文件,并批量插入到相应数据表中。
[0044]执行步骤S4后,分布式系统B自动删除已经进行过解压的压缩包。
[0045](一)参考附图1,以营销平台作为分布式系统A,以行业监管平台及营销大数据平台作为分布式系统B,数据传输过程为:
[0046]营销平台的数据库DB2/Cracle启动logstash,通过定时任务下的多线程任务采集得到多个数据文件

1,后经过推送程序传送至传输通道;
[0047]行业监管平台及营销大数据平台通过读取程序获取传输通道的数据文件

1,并写入行业监管平台及营销大数据平台的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种高可靠性分布式海量数据传输方法,其特征在于,其实现基于分布式系统A和分布式系统B,其实现过程包括:步骤S1、分布式系统A启动logstash,通过定时任务下的多线程任务同时采集多个数据表的数据,并生成统一格式的数据文件;步骤S2、分布式系统A压缩所有数据文件,并在压缩完毕后通知分布式系统B;步骤S3、分布式系统B根据分布式系统A的通知消息获取压缩的数据文件;步骤S4、分布式系统B通过多线程并发的方式,解压数据文件,并批量插入到相应数据表中。2.根据权利要求1所述的一种高可靠性分布式海量数据传输方法,其特征在于,执行步骤S1时,每个数据表的数据生成csv格式的数据文件。3.根据权利要求1所述的一种高可靠性分布式海量数据传输方法,其特征在于,执行步骤S2时,分布式系统A将所有数据文件压缩成zip格式压缩包,全部数据文件压缩完毕后,分布式系统A通过kafka消息通道通知分布式系统B;执行步骤S3时,分布式系统B通过kafka消息通道获取压缩包。4.根据权利要求3所述的一种高可靠性分布式海量数据传输方法,其特征在于,执行步骤S4后,分布式系统B自动删除已经进行过解压的压缩包。5.根据权利要求1所述的一种高可靠性分布式海量数据传输方法,其特征在于,分布式系统A启动logstash,可以首先自定义配置以下参数:分布式系统A的数量、生成数据文件的数量,解压后数据文件的插入并发数量、每个数据文件的最大容量。6.一种高可...

【专利技术属性】
技术研发人员:刘天智张晨光姜丽芳
申请(专利权)人:浪潮软件股份有限公司
类型:发明
国别省市:

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

1