CN116032849B - 数据交换的方法、装置、系统及电子设备 - Google Patents
数据交换的方法、装置、系统及电子设备 Download PDFInfo
- Publication number
- CN116032849B CN116032849B CN202211656889.XA CN202211656889A CN116032849B CN 116032849 B CN116032849 B CN 116032849B CN 202211656889 A CN202211656889 A CN 202211656889A CN 116032849 B CN116032849 B CN 116032849B
- Authority
- CN
- China
- Prior art keywords
- data
- type
- attribute information
- node
- subscribed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000000694 effects Effects 0.000 claims description 32
- 239000011159 matrix material Substances 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据交换的方法、装置、系统及电子设备。其中,该方法包括:订阅节点向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,订阅节点从数据集群中同步获取数据报文,其中,数据报文中包含多种类型的数据;订阅节点计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中。本申请解决了现有技术仅能实现单节点相同数据源的数据的采集,无法实现多种不同数据源交叉的实时交换,且容易造成数据拥堵和数据丢失的技术问题。
Description
技术领域
本申请涉及数据交换领域,具体而言,涉及一种数据交换的方法、装置、系统及电子设备。
背景技术
原有数据交换,采用微服务框架和消息队列模式,自建中心节点采用文件交换方式,通过定时任务上传或下载同步文件到采集、订阅节点,仅实现单节点相同数据源数据采集订阅。无法实现多种不同数据源交叉实时交换和多个采集订阅节点数据实时交换,且受数据文件大小、文件上传下载速度等多种因素影响,容易造成数据堵塞、数据丢失和数据延时等情况,系统的效率和实时性较差,并且在中心节点形成瓶颈。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种数据交换的方法、装置、系统及电子设备,以至少解决现有技术仅能实现单节点相同数据源的数据的采集,无法实现多种不同数据源交叉的实时交换,且容易造成数据拥堵和数据丢失的技术问题。
根据本申请实施例的一个方面,提供了一种数据交换的方法,包括:订阅节点向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,订阅节点从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;订阅节点计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
可选地,订阅节点计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,包括:在第一时间段内,获取数据报文中每类数据所包含的第一属性信息,以及获取每类待订阅数据所包含的第二属性信息;确定在第一时间段内数据报文中每类数据的第一活跃度,以及确定每类待订阅数据的第二活跃度;依据第一属性信息、第二属性信息、第一活跃度和第二活跃度,确定相似度。
可选地,确定在第一时间段内数据报文中每类数据的第一活跃度,包括:获取数据报文中每类数据的第一使用频率;依据第一使用频率和第一时间段,确定第一活跃度。
可选地,确定每类待订阅数据的第二活跃度,包括:获取每类待订阅数据的第二使用频率;依据第二使用频率和第一时间段,确定第二活跃度。
可选地,订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,包括:确定数据报文中每类数据与多类待订阅数据的多个相似度中的最大值,得到多个最大值;依据多个最大值分别对应的目标数据类型的目标属性信息,确定目标矩阵;将目标矩阵中的数据存储在订阅节点的数据库中。
可选地,订阅节点从数据集群中同步获取数据报文之前,方法还包括:获取第二时间段内数据集群中的所有数据报文;请求处理器对所有数据报文进行数据预处理;在处理器对所有数据报文进行预处理后,订阅节点从数据集群中同步获取数据报文。
可选地,属性信息包括以下至少之一:存储类型、字段长度、存储精度。
根据本申请实施例的另一方面,还提供了一种数据交换的装置,应用于订阅节点,包括:发送模块,用于向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;获取模块,用于在监听到包含属性信息的数据报文的情况下,从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;计算模块,用于计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;存储模块,用于依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
根据本申请实施例的又一方面,还提供了一种数据交换的系统,包括:订阅节点、采集节点、中心节点,其中,订阅节点用于向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,订阅节点从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据;采集节点用于接收目标对象通过中心节点发送的数据采集请求,依据数据采集请求,采集多种类型的数据报文;中心节点用于将目标对象发送的数据采集请求转发给采集节点,并将订阅节点监听的数据集群的接口信息发送给订阅节点。
根据本申请实施例的再一方面,还提供了一种电子设备,包括:存储器,用于存储程序指令;处理器,与存储器连接,用于执行实现以下功能的程序指令:向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收采集节点发起的数据采集请求后采集得到的,数据报文中包含多种类型的数据;计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
在本申请实施例中,通过订阅节点向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,订阅节点从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;订阅节点计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据,达到了将采集节点采集的数据报文存储在订阅节点中的目的,从而实现了不同节点之间的数据交换的技术效果,进而解决了现有技术仅能实现单节点相同数据源的数据的采集,无法实现多种不同数据源交叉的实时交换,且容易造成数据拥堵和数据丢失的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1a是根据现有技术的一种数据交换的流程图;
图1b是根据本申请实施例的一种用于实现数据交换的方法的计算机终端(或电子设备)的硬件结构框图;
图2是根据本申请实施例的一种数据交换的方法的流程图;
图3a是根据本申请实施例的一种数据交换的数据源类型匹配图;
图3b是根据拟申请实施例的一种单节点采集多节点订阅的示意图;
图4是根据本申请实施例的一种数据交换的装置的结构图;
图5是根据本申请实施例的一种数据交换的系统的结构图;
图6是根据本申请实施例的一种多节点不同数据源数据实时交换的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1a是根据现有技术的一种数据交换的流程图,在图1a中,用户向管理中心发起订阅/采集请求后,由管理中心端将对应的请求发送给对应的端口,具体的,将采集请求发送给采集数据端,将订阅请求发送给订阅共享端。采集数据端接收采集请求后封装数据文件,并同步至采集消息队列,由管理中心端的中心节点从消息队列中下载文件,并实现数据的解析入库。而订阅共享端接收数据订阅请求后,从管理中心端管理的数据库中获取数据,并同步至订阅消息队列。
从图1a中可以看出,现有技术中存在的问题是无法实现多种不同数据源交叉实时交换和多个采集订阅节点数据实时交换,且受数据文件大小、文件上传下载速度等多种因素影响,容易造成数据堵塞、数据丢失和数据延时等情况,系统的效率和实时性较差,并且在中心节点形成瓶颈。
为了解决上述问题,本申请实施例提供了相应的解决方案,以下详细说明。
本申请实施例所提供的数据交换的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1b示出了一种用于实现数据交换的方法的计算机终端(或电子设备)的硬件结构框图。如图1b所示,计算机终端10(或电子设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1b所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1b中所示更多或者更少的组件,或者具有与图1b所示不同的配置。
应当注意到的是上述一个或多个处理器和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或电子设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据交换的方法对应的程序指令/数据存储装置,处理器通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据交换的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输模块106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或电子设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1b所示的计算机设备(或电子设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1b仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或电子设备)中的部件的类型。
在上述运行环境下,本申请实施例提供了一种数据交换的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本申请实施例的一种数据交换的方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,订阅节点向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;
步骤S204,在监听到包含属性信息的数据报文的情况下,订阅节点从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;
步骤S206,订阅节点计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;
步骤S208,订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
在上述步骤S202至步骤S208中,通过多节点数据源交叉实时交换模式,利用数据集群(如kafka集群)和数据源的数据类型相似度计算转换模型,实现多节点不同数据源(例如postgre、达梦、mysql、oracle、sqlServer等各种数据源以及数据文件、数据文本)数据类型的实时交叉互换,数据报文的快速采集消费,确保数据资源完整性,采用全流程多方位日志实时监控,避免数据堵塞、数据丢失和数据延时等情况的发生,提升系统的效率和实时性。
在本申请实施例的上述步骤S204中,采集节点需要采集m个采集节点的k种数据源的数据类型:
Cim=(xi1,xi2xi3,...,xik),i=1,2,3,...,m
在一种可选的实施例中,采集节点C0、C1、C2……Cm,向中心节点发起数据采集请求,中心节点接收采集请求后,通过API接口调用或自动扫描数据库方式获取多个采集节点采集的数据源的数据类型(即上述包含多种数据类型的数据报文),采集节点将数据发送至kafka集群(即上述数据集群)分发存储。在另一种可选的实施例中,kafka中存储的数据报文也可以为目标对象发起的数据采集请求后通过采集节点采集得到的。
在本申请实施例中,有n个订阅节点h种数据源类型数据,表示如下:
Din=(yi1,yi2yi3,...,yih),i=1,2,3,...,n
订阅节点为D0、D1、D2……Dn,订阅节点确定需要订阅的数据源的数据类型,梳理该类型数据源及类型相关属性(即上述属性信息):如存储类型、字段长度、存储精度等数据信息,向中心节点发起订阅请求。
中心节点接收订阅请求后,将数据集群的API接口信息发送给订阅节点,订阅节点实时监听中心节点中的数据集群,当订阅节点监听到所需的数据报文后,通过接口调用的方式从数据集群kafka中同步获取数据报文。
在上述数据交换的方法中的步骤S206中,订阅节点计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,具体包括如下步骤:在第一时间段内,获取数据报文中每类数据所包含的第一属性信息,以及获取每类待订阅数据所包含的第二属性信息;确定在第一时间段内数据报文中每类数据的第一活跃度,以及确定每类待订阅数据的第二活跃度;依据第一属性信息、第二属性信息、第一活跃度和第二活跃度,确定相似度。
在上述步骤中,确定在第一时间段内数据报文中每类数据的第一活跃度,具体包括如下步骤:获取数据报文中每类数据的第一使用频率;依据第一使用频率和第一时间段,确定第一活跃度。
在上述步骤中,确定每类待订阅数据的第二活跃度,具体包括如下步骤:获取每类待订阅数据的第二使用频率;依据第二使用频率和第一时间段,确定第二活跃度。
在本申请实施例中,订阅节点依据订阅数据源的数据类型(一个数据源对应一个数据类型,或对应一种类型的数据),利用改进的余弦相似度函数计算采集节点一个数据源的字段类型(即一类采集数据包含的所有属性信息)与订阅节点一个数据源的字段类型(即一类订阅数据包含的所有属性信息)相似度x,公式如下:
其中,x表示某时间区间(即上述第一时间段)内单个采集节点的数据源的字段类型与单个订阅节点的数据源的字段类型匹配度。ci表示采集节点对应的数据源的数据类型c的属性信息,包括存储类型、数据结构、字段长度、存储精度等。di表示订阅节点对应的数据源的数据类型d的属性信息,包括存储类型、数据结构、字段长度、存储精度等。n表示每个数据源的数据类型的属性信息的个数,这里默认均为n。
f(t)表示上述第一时间段,可自定义为以小时、天、月为单位。
f(c)表示采集节点对应的数据源的数据类型c的使用频率(即上述第一使用频率)。
f(d)表示订阅节点对应的数据源的数据类型d使用频率(即上述第二使用频率)。
或/>表示第一时间段内采集节点或订阅节点对应的数据源的数据类型的活跃度,也即分别对应上述第一活跃度或第二活跃度。
上述改进的余弦相似度公式计算采集节点对应的数据源的数据类型c与订阅节点对应的数据源的数据类型t的相似度计算过程如下:
1)通过余弦相似度函数计算采集节点对应的数据类型c的存储类型、存储格式、字段长度、存储精度等第一属性信息与订阅节点对应的数据类型d的存储类型、存储格式、字段长度、存储精度等第二属性信息的综合相似度;
2)综合时间偏移量属性(即上述第一时间段)f(t)和订阅节点对应的数据类型使用频率属性f(d),采集节点对应的数据类型使用频率f(c),计算得出订阅节点对应的数据类型d与采集节点对应的数据类型c的匹配相似度x。
当计算采集节点的多种数据源的数据类型转换为订阅节点对应的数据源的数据类型时,也即上述计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,对应的相似度计算公式如下:
在上述数据交换的方法中的步骤208中,订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,具体包括如下步骤:确定数据报文中每类数据与多类待订阅数据的多个相似度中的最大值,得到多个最大值;依据多个最大值分别对应的目标数据类型的目标属性信息,确定目标矩阵;将目标矩阵中的数据存储在订阅节点的数据库中。
在本申请实施例中,通过上述相似度计算公式计算采集节点对应的数据类型c与订阅节点中j种数据类型dj的相似度xj,求出j种数据类型相似度中的最大值,则订阅节点对应的数据源的数据类型与采集节点最大相似数据源类型D表示为:
D=fmax(xj)
其中,D表示订阅节点的多种数据源的数据类型对应采集节点的数据类型的最大相似度匹配值。
订阅节点在数据交换时,经过上述过程,得出所有采集节点的数据源的数据类型最相似的订阅节点的数据源的数据类型Dkh(即上述目标矩阵):
多个订阅节点根据计算得到的最大相似数据类型,将订阅数据转换为Dkh中对应的数据类型存在订阅节点数据库。在采集节点和订阅节点进行数据交换过程中,通过数据源数据类型相似度模型,完成多个订阅、采集节点多种数据源数据类型交叉互换,订阅节点用户得到需要的数据源类型。
在上述数据交换的方法中的步骤S204中,订阅节点从数据集群中同步获取数据报文之前,方法还包括如下步骤:获取第二时间段内数据集群中的所有数据报文;请求处理器对所有数据报文进行数据预处理;在处理器对所有数据报文进行预处理后,订阅节点从数据集群中同步获取数据报文。
在本申请实施例中,在订阅、采集数据过程中数据采集、订阅偏移量信息存储在redis服务中,防止前置节点宕机重启后重复采集和订阅,并采用日志管理体系过滤筛选日志,从而实现数据预处理的过程。
在上述数据交换的方法中,属性信息包括以下至少之一:存储类型、字段长度、存储精度。
图3a是根据本申请实施例的一种数据交换的数据源类型匹配图,如图3a所示,在采集节点数据源层,包括SQL Server、Oracle、MySql等数据源,采集节点采集这些数据源中的数据报文,通过kafka集群(存在于管理中心节点中)接收并存储数据报文,通过数据源转换模型中的数据模型匹配订阅节点数据源数据类型,进行数据转换后,存储在订阅节点数据源层对应的数据库中,在订阅节点数据源层,包括Access、PG、达梦等。
通过以下例子对上述过程进行具体介绍:利用本申请实施例提供的数据交换方法实现4个数据采集节点和5个订阅节点数据采集订阅实施流程。4个数据采集节点采集access、Hbase两种数据源类型,数据采集任务如下所示:
Ci2=(xi1,xi2),i=1,2,3,4;
5个数据订阅节点,订阅节点数据库类型有3种,订阅数据任务如下所示:
Di3=(yi1,yi2yi3),i=1,2,3,4,5;
4个采集节点同时向中心节点发送采集任务,中心节点调用API接口同步采集数据发送kafka集群并存储。5个订阅节点向中心节点发送订阅请求,数据订阅前置服务监听kafka服务集群,获取4个节点采集数据后,自动扫描订阅节点的3个数据源oracle、mysql、sqlServer,根据数据源数据类型匹配模型,计算所订阅的数据在订阅节点的存储数据类型:
订阅节点中的订阅前置服务监听到所需数据报文,用余弦相似度函数求单个节点2种采集节点数据源数据,在订阅节点的3种数据源数据类型的最大相似数据类型:
Dil=fmax(xil),i=1,2;l=1,2,3
依次求出所有采集数据对应订阅节点3种数据源类型的所有最大相似数据类型:
5个订阅前置服务根据计算得到的最大相似数据类型,将订阅数据转换为D32中对应的数据类型存放在订阅节点数据库,完成多节点不同数据源交叉交换。
多个节点订阅相同类型数据时,直接创建订阅任务监听kafka集群,从kafka集群下载数据,无需二次采集,实现一次采集多次消费。当多个订阅节点订阅相同采集节点数据时,中心节点仅创建一次采集任务,订阅节点直接从kafka集群同步下载数据,根据数据源数据类型相似度算法,将数据转换为订阅数据源数据类型。
如图3b所示的单节点采集多节点订阅的示意图中,采集节点将采集的数据报文发送给kafka集群,kafka集群接收并存储数据报文,经过数据转换模型后,将转换后的数据报文提供给多个订阅节点进行数据消费。
本申请实施例提供的数据交换的方法是一种分布式的秒级大数据交换方法,实现多个采集、订阅节点不同数据源的交叉实时交换,在多数据源的数据交叉互换性能方面有较大的能力提升。本申请利用kafka中心节点服务集群模式和余弦相似度匹配算法,完成采集、订阅节点多种数据源的数据类型匹配格式转换,实现多节点数据实时交换、多种数据源交叉互换、数据一次订阅多次消费、实时采集监听,降低数据交换成本,创新交换方式,保障数据在高效、安全、可信的共享交换环境下跨层级、跨系统实现实时高效交换。
图4是根据本申请实施例的一种数据交换的装置的结构图,应用于订阅节点,如图4所示,该装置包括:
发送模块402,用于向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;
获取模块404,用于在监听到包含属性信息的数据报文的情况下,从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;
计算模块406,用于计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;
存储模块408,用于依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
在上述数据交换的装置中的计算模块中,计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,具体包括如下过程:在第一时间段内,获取数据报文中每类数据所包含的第一属性信息,以及获取每类待订阅数据所包含的第二属性信息;确定在第一时间段内数据报文中每类数据的第一活跃度,以及确定每类待订阅数据的第二活跃度;依据第一属性信息、第二属性信息、第一活跃度和第二活跃度,确定相似度。
在上述数据交换的装置中的计算模块中,确定在第一时间段内数据报文中每类数据的第一活跃度,具体包括如下过程:获取数据报文中每类数据的第一使用频率;依据第一使用频率和第一时间段,确定第一活跃度。
在上述数据交换的装置中的计算模块中,确定每类待订阅数据的第二活跃度,具体包括如下过程:获取每类待订阅数据的第二使用频率;依据第二使用频率和第一时间段,确定第二活跃度。
在上述数据交换的装置中的存储模块中,订阅节点依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,具体包括如下过程:确定数据报文中每类数据与多类待订阅数据的多个相似度中的最大值,得到多个最大值;依据多个最大值分别对应的目标数据类型的目标属性信息,确定目标矩阵;将目标矩阵中的数据存储在订阅节点的数据库中。
在上述数据交换的装置中的获取模块中,订阅节点从数据集群中同步获取数据报文之前,该获取模块还用于获取第二时间段内数据集群中的所有数据报文;请求处理器对所有数据报文进行数据预处理;在处理器对所有数据报文进行预处理后,订阅节点从数据集群中同步获取数据报文。
在上述数据交换的装置中,属性信息包括以下至少之一:存储类型、字段长度、存储精度。
本申请实施例提供的数据交换的装置可以实现多个节点订阅相同类型数据时,直接创建订阅任务监听kafka集群,从kafka集群下载数据,无需二次采集,实现一次采集多次消费。当多个订阅节点订阅相同采集节点数据时,中心节点仅创建一次采集任务,订阅节点直接从kafka集群同步下载数据,根据数据源数据类型相似度算法,将数据转换为订阅数据源数据类型。
需要说明的是,图4所示的数据交换的装置用于执行图2所示的数据交换的方法,因此上述数据交换的方法中的相关解释说明也适用于该数据交换的装置,此处不再赘述。
图5是根据本申请实施例的一种数据交换的系统的结构图,如图5所示,该数据交换的系统500包括:订阅节点502、采集节点504、中心节点506,其中,订阅节点用于向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,订阅节点从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,数据报文中包含多种类型的数据;计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据;采集节点用于接收目标对象通过中心节点发送的数据采集请求,依据数据采集请求,采集多种类型的数据报文;中心节点用于将目标对象发送的数据采集请求转发给采集节点,并将订阅节点监听的数据集群的接口信息发送给订阅节点。
需要说明的是,图5所示的数据交换的系统用于执行图2所示的数据交换的方法,因此上述数据交换的方法中的相关解释说明也适用于该数据交换的系统,此处不再赘述。
图6是根据本申请实施例的一种多节点不同数据源数据实时交换的示意图,如图6所示,在用户端,用户根据业务需求梳理库表信息,向管理中心发起订阅/采集请求,管理中心将采集请求发送给采集数据端,采集数据端接收请求并采集数据,通过多个采集节点采集多类数据源的数据报文,包括MySql、oracle、sqlServer、access、达梦、PG等,多个采集节点将采集的数据报文发送给管理中心端的kafka集群,kafka集群接收、存储数据报文,并将订阅节点所监听的数据报文分发给订阅共享端,订阅共享端监听kafka集群,并在监听到所需的数据报文后,同步获取数据报文,经过数据源数据类型转换模型后,将转换后的数据存储在订阅节点中对应的数据库中,如Hbase、oracle、DB2、access、oracle、PG等。在整个数据实时交换过程中,Redis集群确保数据的完整性,Elasticsearch日志管理过滤筛选日志。
本申请实施例还提供了一种非易失性存储介质,该非易失性存储介质包括存储的计算机程序,其中,该非易失性存储介质所在设备通过运行计算机程序执行以下数据交换的方法:向中心节点发送订阅请求,其中,订阅请求中包括待订阅数据的属性信息,待订阅数据包括多种类型的数据;在监听到包含属性信息的数据报文的情况下,从数据集群中同步获取数据报文,其中,数据集群中存储的数据报文为中心节点接收采集节点发起的数据采集请求后采集得到的,数据报文中包含多种类型的数据;计算数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;依据相似度确定目标类型数据,并将目标类型数据存储在订阅节点的数据库中,其中,目标类型数据为数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (9)
1.一种数据交换的方法,其特征在于,包括:
订阅节点向中心节点发送订阅请求,其中,所述订阅请求中包括待订阅数据的属性信息,所述待订阅数据包括多种类型的数据;
在监听到包含所述属性信息的数据报文的情况下,所述订阅节点从数据集群中同步获取所述数据报文,其中,所述数据集群中存储的数据报文为所述中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,所述数据报文中包含多种类型的数据;
所述订阅节点计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;
所述订阅节点依据所述相似度确定目标类型数据,并将所述目标类型数据存储在所述订阅节点的数据库中,其中,所述目标类型数据为所述数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据;
所述订阅节点计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,包括:在第一时间段内,获取所述数据报文中每类数据所包含的第一属性信息,以及获取所述每类待订阅数据所包含的第二属性信息;确定在所述第一时间段内所述数据报文中每类数据的第一活跃度,以及确定所述每类待订阅数据的第二活跃度;依据所述第一属性信息、所述第二属性信息、所述第一活跃度和所述第二活跃度,确定所述相似度。
2.根据权利要求1所述的方法,其特征在于,确定在所述第一时间段内所述数据报文中每类数据的第一活跃度,包括:
获取所述数据报文中每类数据的第一使用频率;
依据所述第一使用频率和所述第一时间段,确定所述第一活跃度。
3.根据权利要求1所述的方法,其特征在于,确定所述每类待订阅数据的第二活跃度,包括:
获取所述每类待订阅数据的第二使用频率;
依据所述第二使用频率和所述第一时间段,确定所述第二活跃度。
4.根据权利要求1所述的方法,其特征在于,所述订阅节点依据所述相似度确定目标类型数据,并将所述目标类型数据存储在所述订阅节点的数据库中,包括:
确定所述数据报文中每类数据与多类待订阅数据的多个相似度中的最大值,得到多个最大值;
依据所述多个最大值分别对应的目标数据类型的目标属性信息,确定目标矩阵;
将所述目标矩阵中的数据存储在所述订阅节点的数据库中。
5.根据权利要求1所述的方法,其特征在于,所述订阅节点从数据集群中同步获取所述数据报文之前,所述方法还包括:
获取第二时间段内所述数据集群中的所有数据报文;
请求处理器对所述所有数据报文进行数据预处理;
在所述处理器对所述所有数据报文进行预处理后,所述订阅节点从数据集群中同步获取所述数据报文。
6.根据权利要求1至5中任意一项所述的方法,其特征在于,所述属性信息包括以下至少之一:存储类型、字段长度、存储精度。
7.一种数据交换的装置,其特征在于,应用于订阅节点,包括:
发送模块,用于向中心节点发送订阅请求,其中,所述订阅请求中包括待订阅数据的属性信息,所述待订阅数据包括多种类型的数据;
获取模块,用于在监听到包含所述属性信息的数据报文的情况下,从数据集群中同步获取所述数据报文,其中,所述数据集群中存储的数据报文为所述中心节点接收目标对象发起的数据采集请求后通过采集节点采集得到的,所述数据报文中包含多种类型的数据;
计算模块,用于计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;所述计算模块还用于在第一时间段内,获取所述数据报文中每类数据所包含的第一属性信息,以及获取所述每类待订阅数据所包含的第二属性信息;确定在所述第一时间段内所述数据报文中每类数据的第一活跃度,以及确定所述每类待订阅数据的第二活跃度;依据所述第一属性信息、所述第二属性信息、所述第一活跃度和所述第二活跃度,确定所述相似度;
存储模块,用于依据所述相似度确定目标类型数据,并将所述目标类型数据存储在所述订阅节点的数据库中,其中,所述目标类型数据为所述数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据。
8.一种数据交换的系统,其特征在于,包括:订阅节点、采集节点、中心节点,其中,
所述订阅节点用于向所述中心节点发送订阅请求,其中,所述订阅请求中包括待订阅数据的属性信息,所述待订阅数据包括多种类型的数据;在监听到包含所述属性信息的数据报文的情况下,所述订阅节点从数据集群中同步获取所述数据报文,其中,所述数据集群中存储的数据报文为所述中心节点接收目标对象发起的数据采集请求后通过所述采集节点采集得到的,所述数据报文中包含多种类型的数据;计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;依据所述相似度确定目标类型数据,并将所述目标类型数据存储在所述订阅节点的数据库中,其中,所述目标类型数据为所述数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据;所述订阅节点计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,包括:在第一时间段内,获取所述数据报文中每类数据所包含的第一属性信息,以及获取所述每类待订阅数据所包含的第二属性信息;确定在所述第一时间段内所述数据报文中每类数据的第一活跃度,以及确定所述每类待订阅数据的第二活跃度;依据所述第一属性信息、所述第二属性信息、所述第一活跃度和所述第二活跃度,确定所述相似度;
所述采集节点用于接收所述目标对象通过所述中心节点发送的数据采集请求,依据所述数据采集请求,采集多种类型的数据报文;
所述中心节点用于将所述目标对象发送的数据采集请求转发给所述采集节点,并将所述订阅节点监听的所述数据集群的接口信息发送给所述订阅节点。
9.一种电子设备,其特征在于,应用于订阅节点,包括:
存储器,用于存储程序指令;
处理器,与所述存储器连接,用于执行实现以下功能的程序指令:向中心节点发送订阅请求,其中,所述订阅请求中包括待订阅数据的属性信息,所述待订阅数据包括多种类型的数据;在监听到包含所述属性信息的数据报文的情况下,从数据集群中同步获取所述数据报文,其中,所述数据集群中存储的数据报文为所述中心节点接收采集节点发起的数据采集请求后采集得到的,所述数据报文中包含多种类型的数据;计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度;依据所述相似度确定目标类型数据,并将所述目标类型数据存储在所述订阅节点的数据库中,其中,所述目标类型数据为所述数据报文中同一类数据所对应的属性信息的相似度满足预设条件时对应类型的数据;计算所述数据报文中每类数据所包含的属性信息与每类待订阅数据所包含的属性信息的相似度,包括:在第一时间段内,获取所述数据报文中每类数据所包含的第一属性信息,以及获取所述每类待订阅数据所包含的第二属性信息;确定在所述第一时间段内所述数据报文中每类数据的第一活跃度,以及确定所述每类待订阅数据的第二活跃度;依据所述第一属性信息、所述第二属性信息、所述第一活跃度和所述第二活跃度,确定所述相似度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211656889.XA CN116032849B (zh) | 2022-12-22 | 2022-12-22 | 数据交换的方法、装置、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211656889.XA CN116032849B (zh) | 2022-12-22 | 2022-12-22 | 数据交换的方法、装置、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116032849A CN116032849A (zh) | 2023-04-28 |
CN116032849B true CN116032849B (zh) | 2024-05-24 |
Family
ID=86078649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211656889.XA Active CN116032849B (zh) | 2022-12-22 | 2022-12-22 | 数据交换的方法、装置、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116032849B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020147392A1 (zh) * | 2019-01-16 | 2020-07-23 | 平安科技(深圳)有限公司 | 数据库之间的数据同步方法和系统 |
CN111859127A (zh) * | 2020-07-13 | 2020-10-30 | 海尔优家智能科技(北京)有限公司 | 消费数据的订阅方法、装置及存储介质 |
CN112671933A (zh) * | 2021-02-23 | 2021-04-16 | 浙江中控技术股份有限公司 | 一种数据处理方法及系统 |
CN113553310A (zh) * | 2021-09-22 | 2021-10-26 | 深圳市信润富联数字科技有限公司 | 数据的采集方法及装置、存储介质、电子设备 |
-
2022
- 2022-12-22 CN CN202211656889.XA patent/CN116032849B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020147392A1 (zh) * | 2019-01-16 | 2020-07-23 | 平安科技(深圳)有限公司 | 数据库之间的数据同步方法和系统 |
CN111859127A (zh) * | 2020-07-13 | 2020-10-30 | 海尔优家智能科技(北京)有限公司 | 消费数据的订阅方法、装置及存储介质 |
CN112671933A (zh) * | 2021-02-23 | 2021-04-16 | 浙江中控技术股份有限公司 | 一种数据处理方法及系统 |
CN113553310A (zh) * | 2021-09-22 | 2021-10-26 | 深圳市信润富联数字科技有限公司 | 数据的采集方法及装置、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116032849A (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284334B (zh) | 实时数据库同步方法、装置、电子设备及存储介质 | |
CN109151072A (zh) | 一种基于雾节点的边缘计算系统 | |
CN112434039A (zh) | 数据的存储方法、装置、存储介质以及电子装置 | |
CN103761309A (zh) | 一种运营数据处理方法及系统 | |
US11188443B2 (en) | Method, apparatus and system for processing log data | |
CN110858192A (zh) | 一种日志查询方法和系统、日志排查系统和查询终端 | |
CN108270860A (zh) | 环境质量在线监测数据的采集系统及方法 | |
CN113569117A (zh) | 一种基于工业互联网大数据服务的云平台系统及方法 | |
CN113360554A (zh) | 一种数据抽取、转换和加载etl的方法和设备 | |
CN108228625B (zh) | 一种推送消息处理方法及装置 | |
CN110928681A (zh) | 数据的处理方法和装置、存储介质及电子装置 | |
CN110730201A (zh) | 一种基于元数据的数据共享方法及系统 | |
WO2021027331A1 (zh) | 基于图数据的全量关系计算方法、装置、设备及存储介质 | |
CN114090388A (zh) | 信息获取方法、服务器集群、服务器及设备 | |
CN112181678A (zh) | 业务数据的处理方法、装置和系统、存储介质、电子装置 | |
CN116827774A (zh) | 一种业务分析方法、装置、设备及存储介质 | |
CN110968592A (zh) | 元数据采集方法、装置、计算机设备及计算机可读存储介质 | |
CN116032849B (zh) | 数据交换的方法、装置、系统及电子设备 | |
CN103607731A (zh) | 一种测量报告的处理方法及装置 | |
CN114510299A (zh) | 处理人工智能业务的方法、装置以及存储介质 | |
CN107526808B (zh) | 实时数据处理方法及装置 | |
CN110647448A (zh) | 一种移动应用操作日志数据实时分析方法、服务器和系统 | |
CN110505301A (zh) | 一种航空制造车间工业大数据处理框架 | |
CN116208643A (zh) | 设备状态数据采集方法、工业物联网平台及相关装置 | |
CN102655480B (zh) | 相似邮件处理系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |