一种基于响应的高并发轻量级数据集成架构的实现方法及其系统与流程

文档序号:17860497发布日期:2019-06-11 22:50阅读:264来源:国知局

本发明涉及一种基于响应的高并发轻量级数据集成架构的实现方法及其系统,属于应用系统数据集成技术领域。



背景技术:

随着各行各业信息化建设的飞跃式发展,信息系统逐渐覆盖企业日常生产与运营的全部过程中。为了进一步实现跨系统的信息互动和数据流转,信息共享已经成为所有信息系统建设过程中必须面对和考虑的问题。

目前针对信息系统数据集成的解决方案均通过搭建商品化的数据集成服务集群,通过配置工具进行数据集成配置。采用这种模式主要存在以下问题:1)服务庞大,对硬件要求高。常见的数据集成工具都需要提供较多的硬件服务器资源来支撑其运行;2)横向扩展难度大,针对单个类型的数据集成作业,无法有针对性在对集成的某个环节提高处理的并发程度。



技术实现要素:

针对现有技术存在的不足,本发明目的是提供一种基于响应的高并发轻量级数据集成架构的实现方法及其系统,用户可以直接在业务应用系统中引入数据集成框架,再基于数据集成框架构建集成作业,实现数据集成服务的轻量化;基于响应式的组件设计,实现了数据集成特写环节的并发扩展,解决了数据集成服务扩展和并行化处理的问题。

为了实现上述目的,本发明是通过如下的技术方案来实现:

本发明的一种基于响应的高并发轻量级数据集成架构的实现方法,数据集成架构包括集成作业构建器、集成作业触发器、集成作业调度器、集成作业执行器、集成数据抽取器、集成数据转换器和集成数据加载器七种动作器,所述方法包括以下步骤:

集成作业构建器将业务系统所需集成的各类数据构建为集成作业;

集成作业触发器根据所述集成作业的触发方式启动所述集成作业;

集成作业调度器为所述集成作业指定集成作业执行器;

集成作业执行器为所述集成作业生成集成数据抽取器、集成数据转换器和集成数据加载器;

集成数据抽取器从原始外部数据源抽取集成作业的各类集成原始数据;

集成数据转换器将所述各类集成原始数据转换得到集成数据作为目标数据;

集成数据加载器将所述目标数据写入目标数据源。

集成作业构建器、集成作业触发器、集成作业调度器、集成作业执行器、集成数据抽取器、集成数据转换器和集成数据加载器均为集群结构,在每个动作器执行自身动作前,所述方法进一步包括:根据预设的负载均衡算法在每个动作器集群中选择指定的动作器执行动作。

上述集成作业构建器根据集成业务配置信息将业务系统所需集成的各类数据构建为集成作业后将所有集成作业注册至作业仓库。

上述注册仓库包括定时作业仓库和事件作业仓库;所述集成作业触发器根据定时作业仓库内的定时作业的定时信息定时启动定时作业、或者根据事件作业仓库内的事件作业的触发方式启动事件作业。

上述集成作业调度器为集成作业指定集成作业执行器,集成作业执行器为所述集成作业生成数据抽取器、数据转换器和数据加载器,包括:

所述集成作业调度器根据集成作业的标识选择或创建一个集成作业执行器,启动并进行集成作业执行器的初始化工作,然后发送集成作业配置消息至集成作业执行器;

集成作业执行器根据集成作业配置信息获取或创建集成数据抽取器、集成数据转换器、集成数据加载器。

进一步包括:所述集成作业调度器遍历本地缓存的集成作业执行器,并且,在确定存在过期的集成作业执行器时,注销所述过期的集成作业执行器的缓存信息并向所述过期的集成作业执行器发送销毁信息;所述过期的集成作业执行器指在预设时间内没有处理过数据。

集成作业构建器、集成作业触发器、集成作业调度器、集成作业执行器、集成数据抽取器、集成数据转换器和集成数据加载器之间通过各自的私有邮箱进行消息交互。

每个动作器中预先定义了对不同类型消息的响应动作;

每个动作器根据消息发送的顺序,依次处理私有邮箱中接收到的消息。

进一步包括:所述集成作业构建器构建作业时根据数据转换的复杂度和数据量确定集成数据转换器的并发执行数量和负载均衡算法;所述集成数据抽取器根据所述集成数据转换器的数量以及所述负载均衡算法选择消息发送的集成数据转换器。

上述集成数据加载器将所述目标数据写入目标数据源包括:

所述集成数据加载器将所述目标数据写入数据库、服务或消息队列。

上述系统包括网络接口、存储器和处理器;其中,

所述网络接口,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;

所述存储器,用于存储能够在所述处理器上运行的计算机程序指令;

所述处理器,用于在运行所述计算机程序指令时,执行上述基于响应的高并发轻量级数据集成架构的实现方法的步骤。

本发明由于采用了上述技术方案,使之与现有技术相比,具有以下的优点和积极效果:

1.数据集成框架与现有技术相比,无需再安装或搭建独立的服务,只需要在业务应用中添加相应的依赖定。在绝大多数业务场景下,用户只需要注册相应的集成作业,实现不同类集成数据的转换逻辑,即可完成数据集成工作,实现了数据集成工具的轻量化。

2.数据集成框架采用消息响应的方式,实现动作器之间的交互。数据集成各环节动作器独立响应各自的消息,进而可以对特写的处理环节进行横向扩展,提高处理的并行度。

附图说明

图1是本发明的基于响应的高并发轻量级数据集成架构的实现方法工作流程图;

图2是本发明实施例的总体架构图;

图3是本发明实施例的初始化流程图;

图4是本发明实施例的集成作业调度器执行流程图;

图5是本发明实施例的集成作业执行器初始化流程图;

图6是本发明实施例的集成数据处理流程图。

具体实施方式

为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。

本发明解决了数据集成框架过于重量级导致部署复杂、横向扩展能力不足、无法单独增加某个环节的并发程度。

有鉴于此,本发明实施例提供了基于响应的高并发轻量级数据集成框架的实现方法,以解决数据集成服务过于庞大,无法与业务系统融合,以及无法针对集成数据过程中逻辑复杂的特定环节进行横向扩展的问题。

为了解决上述问题,本发明基于响应的高并发轻量级数据集成框架的实现方法中用户可以直接在业务应用系统中引入数据集成框架,再基于数据集成框架构建集成作业,实现数据集成服务的轻量化;基于响应式的组件设计,实现了数据集成特写环节的并发扩展,解决了数据集成服务扩展和并行化处理的问题。

本实施例中,私有收发空间采用的是私有邮箱。

参见图1,本发明的基于响应的高并发数据集成框架的实现方法,包括:

(1)将每一类数据的集成用一个集成作业来描述;

(2)将每一次数据集成过程抽象为集成作业触发、集成作业调度、数据抽取、数据转换和数据加载5个环节;

(3)框架由集成作业构建器、集成作业仓库、集成作业触发器、集成作业调度器、集成作业执行器、集成数据抽取器、集成数据转换器、集成数据加载器5类动作器组成;

(4)每一个动作器都有一个私有邮箱,用于接收外部消息,并进行相应的处理;

(5)框架中的每个动作器都可以扩展为多个,前置动作器会根据指定的负载均衡算法选择指定的动行器执行动作。

步骤(1)中,集成作业描述所含内容包括:集成作业触发方式、集成数据来源、集成数据抽取方式、集成数据转换逻辑、目标数据源。

步骤(3)中,包括以下特性:

(3a)集成作业构建器为用户提供构建作业接口,定义集业作业所需要的信息,并注册至作业仓库中;

(3b)集成作业触发器根据集成作业定义的触发方式,通过周期性的定时任务或都侦听指定的消息队列,进而启动一次集成作业;

(3c)集成作业调度器根据集成作业的唯一标识选择或创建一个集成作业执行器,并确发完成集成作业执行器的初始化工作;

(3d)集成作业执行器根据集成作业配置信息获取或创建集成数据抽取器、集成数据转换器、集成数据加载器;

(3e)集成数据抽取器提供了基于数据库查询语句抽取、基于服务的数据抽取的默认实现;

(3f)集成数据转换器是唯一必须由使用者提供的动作器;并支持用户设置其并发执行数量;

(3g)集成加载器提供了目标数据源为数据库、服务和消息队列的实现。

步骤(4)中,包括以下特征:

(4a)每一个动作器与其他动作器或对象交互的唯一方式是通过各自的私有信箱;

(4b)每一个动作器中定义了对不同类型消息的响应动作;

(4c)每一个动作器会根据消息发送的顺序,依次处理私有邮箱中接收到的消息。

步骤(5)中,包括以下特征:

(5a)用户可以结合数据转换的复杂度和数据量,在构建集成作业时指定集成数据转换器的并发度和负载均衡算法;

(5b)集成作业执行器在初始化时根据集成作业的配置,初始化一个或多个集成数据转换器;

(5c)在数据集成过程中,集成数据抽取器根据集成数据转换器的数量,以及设定的负载均衡算法选择消息发送的集成数据转换器。

基于响应的高并发轻量级数据集成架构的实现系统,包括网络接口、存储器和处理器;其中,

网络接口,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;

存储器,用于存储能够在所述处理器上运行的计算机程序指令;

处理器,用于在运行所述计算机程序指令时,执行基于响应的高并发轻量级数据集成架构的实现方法的步骤。

如图2所示,基于响应的高并发轻量级数据集成框架总体架构包括以下组成部分:

1.集成作业构建器:负责为使用者提供创建集成作业的接口,并在服务启动时,扫描所有用户定义的集成作业,注册至作业仓库中。

2.作业仓库,包括定时作业仓库和事件作业仓库。用于接收作业构建者的注册。

3.集成作业触发器包括两种形式,(1)定时任务,框架启动时,会根据作业仓库中的定时作业信息创建相应的定时任务;(2)事件侦听,框架启动时,会根据作业仓库中的事件作业信息创建相应的事件侦听线程。

4.集成作业调度器,负责在集成作业实例执行时为其创建分配指定的集成作业执行器,并在一定的时间窗口缓存对应的集成作业执行器。

5.集成作业执行器:负责为指定的集成作业创建并维护数据抽取器、数据转换器和数据加载器实例。

6.数据抽取器:用于从原始外部数据源抽取集成原始数据,框架本身提供了常见的默认实现,用户也可以自定义。

7.数据转换器:将集成原始数据转换成目标业务数据对象.集成框架会根据作业配置生产并维护多个数据转换器实例。

8.数据加载器:将数据转换器生成的目标业务数据对象加载至目标数据源。

如图3所示,数据集成框架的初始化过程,具体处理流程包括步骤:

1.读取集成业务配置信息;

2.根据配置信息构建集成作业对象;

3.如果作业类型为定时集成作业;

3.1向定时作业仓库中注册集成作业;

3.2创建定时执行任务;

4.如果作业类型为事件集成作业;

4.1向事件集成作业仓库中注册集成作业;

4.2创建事件侦听线程;

5.初始化结束。

如图4所示,集成作业调度器主要响应两类消息,一类是集成作业信息,一类是刷新信息。集成作业调度器响应集成作业信息的具体处理流程如下:

1.作业调度器从集成作业信息中获取作业名称;

2.从本地执行器缓存中查找对应用的集成作业集成器;

3.如果本地缓存中没有查找到集成作业集成器;

3.1从作业仓库中获取该集成作业的配置信息并创建集成作业执行器,并更新本地执行器缓存信息;

3.2向集成作业执行器发送初始化信息;

4.向相应的集成作业执行器发送集成作业信息。

集成作业调度器响应更新信息的处理流程如下:

1.遍历缓存的执行器信息;

2.判断执行器是否过期,即,在指定的时间窗口内是否处理过新的数据;

3.如果执行器过期,则注销执行器缓存信息,并向执行器发送销毁信息。

如图5所示,集成作业执行器主要响应三类消息,一类是初始化信息,一类是集成作业信息,以及执行器销毁信息。集成作业执行器响应初始化消息处理流程如下:

1.接收到初始化消息后,首先根据作业配置信息创建数据抽取器

2.向该数据抽取器发送初始化信息;

3.根据作业配置信息创建一个或多个数据转换器向上一步中数据抽取器发送信息设置nextstep信息;

4.向数据转换器发送初始化信息

5.根据作业配置信息创建数据加载器,向上一步中数据转换器发送信息设置nextstep信息;

6.向数据加载器发送初始化消息。

如图6所示,集成作业执行器响应集成作业消息处理流程如下:

1.集成作业执行器将作业消息发送给数据抽取器;

2.数据抽取器接收集成作业消息,从外部数据源抽取数据;

3.将包装在集成作业消息发送给数据转换器;

4.数据转换器接收到数据后,对数据进行转换处理;

5.将转换后的数据包装成集成作业消息发送至数据加载器;

6.数据加载器接收到数据后,执行数据加载逻辑,向目标数据源写入数据。

7.集成作业执行器响应接收到销毁消息后,分别发送销毁消息至数据抽取器、数据转换器、数据加载器,各自完成自身的销毁动作。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1