一种多数据源数据转发器及其设计方法技术

技术编号:35013195 阅读:64 留言:0更新日期:2022-09-21 15:10
本发明专利技术提出一种多数据源数据转发器及其设计方法,旨在实现在统一转发通信架构下,仅修改业务端逻辑。本方案主要按照三层结构:业务层,转发层,配置层,业务层主要完成按需数据转发:包含数据过滤,数据标准转化,数据筛选等流程;转发层主要完成数据源通信建立,数据通道建立,目标源通信建立,严格按照“source

【技术实现步骤摘要】
一种多数据源数据转发器及其设计方法


[0001]本专利技术涉及一种多数据源数据转发器及其设计方法,属于数据转发器


技术介绍

[0002]由于工业互联网涉及领域多,覆盖子行业广,产生数据种类,数据标准也不统一,因此数据治理,数据共享和数据融合作为工业大数据的排头兵应用而生。如何跨行业的数据共享?如何解决多数据源的数据传输?如何高效可靠的进行数据传输?如何将业务数据和物联数据融合?这些都是急需解决的重点问题。上述为工业互联网费大数据业务在数据共享的问题和急需解决的困难。
[0003]主要解决跨行业,跨公司级的数据共享,多数据源数据可靠传输,业务和物联数据高效融合等问题,现有技术存在以下不足:
[0004](1)如何实现工业大数据跨行业目标数据源标准的统一:由于工业大数据涉及行业和领域多,数据来源广,数据种类多乱杂情况突出
[0005](2)如何实现数据转发由于网络带宽导致数据丢失后的数据补传方式:由于数据传输依赖于网络,因为在异常网络情况下如何降低和避免数据丢失至关重要
[0006](3)如何保障数据在转发过程中的数据安全且不被恶意攻击:程序在公有云部署则有被恶意攻击的可能,如何保障数据传输安全,防止恶意攻击尤为关键

技术实现思路

[0007]本专利技术的目的在于克服现有技术中的不足,提供一种多数据源数据转发器及其设计方法,能够实现多数据源数据可靠传输。
[0008]为达到上述目的,本专利技术是采用下述技术方案实现的:
[0009]第一方面,本专利技术提供一种多数据源数据转发器,包括业务层,转发层,配置层和通信框架;
[0010]所述业务层用于按需数据转发:包含数据过滤,数据标准转化,数据筛选流程;
[0011]所述转发层用于完成数据源通信建立,数据通道建立,目标源通信建立,按照“source

channel

sink”的通信模式进行开发;
[0012]所述配置层用于完成数据源的配置;
[0013]通信框架为Netty。
[0014]第二方面,本专利技术提供了一种多数据源数据转发器的设计方法,包括以下步骤:
[0015]设置业务层,所述业务层用于按需数据转发:包含数据过滤,数据标准转化,数据筛选流程;
[0016]设置转发层,所述转发层用于完成数据源通信建立,数据通道建立,目标源通信建立,按照“source

channel

sink”的通信模式进行开发;
[0017]设置配置层,所述配置层用于完成数据源的配置;
[0018]选择Netty作为通信框架。
[0019]进一步的,设置配置层的方法包括:
[0020]配置层采用Scheduled缓存业务数据和数据类型,根据业务数据和更新频率为依据选择业务数据存储在内存还是缓存Redis上;
[0021]数据类型以集合形式MAP存储,基础结构为“sourceN

dataType”和“sinkN

dataType”。
[0022]进一步的,根据业务数据和更新频率为依据选择业务数据存储在内存还是缓存Redis上,包括:
[0023]业务数据大小以“1024M”为依据,更新频率以“10”分钟为依据,利用业务类型表达式:
[0024]如果业务数据>1024M且更新频率>10,则业务数据入Redis;
[0025]如果业务数据<1024M且更新频率>10,则业务数据入消息队列;
[0026]如果业务数据<1024M且更新频率<10,则业务数据入本地内存。
[0027]进一步的,所述方法还包括:添加soruce资源:从dataSet中获取source,并将抽取数据源配置依次加载到soruce队列中,并采用抽象工厂模式针对不同通信类型创建预初始化通信池,使用kafka创建kafkasource,使用tcp创建tcpsource;
[0028]Source资源按照抽象工厂模式建立,根据dataSet中的source获取响应的通信连接。
[0029]进一步的,Source资源按照抽象工厂模式建立,根据dataSet中的source获取响应的通信连接,包括:
[0030]步骤一:创建source抽象工厂接口类;
[0031]步骤二:创建不同类型的通信实现类;
[0032]步骤三:实现各source实例。
[0033]进一步的,设置业务层的方法包括:
[0034]获取source基础实时数据,并在配置表中增加数据字典限制;
[0035]数据标准规范包括时间数据格式,浮点型数据格式,整型/长整型数据格式,货比格式,布尔型格式的转义,保障数据数据格式的一致性。
[0036]进一步的,所述方法还包括添加channel资源:
[0037]channel设计兼容内存,消息队列和文件管道,分别对应“MemoryChannel”,“MQChannel”和“FileChannel”,其中MQ主要包括:kafka,activemq,rabbitmq,rocketmq;
[0038]该channel全部进行组件化封装,在配置中选择对应数据通道。
[0039]进一步的,数据通道的选择方法包括:
[0040]基本公式=R*S*D;R:可靠性;S:传输速度;D:存储介质;R取值范围为[

1,1];S取值范围[10,20,...,100];D取值为[0,1][0041]若基本公式<0,选择相应的方案为MemoryChannel;
[0042]若基本公式=0,选择相应的方案为FileChannel;
[0043]若基本公式>0,选择相应的方案为MQChannel;
[0044]根据项目不同的数据需求,结合数据源的目标源,在配置中选择合理的channel通道。
[0045]进一步的,所述方法还包括添加sink资源:
[0046]从dataSet中获取sink,并将写入数据源配置依次加载到sink队列中;
[0047]采用抽象工厂模式针对不同通信类型创建预初始化通信池,kafka创建kafkasink,tcp创建tcpsink;
[0048]sink资源按照抽象工厂模式建立,根据dataSet中的sink获取响应的通信连接,包括:
[0049]步骤一:创建sink抽象工厂接口类
[0050]publicinterfaceSinkFactory{publicvoidgetType(StringdataType);}
[0051]步骤二:创建不同类型的通信实现类
[0052]publicclassKafkaimplementsSinkFac本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多数据源数据转发器,其特征在于,包括业务层,转发层,配置层和通信框架;所述业务层用于按需数据转发:包含数据过滤,数据标准转化,数据筛选流程;所述转发层用于完成数据源通信建立,数据通道建立,目标源通信建立,按照“source

channel

sink”的通信模式进行开发;所述配置层用于完成数据源的配置;通信框架为Netty。2.一种多数据源数据转发器的设计方法,其特征在于,包括以下步骤:设置业务层,所述业务层用于按需数据转发:包含数据过滤,数据标准转化,数据筛选流程;设置转发层,所述转发层用于完成数据源通信建立,数据通道建立,目标源通信建立,按照“source

channel

sink”的通信模式进行开发;设置配置层,所述配置层用于完成数据源的配置;选择Netty作为通信框架。3.根据权利要求1所述的多数据源数据转发器的设计方法,其特征在于,设置配置层的方法包括:配置层采用Scheduled缓存业务数据和数据类型,根据业务数据和更新频率为依据选择业务数据存储在内存还是缓存Redis上;数据类型以集合形式MAP存储,基础结构为“sourceN

dataType”和“sinkN

dataType”。4.根据权利要求3所述的多数据源数据转发器的设计方法,其特征在于,根据业务数据和更新频率为依据选择业务数据存储在内存还是缓存Redis上,包括:业务数据大小以“1024M”为依据,更新频率以“10”分钟为依据,利用业务类型表达式:如果业务数据>1024M且更新频率>10,则业务数据入Redis;如果业务数据<1024M且更新频率>10,则业务数据入消息队列;如果业务数据<1024M且更新频率<10,则业务数据入本地内存。5.根据权利要求3所述的多数据源数据转发器的设计方法,其特征在于,所述方法还包括:添加soruce资源:从dataSet中获取source,并将抽取数据源配置依次加载到soruce队列中,并采用抽象工厂模式针对不同通信类型创建预初始化通信池,使用kafka创建kafka source,使用tcp创建tcp...

【专利技术属性】
技术研发人员:涂心浩张启亮黄凯王飞
申请(专利权)人:徐工汉云技术股份有限公司
类型:发明
国别省市:

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

1