CN112565042A - 一种星形结构数据交换的方法 - Google Patents
一种星形结构数据交换的方法 Download PDFInfo
- Publication number
- CN112565042A CN112565042A CN202011572687.8A CN202011572687A CN112565042A CN 112565042 A CN112565042 A CN 112565042A CN 202011572687 A CN202011572687 A CN 202011572687A CN 112565042 A CN112565042 A CN 112565042A
- Authority
- CN
- China
- Prior art keywords
- data
- job
- task
- star
- subtasks
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/44—Star or tree networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种星形结构数据交换的方法,其中,包括:数据传输链路采用星形拓扑结构,数据交换逻辑包括Job和Task两个维度,Job表示一道数据同步作业;Task表示数据同步作业切分后的小任务;将一个Job分解成多个并发的Task;Job下发到执行网关,执行网关是物理机器资源的抽象和封装,如果是非分布式Job,网关会寻找一台合适的机器运行同步进程,如果是分布式执行模式,会对任务做切分,在分布式机器上执行同步;Job启动后,根据不同的源端切分策略,将Job切分成多个小的子任务,以便于并发执行;切分多个子任务之后,根据配置的并发数据量,将拆分成的多个子任务重新组合成任务组,每一个任务组负责以并发运行分配的所有子任务。
Description
技术领域
本发明涉及数据交换技术领域,特别涉及一种星形结构数据交换的方法。
背景技术
随着企业信息化建设的发展,企业建立了众多的信息系统,以帮助企业进行内、外部业务的处理和管理工作。但是随着信息系统的增加,各自孤立工作的信息系统将会造成大量的冗余数据和业务人员的重复劳动,需要通过数据集成交换技术来横贯整个企业的异构系统、应用、数据源等,完成在企业内部系统之间以及内外系统之间无缝地共享和交换数据的需要。
数据交换是企业应用集成的重要环节,实施数据集成的过程中,由于不同用户提供的数据可能来自不同的途径,其数据内容、数据格式和数据质量千差万别,有时甚至会遇到数据格式不能转换或数据转换格式后丢失信息等棘手问题,严重阻碍了数据在各部门和各应用系统中的流动与共享,ETL是目前主流的数据交换集成技术,负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
目前主流的ETL工具针对数据源-目标的转换是点对点的,配置复杂且不易扩展,在对接各种异构的数据系统时,往往要反复开发多种不同的ETL,需要不停的适配,缺少统一的中间数据格式,无法做到分布式和流控、脏数据控制。
发明内容
本发明的目的在于提供给一种星形结构数据交换的方法,用于解决异构数据源适配、扩展性以及同步性能问题。
本发明一种星形结构数据交换的方法,其中,包括:数据传输链路采用星形拓扑结构,源端和目的端的数据交换通过中央控制节点,中央控制节点实现数据中继和数据处理功能,负责接收源端数据源的信息,并转发给目的数据源;将数据交换的内容转化为统一为中间数据格式,实现异构数据源间的统一数据处理和交换;数据交换逻辑包括Job和Task两个维度,Job表示一道数据同步作业;Task表示数据同步作业切分后的小任务;将一个Job分解成多个并发的Task;Job下发到执行网关,执行网关是物理机器资源的抽象和封装,如果是非分布式Job,网关会寻找一台合适的机器运行同步进程,如果是分布式执行模式,会对任务做切分,在分布式机器上执行同步;Job启动后,根据不同的源端切分策略,将Job切分成多个小的子任务,以便于并发执行;切分多个子任务之后,根据配置的并发数据量,将拆分成的多个子任务重新组合成任务组,每一个任务组负责以并发运行分配的所有子任务。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,中央控制节点作为中间传输载体负责连接各种数据源,当需要接入一个新的数据源的时候,将此数据源对接到中央控制节点。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,中央控制节点采用Framework+plugin架构构建。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,Task是中央控制节点作业的最小单元,每一个Task都会负责一部分数据的同步工作。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,切分多个子任务之后,Job根据配置的并发数据量,将拆分成的Task重新组合,组装成任务组。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,每一个子任务都由任务组负责启动,子任务启动后,会固定启动读取—>通道—>写入的线程来完成任务同步工作。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,中央控制节点作业运行起来之后,Job监控并等待多个任务组的任务完成,等待所有任务组的任务完成后Job成功退出,否则,异常退出。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,中央控制节点提供一套抽象化的数据抽取插件Reader以及数据写入插件Writer。
根据本发明所述的星形结构数据交换的方法的一实施例,其中,在做数据传输之前,对Job的传输进行参数的配置,包括数据源端、目标端、数据过滤转换逻辑、流速阈值、脏数据阈值以及与其他Job的依赖关系.
根据本发明所述的星形结构数据交换的方法的一实施例,其中,启动Job之前,对Job做安全和权限校验,如果作业任务配置不合法,会返回响应的错误信息。
本发明将数据链路从点到点的链路变成了星型数据链路,即通过采用中央节点负责连接各种数据源,当需要接入一个新的数据源的时候,只需要将此数据源对接到中央节点,便能跟已有的数据源做到无缝连接数据同步。本发明的目的提出了一种从数据源端-中央节点-数据目标端的星形结构的数据转换方法,其中央节点实现数据中继和数据处理功能,数据源端和数据目标端分别解决数据的输入和输出问题,适配不同的数据源,并且支持自定义驱动扩展。中央节点采用统一的数据流格式与数据源端、目标端对接,并提供流速控制、分布式容错等功能,解决了数据传输的性能和可靠性问题。
附图说明
图1为数据交换方式变化图;
图2是中央控制节点结构图;
图3是数据交换处理流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1是数据交换方式变化图,表示数据交换从传统的点对点到星形结构的转变,通过这种星型结构,所有数据源的数据传输和交互都是通过中央控制节点,负责接收源端数据源的信息,并转发给目的数据源,中央控制节点具有中继和数据处理功能,这种星形数据链路结构的优点是结构简单,方便管理与控制,通过星形设计可以简化不同数据格式间的转换,方便数据源/目标的自定义扩展,同时由于采用了统一数据流格式,将数据交换的内容转化为统一为中间数据格式,实现异构数据源间的统一数据处理和交换,也便于实现分布式设计和流速控制等高级能力,在此通道上的数据采用分布式方式进行传输,从而获得更好的传输性能以及更佳的传输可靠性。在组网模型上,支持广播、多播、路由等多种模型,能够帮助用户实现自动组网。在通讯模式上,提供包含队列、RPC、PUB/SUB和群组通讯等多种通讯模式,满足用户对不同数据传输场景的需要。在安全通讯上,支持用户在传输层引入可插拔组件,对传输数据进行数据压缩、数据解压、数据加密、数据解密等操作,满足用户对安全数据高效传输的需求。
图2是中央控制节点结构图,中央控制节点采用Framework+plugin架构构建。将数据源读取和写入抽象成为Reader/Writer插件中,纳入到整个同步框架中,中央控制节点内部通过双缓冲队列、线程池封装等技术,集中处理了高速数据交换遇到的问题,提供简单的接口与插件交互,插件分为Reader和Writer两类,基于框架提供的插件接口,可以十分便捷的开发出需要的插件:
Reader:数据采集模块,负责采集数据源的数据,将数据发送给Framework;
Writer:数据写入模块,负责不断向Framework取数据,并将数据写入到目的端;
FrameWork:用于连接reader和writer,作为两者的数据传输通道,并处理缓冲,流控,并发,数据转换等核心技术问题。
图3是数据交换处理流程图,实现步骤如下:
数据交换逻辑模型中包括Job、Task两个维度,Job表示一道数据同步作业;Task表示数据同步作业切分后的小任务;Split表示作业切分模块,负责将一个Job分解成多个可以并发的Task;在做数据传输之前,需要在配置管理界面中完成对Job的传输进行参数的配置,包括数据源端、目标端、数据过滤转换逻辑、流速阈值、脏数据阈值以及与其他Job的依赖关系:
步骤一:在做数据传输之前,需要在配置管理界面中完成对Job的传输进行参数的配置,包括数据源端、目标端、数据过滤转换逻辑、流速阈值、脏数据阈值以及与其他Job的依赖关系。
步骤二:对Job做必要的安全和权限校验,如果作业任务配置不合法,会返回响应的错误信息便于问题排查。
步骤三:Job会被下发到执行网关,执行网关是物理机器资源的抽象和封装。如果是非分布式Job,网关具体会寻找一台合适的机器运行同步进程。如果是分布式执行模式,会对任务做切分,在分布式机器上执行同步。
步骤四:Job启动后,根据会根据不同的源端切分策略,将Job切分成多个小的Task(子任务),以便于并发执行,中央控制节点接受到一个Job之后,将启动一个进程来完成整个作业同步过程。
步骤五:切分多个Task之后,Job会调用Scheduler模块,根据配置的并发数据量,将拆分成的Task重新组合,组装成TaskGroup(任务组)。每一个TaskGroup负责以一定的并发运行完毕分配好的所有Task。
步骤六:每一个Task都由TaskGroup负责启动,Task启动后,中央控制节点接受到一个Task,将启动一个进程来完成整个作业同步过程Reader—>FrameWork—>Writer的线程来完成任务同步工作。
步骤七:中央控制节点作业运行起来之后,Job监控并等待多个TaskGroup模块任务完成,等待所有TaskGroup任务完成后Job成功退出。否则,异常退出。
中央控制节点提供一套抽象化的数据抽取插件(称之为Reader)、数据写入插件(称之为Writer),并基于此框架设计一套简化版的中间数据传输格式,从而达到任意结构化、半结构化数据源之间数据传输之目的,并采用插件式的架构模式,定义了一套接口规范和数据交换类型规范,只要符合数据集成的接口规范和类型规范就可以纳入数据集成的插件体系结构中,这使得数据集成具备了异构数据源扩展支持的能力。
基于数据源端-数据流水线-数据目标端的星形结构数据转换方法,实现跨网络域、跨地理域、跨安全域的异构多数据源间基于规则的可靠高效的数据交换及处理,可以完成多种结构化和非结构化数据源之间的各种复杂数据交换任务的定义、扩展、调度和执行,实现在主流的商业及开源关系型数据库、文件系统、数据仓库,以及Hadoop生态系统内的各类数据系统之间,实现了基于规则的数据汇聚、传输及交换。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种星形结构数据交换的方法,其特征在于,包括:
数据传输链路采用星形拓扑结构,源端和目的端的数据交换通过中央控制节点,中央控制节点实现数据中继和数据处理功能,负责接收源端数据源的信息,并转发给目的数据源;将数据交换的内容转化为统一为中间数据格式,实现异构数据源间的统一数据处理和交换;
数据交换逻辑包括Job和Task两个维度,Job表示一道数据同步作业;Task表示数据同步作业切分后的小任务;将一个Job分解成多个并发的Task;
Job下发到执行网关,执行网关是物理机器资源的抽象和封装,如果是非分布式Job,网关会寻找一台合适的机器运行同步进程,如果是分布式执行模式,会对任务做切分,在分布式机器上执行同步;
Job启动后,根据不同的源端切分策略,将Job切分成多个小的子任务,以便于并发执行;
切分多个子任务之后,根据配置的并发数据量,将拆分成的多个子任务重新组合成任务组,每一个任务组负责以并发运行分配的所有子任务。
2.如权利要求1所述的星形结构数据交换的方法,其特征在于,中央控制节点作为中间传输载体负责连接各种数据源,当需要接入一个新的数据源的时候,将此数据源对接到中央控制节点。
3.如权利要求1所述的星形结构数据交换的方法,其特征在于,中央控制节点采用Framework+plugin架构构建。
4.如权利要求1所述的星形结构数据交换的方法,其特征在于,Task是中央控制节点作业的最小单元,每一个Task都会负责一部分数据的同步工作。
5.如权利要求1所述的星形结构数据交换的方法,其特征在于,切分多个子任务之后,Job根据配置的并发数据量,将拆分成的Task 重新组合,组装成任务组。
6.如权利要求1所述的星形结构数据交换的方法,其特征在于,每一个子任务都由任务组负责启动,子任务启动后,会固定启动读取—>通道—>写入的线程来完成任务同步工作。
7.如权利要求1所述的星形结构数据交换的方法,其特征在于,中央控制节点作业运行起来之后,Job监控并等待多个任务组的任务完成,等待所有任务组的任务完成后Job成功退出,否则,异常退出。
8.如权利要求1所述的星形结构数据交换的方法,其特征在于,中央控制节点提供一套抽象化的数据抽取插件Reader以及数据写入插件Writer。
9.如权利要求1所述的星形结构数据交换的方法,其特征在于,在做数据传输之前,对Job的传输进行参数的配置,包括数据源端、目标端、数据过滤转换逻辑、流速阈值、脏数据阈值以及与其他Job的依赖关系。
10.如权利要求1所述的星形结构数据交换的方法,其特征在于,启动Job之前,对Job做安全和权限校验,如果作业任务配置不合法,会返回响应的错误信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011572687.8A CN112565042A (zh) | 2020-12-24 | 2020-12-24 | 一种星形结构数据交换的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011572687.8A CN112565042A (zh) | 2020-12-24 | 2020-12-24 | 一种星形结构数据交换的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112565042A true CN112565042A (zh) | 2021-03-26 |
Family
ID=75033444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011572687.8A Pending CN112565042A (zh) | 2020-12-24 | 2020-12-24 | 一种星形结构数据交换的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112565042A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116567007A (zh) * | 2023-07-10 | 2023-08-08 | 长江信达软件技术(武汉)有限责任公司 | 一种基于任务切分的微服务水利数据共享交换方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699723A (zh) * | 2013-12-10 | 2015-06-10 | 北京神州泰岳软件股份有限公司 | 数据交换适配器、异构系统之间数据同步系统和方法 |
CN106156165A (zh) * | 2015-04-16 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 异构数据源之间的数据同步方法和装置 |
CN108846076A (zh) * | 2018-06-08 | 2018-11-20 | 山大地纬软件股份有限公司 | 支持接口适配的海量多源异构数据etl方法及系统 |
CN109241191A (zh) * | 2018-09-13 | 2019-01-18 | 华东交通大学 | 一种分布式数据源异构同步平台及同步方法 |
CN109582722A (zh) * | 2018-11-30 | 2019-04-05 | 珠海市新德汇信息技术有限公司 | 公安资源数据服务系统 |
CN110162571A (zh) * | 2019-04-26 | 2019-08-23 | 厦门市美亚柏科信息股份有限公司 | 一种异构数据库之间数据同步的系统、方法、存储介质 |
CN110866065A (zh) * | 2019-10-15 | 2020-03-06 | 深圳市中博科创信息技术有限公司 | 一种数据交换系统、交换方法及存储介质 |
-
2020
- 2020-12-24 CN CN202011572687.8A patent/CN112565042A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699723A (zh) * | 2013-12-10 | 2015-06-10 | 北京神州泰岳软件股份有限公司 | 数据交换适配器、异构系统之间数据同步系统和方法 |
CN106156165A (zh) * | 2015-04-16 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 异构数据源之间的数据同步方法和装置 |
CN108846076A (zh) * | 2018-06-08 | 2018-11-20 | 山大地纬软件股份有限公司 | 支持接口适配的海量多源异构数据etl方法及系统 |
CN109241191A (zh) * | 2018-09-13 | 2019-01-18 | 华东交通大学 | 一种分布式数据源异构同步平台及同步方法 |
CN109582722A (zh) * | 2018-11-30 | 2019-04-05 | 珠海市新德汇信息技术有限公司 | 公安资源数据服务系统 |
CN110162571A (zh) * | 2019-04-26 | 2019-08-23 | 厦门市美亚柏科信息股份有限公司 | 一种异构数据库之间数据同步的系统、方法、存储介质 |
CN110866065A (zh) * | 2019-10-15 | 2020-03-06 | 深圳市中博科创信息技术有限公司 | 一种数据交换系统、交换方法及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116567007A (zh) * | 2023-07-10 | 2023-08-08 | 长江信达软件技术(武汉)有限责任公司 | 一种基于任务切分的微服务水利数据共享交换方法 |
CN116567007B (zh) * | 2023-07-10 | 2023-10-13 | 长江信达软件技术(武汉)有限责任公司 | 一种基于任务切分的微服务水利数据共享交换方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108881369B (zh) | 一种基于面向数据内容的云消息中间件的数据交换方法和云消息中间件系统 | |
CN107590182B (zh) | 一种分布式日志收集方法 | |
CN101388844B (zh) | 一种数据流程的处理方法和系统 | |
CN102006245B (zh) | 一种数据交换和共享平台 | |
CN104539978A (zh) | 一种云环境下的视频转码系统方法 | |
WO2019227483A1 (en) | Multiple server-architecture cluster for providing a virtual network function | |
CN101409723B (zh) | 基于ForCES协议的综合网络管理系统设计方法 | |
CN103716408A (zh) | 一种基于esb的企业应用集成方法及系统 | |
CN103618762A (zh) | 一种基于aop的企业服务总线状态预处理系统及方法 | |
CN112565042A (zh) | 一种星形结构数据交换的方法 | |
CN106648801A (zh) | 一种Hadoop集群自动添加删除节点的方法 | |
CN110086759A (zh) | 一种用于在异构系统之间实现消息传递的方法和装置 | |
US10142228B2 (en) | Device and method for retransmitting data in a network switch | |
CN104956629A (zh) | 软件定义网络中的事件分发方法,控制设备和处理器 | |
CN114363096B (zh) | 一种跨安全分区的数据接入传输系统 | |
Fu et al. | Time sensitive networking technology overview and performance analysis | |
CN105812241A (zh) | 基于Spring Integration的企业应用集成方法和系统 | |
CN114791931A (zh) | 一种基于datax的数据治理方法 | |
Ashiwal et al. | Messaging interaction patterns for a service bus concept of plc-software | |
CN106909368B (zh) | 一种实现快速业务开发的服务端业务层逻辑架构 | |
CN112291254B (zh) | 一种用于可靠交易的消息处理方法及装置 | |
CN112581080A (zh) | 一种轻量级的分布式工作流引擎构建系统 | |
WO2017088489A1 (zh) | 一种数据报文传输方法、系统及通信系统 | |
CN102594680B (zh) | 一种报文分段处理方法 | |
da Costa Carmo et al. | A new mechanism for achieving inter-stream synchronization in multimedia communication systems |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210326 |
|
RJ01 | Rejection of invention patent application after publication |