CN115757587A - 一种异构数据源的整合方法、装置、电子设备及存储介质 - Google Patents
一种异构数据源的整合方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115757587A CN115757587A CN202211522914.5A CN202211522914A CN115757587A CN 115757587 A CN115757587 A CN 115757587A CN 202211522914 A CN202211522914 A CN 202211522914A CN 115757587 A CN115757587 A CN 115757587A
- Authority
- CN
- China
- Prior art keywords
- model
- data source
- instance
- data
- attribute
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种异构数据源的整合方法、装置、电子设备及存储介质。该方法可包括:针对待整合的异构数据源,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;获取已开发完成的至少一个候选转换策略,根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略;针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。本发明实施例的技术方案,可以实现异构数据源的有效整合。
Description
技术领域
本发明实施例涉及数据处理领域,尤其涉及一种异构数据源的整合方法、装置、电子设备及存储介质。
背景技术
随着云计算及微服务技术的快速发展,企业IT规模越来越大,敏捷程度也越来越高,这导致运维难度逐渐加大。
目前自动化运维正在逐步取代传统的被动式运维,而配置管理数据库(Configuration Management Database,CMDB)是数字化时代实现自动化运维的基石。CMDB是所有硬件和软件资产的中央数据库,尤其在混合云计算环境下,云上CMDB融合多云异构,因此这些异构数据源的有效整合尤为重要。
但是,目前并未存在有效的异构数据源整合方案,这点亟待解决。
发明内容
本发明实施例提供了一种异构数据源的整合方法、装置、电子设备及存储介质,以实现异构数据源的有效整合。
根据本发明的一方面,提供了一种异构数据源的整合方法,可以包括:
针对待整合的异构数据源,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;
获取已开发完成的至少一个候选转换策略,并根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略;
针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。
根据本发明的另一方面,提供了一种异构数据源的整合装置,可以包括:
数据实例采集模块,用于针对待整合的异构数据源,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;
目标转换策略确定模块,用于获取已开发完成的至少一个候选转换策略,并根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略;
模型实例得到模块,用于针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。
根据本发明的另一方面,提供了一种电子设备,可以包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的计算机程序,计算机程序被至少一个处理器执行,以使至少一个处理器执行时实现本发明任意实施例所提供的异构数据源的整合方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令用于使处理器执行时实现本发明任意实施例所提供的异构数据源的整合方法。
本发明实施例的技术方案,针对待整合的异构数据源,通过已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;获取已开发完成的至少一个候选转换策略,并根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略;进而,针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。上述技术方案,通过对接数据源、目标转换策略与标准业务模型的相互配合,实现了异构数据源的有效整合。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或是重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例提供的一种异构数据源的整合方法的流程图;
图2是根据本发明实施例提供的另一种异构数据源的整合方法的流程图;
图3是根据本发明实施例提供的另一种异构数据源的整合方法中可选示例的示意图;
图4是根据本发明实施例提供的另一种异构数据源的整合方法的流程图;
图5是根据本发明实施例提供的另一种异构数据源的整合方法中可选示例的示意图;
图6a是根据本发明实施例提供的另一种异构数据源的整合方法中另一可选示例的第一示意图;
图6b是根据本发明实施例提供的另一种异构数据源的整合方法中的另一可选示例的第二示意图;
图7是根据本发明实施例提供的一种异构数据源的整合装置的结构框图;
图8是实现本发明实施例的异构数据源的整合方法的电子设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。“目标”、“原始”等的情况类似,在此不再赘述。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在介绍本发明实施例之前,这里先对现有的异构数据源整合方案进行示例性说明。示例性的,现有的异构数据源整合方案可以分为模式集成方案和数据复制方案这两类,其中,模式集成方案中的数据仍保存在各个数据源上,提供一个虚拟的集成视图和全局模式查询的处理机制,代表方案有:联邦数据库及中间件;数据复制方案将各个数据源的数据复制并维护数据源整体的一致性、提高数据共享利用的效率,代表方案有:数据仓库方案。具体的,
1)联邦数据库是数据源之间彼此共享自己的一部分数据,实现各个数据源间的互操作,提供了统一查询语言,并将很多异构性问题交给用户自己去解决。但是,上述方案需用户为每个数据源向其他数据源转换提供转化规则,即一个包含N个数据源的系统需要编写N*(N-1)/2个转换规则。如果在系统中加入新节点,则需要建立大量的转换规则。该方案仅适用于数据源较少的系统。
2)中间件是一种软件结构,支持虚拟视图或视图集合,它不存储任何实际数据,通过屏蔽底层各种数据源结构的差异,将各数据源包装成公共数据模式,并将针对公共数据模式的查询分解为针对一个或多个数据源的查询。
3)数据仓库是指来自于几个数据源的数据副本存储在单一的数据仓库中,所有的数据源的数据都被抽取出来,合成一个全局模式,并存储在数据仓库中,这在用户看来和一般的数据库系统无异。但是,数据仓库需要定期更新,无法实时反映各个数据源的数据变换,而且它为了避免数据仓库与数据源中的数据出现不一致,通常不允许用户对数据仓库进行更新。
由上可知,现有的异构数据源整合方案通常是基于数据库异构和数据视图方式融合采集数据,对于半结构化或者非结构化数据无法完成实时感知采集,并且无法扩展其他应用层协议,例如基于远程过程调用协议(Remote Procedure Call Protocol,RPC)或者超文本传输协议(HyperText Transfer Protocol,HTTP)的全量或者增量数据异构,并非是有效的异构数据源整合方案。
需要说明的是,待整合的异构数据源(即各个数据源)方式多种多样,既有混合型数据(包括结构化和非结构化),又有离散性数据(数据分布在不同的系统或平台上)。如云上虚拟化资源、逻辑资源采集可通过消息队列(Message Queue,MQ)异步采集、全量拉取(基于RPC或者文件推送);物理设备基于设备管理系统完成数据拉取和推送,协议通常基于HTTP或文件推送完成对接,通常数据格式不固定、字段不统一并且协议不确定。
除此外,接入方式如逻辑资源、F5配置信息、虚拟化层多数采用文件或者HTTP拉取(全量)+消息通知(增量),也有基于探针(agent)自动采集上报、基于数据库采集(全量+增量)如通过canel检测数据模型变化。因此协议层需支持多种协议,随着异构数据源接入和数据模型的调整,对于传统开发模式下的数据源采集层无法实时感知应对模型的调整数据采集功能。
在此基础上,为了实现异构数据源的有效整合,在此提出了下述的本发明实施例中的各个技术方案。接下来,将对这些技术方案进行详细阐述。
图1是本发明实施例中所提供的一种异构数据源的整合方法的流程图。本实施例可以适用于整合异构数据源的情况。该方法可以由本发明实施例提供的异构数据源的整合装置来执行,该装置可由软件和/或硬件的方式实现,该装置可以集成在电子设备上,该电子设备可以是各种用户终端或服务器。
参见图1,本发明实施例的方法具体包括如下步骤:
S110、针对待整合的异构数据源,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例。
其中,异构数据源可以理解为已存在的待进行整合的数据源,异构数据源的数量可以是一个、两个或多个,在此未做具体限定。对接数据源可以理解成为了对接异构数据源而新建出的数据源,即对接数据源并非是已有的数据源。因此,可以基于对接数据源对异构数据源内的数据实例进行采集,具体的采集方式可以是主动拉取(Pull)或是被动接入(Push),在此未做具体限定。
S120、获取已开发完成的至少一个候选转换策略,根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略。
其中,由于不同异构数据源内的数据实例在很多方面可能存在差异,因此为了整合这些异构数据源,可以获取至少一个候选转换策略,该至少一个候选转换策略可以用于对相应的异构数据源内的数据实例进行标准化转换;然后,获取对接数据源的业务身份标识(businessAccessKey),该业务身份标识与该至少一个候选转换策略中的某候选转换策略间具有映射关系,因此可以根据该业务身份标识从该至少一个候选转换策略中确定映射的目标转换策略,该目标转换策略用于对与对接数据源对接的异构数据源内的数据实例进行标准化转换。
在实际应用中,可选的,业务身份标识可以从采集到的数据实例所对应的数据报文中获取;再可选的,至少一个候选转换策略可以是自定义转换策略,也可以是内嵌标准转换策略,其可根据实际情况进行选择,在此未做具体限定。
S130、针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。
其中,标准业务模型可以理解为预先基于对接数据源新建的标准化的业务模型,与标准业务模型匹配的对接数据源的数量可以是一个、两个或是多个,在此未做具体限定。结合本发明实施例可能涉及到的应用场景,标准业务模型可以是对至少一个虚拟机进行抽象和标准化后得到的业务模型,具体说可以是对这些虚拟机相应的属性及其的属性规则进行抽象和标准化后得到的业务模型,这些属性可以是物理服务器、物理网卡、物理磁盘或是物理内存等,在此未做具体限定。在标准业务模型新建过程中,还可以执行模型动态新增、属性新增和/或删除、属性规则配置以及模型关系关联等操作,在此未做具体限定。
由于目标转换策略与对接数据源匹配,可用于对与对接数据源对接的异构数据源内的数据实例进行标准化转换,并且标准业务模型基于对接数据源新建得到,因此可以基于目标转换策略对数据实例进行转换,从而得到与标准业务模型匹配的模型实例,由此实现了异构数据源整合的效果。
本发明实施例的技术方案,针对待整合的异构数据源,通过已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;获取已开发完成的至少一个候选转换策略,并根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略;进而,针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。上述技术方案,通过对接数据源、目标转换策略与标准业务模型的相互配合,实现了异构数据源的有效整合。
一种可选的技术方案,采集异构数据源内的数据实例,可包括:接收异构数据源发送的异构数据源内的数据实例;在对接数据源在新建过程中被导入标准业务模型的情况下,上述异构数据源的整合方法,还包括:基于对接数据源,确定数据实例中是否存在与标准业务模型无关的无关实例;若是,则删除无关实例,并将删除无关实例之后的数据实例,作为数据实例。
其中,对接数据源通过被动接收方式,接收异构数据源发送的异构数据源内的数据实例。需要说明的是,由于对接数据源在新建过程中已被导入了标准业务模型,这意味着对接数据源只对与标准业务模型有关的数据实例进行处理,因此对接数据源在接收到数据实例之后,可以确定这些数据实例中是否存在与标准业务模型无关的无关实例,并在是的情况下,删除无关实例,以便后续只对与标准业务模型有关的数据实例进行处理,保证了数据实例处理的准确性。
在实际应用中,可选的,被导入的标准业务模型的数量可以是一个、两个或是多个,接收到的数据实例的数量也可以是一个、两个或是多个,这与实际情况有关,在此均未做具体限定;再可选的,上述无关实例可以基于目标转换策略确定,当然,也可以基于其余因素确定,在此未做具体限定。
另一种可选的技术方案,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例,包括:针对已新建完成的用于对接异构数据源的对接数据源,获取对接数据源的数据源配置,其中,数据源配置包括方式配置和协议配置,方式配置包括主动拉取或是被动接入,协议配置基于串行外设接口上下线;基于数据源配置,采集异构数据源内的数据实例。
其中,数据源配置可表示出基于何种协议何种方式与异构数据源进行对接,因此在采集数据实例时,可以基于数据源配置实现这一采集过程。在实际应用中,可选的,数据源配置至少可以包括方式配置和协议配置,该方式配置可以包括主动拉取(Pull)或是被动接入(Push);该协议配置可以包括以太网存储矩阵(Ethernet Storage Fabric,ESF)、HTTP或是MQ(例如RabbitMQ或是Kafka等),当然,还可以是其余的协议配置,在此未做具体限定。
在此基础上,为了更好地理解上述的方式配置,这里结合具体的Pull场景和Push场景进行示例性说明。示例性的,
Push场景:
场景1、通过MQ,同时配置对接数据源的基础配置信息;
场景2、通过应用程序接口(Application Programming Interface,API)Push接入,则根据标准API对接接入(协议适配支持HTTP/RPC适配硬件管理系统以完成数据实例的采集);
场景3、基于文件(借助对象存储或者网络附属存储(Network Attached Storage,NAS))推送;
Pull场景:
场景1、基于JOB任务调度平台来实现定时拉取,协议适配支持HTTP/RPC适配硬件管理系统以完成数据实例的采集;
场景2、基于MQ,则根据基础配置信息动态添加检测器,同时,根据数据模型(JSON)拉取;
场景3、基于文件(借助对象存储或者NAS)拉取。
图2是本发明实施例中提供的另一种异构数据源的整合方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,标准业务模型至少包括第一业务模型以及第二业务模型,基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例,可包括:基于目标转换策略转换数据实例,得到与第一业务模型匹配的第一模型实例以及与第二业务模型匹配的第二模型实例;上述异构数据源的整合方法还包括:获取针对第一业务模型与第二业务模型预先绑定的模型关联关系;基于模型关联关系,得到第一模型实例与第二模型实例之间的实例关联关系。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
参见图2,本实施例的方法具体可以包括如下步骤:
S210、针对待整合的异构数据源,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例。
S220、获取已开发完成的至少一个候选转换策略,根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略。
S230、针对预先基于对接数据源新建出的第一业务模型和第二业务模型,基于目标转换策略对数据实例进行转换,得到与第一业务模型匹配的第一模型实例以及与第二业务模型匹配的第二模型实例。
其中,由于基于对接数据源新建的标准业务模型包括第一业务模型和第二业务模型,那么基于与对接数据源匹配的目标转换策略对数据实例进行转换后,可以得到与第一业务模型匹配的第一模型实例以及与第二业务模型匹配的第二模型实例。
S240、获取针对第一业务模型与第二业务模型预先绑定的模型关联关系,并基于模型关联关系,得到第一模型实例与第二模型实例之间的实例关联关系。
其中,由于在新建第一业务模型和第二业务模型时,已对二者进行绑定,因此可以获取这二者的模型关联关系,从而基于模型关联关系,得到第一模型实例与第二模型实例间的实例关联关系,由此完成异构数据源的整合过程。
本发明实施例的技术方案,通过目标转换策略对数据实例进行转换,得到与第一业务模型匹配的第一模型实例以及与第二业务模型匹配的第二模型实例;然后,基于第一业务模型与第二业务模型之间的模型关联关系,得到第一模型实例与第二模型实例之间的实例关联关系,由此实现了异构数据源的整合过程。
一种可选的技术方案,第一业务模型通过如下步骤新建得到:获取待新建的第一业务模型内待填充的至少一个第一属性,基于至少一个第一属性新建出第一业务模型;第二业务模型通过如下步骤新建得到:获取待新建的第二业务模型内待填充的至少一个第二属性,并基于至少一个第二属性新建出第二业务模型;上述异构数据源的整合方法,还包括:响应于模型关联关系绑定指令,对至少一个第一属性中的各第一属性与至少一个第二属性中的各第二属性进行绑定,得到模型关联关系;基于模型关联关系,得到第一模型实例与第二模型实例之间的实例关联关系,可包括:基于模型关联关系所表征的各第一属性与各第二属性之间的属性关联关系,得到第一模型实例与第二模型实例间的实例关联关系。换言之,第一业务模型可以基于至少一个第一属性新建得到,第二业务模型可以基于至少一个第二属性新建得到。在此基础上,在绑定第一业务模型和第二业务模型时,实际上绑定的是至少一个第一属性中的各第一属性与至少一个第二属性中的各第二属性。因此,实例关联关系可以认为是基于模型关联关系所表征出的各第一属性与各第二属性之间的属性关联关系得到。上述技术方案,通过属性这个更细密的粒度,保证了得到的实例关联关系的准确性。
为了更好地理解上述技术方案,下面结合具体示例,对其进行示例性说明。自动构建对接数据源,接口层完成服务开通后,数据实例推送或者主动拉取,通过传入的业务身份标识选择目标转换策略,并经目标转换策略处理后,生成模型与实例的映射关系Map<Model,List<Instance>>,通过标准业务模型预设的模型关联关系自动构建关联数据,完成数据实例采集。
对接数据源的工作原理如图3所示,通过协议层采集数据实例,协议层可包括实时协议(例如HTTP和MQ),也可以包括T+1协议(例如HTTP、webservice或是其它协议)。对采集到的数据实例进行处理,具体的,通过抽象数据解析层实例化Bean,然后基于解析得到的业务身份标识选择目标转换策略,输入Map<Model,List<Instance>>(这里可简化表述为Map<M,List>);通过存储层对数据实例进行合规性校验,并基于模型关联关系自动构建实例关联关系,从而得到实例&关系事务,并存储在数据库中。在模型关联关系处理中,依次执行如下步骤:输入Map<M,List>—根据模型昵称查询出模型关联关系—根据模型昵称查询得到模型关联关系列表—根据关系属性(即属性关联关系)将对应的实例打标—完成实例重构&关系对象抽取—多实例事务内提交。
图4是本发明实施例中提供的另一种异构数据源的整合方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,目标转换策略通过如下步骤预先生成:针对对接数据源的至少一个数据源属性,以及,标准业务模型的至少一个模型属性,获取至少一个数据源属性中被选中的数据源属性,与,至少一个模型属性中被选中的模型属性间的属性映射关系;根据属性映射关系生成目标转换策略。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
参见图4,本实施例的方法具体可以包括如下步骤:
S310、针对对接数据源的至少一个数据源属性及标准业务模型的至少一个模型属性,获取至少一个数据源属性中的被选中的数据源属性与至少一个模型属性中的被选中的模型属性间的属性映射关系,并根据属性映射关系生成目标转换策略,其中,对接数据源已新建完成并且用于对接待整合的异构数据源,标准业务模型预先基于对接数据源新建得到。
其中,已新建完成的对接数据源具有至少一个数据源属性,且已新建完成的标准业务模型具有至少一个模型属性,为了将对接数据源采集到的数据实例转换为与标准业务模型匹配的模型实例,可获取至少一个数据源属性中被选中的数据源属性以及至少一个模型属性中被选中的模型属性,进而获取被选中的数据源属性与被选中的模型属性之间的属性映射关系,从而基于属性映射关系生成可用于实现上述转换功能的目标转换策略。
当然,其余候选转换策略的生成过程类似,均是基于相应的对接数据源的被选中的数据源属性与标准业务模型的被选中的模型属性之间的属性映射关系生成,在此不再赘述。
S320、基于对接数据源,采集异构数据源内的数据实例。
S330、获取已开发完成的至少一个候选转换策略,根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略。
S340、基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。
本发明实施例的技术方案,通过对接数据源的被选中的数据源属性与标准业务模型的被选中的模型属性之间的属性映射关系,生成目标转换策略,从而可以基于目标转换策略将对接数据源采集到的数据实例转换为与标准业务模型匹配的模型实例,由此保证了转换后的模型实例与标准业务模型之间的匹配性。
一种可选的技术方案,根据属性映射关系生成目标转换策略,可包括:对标准业务模型进行转换,得到可重用组件;根据属性映射关系,通过调用可重用组件生成目标转换策略;上述的异构数据源的整合方法还包括:采用热加载技术生效目标转换策略。换言之,标准业务模型上传,协议配置所表征的协议调用所需的基础配置信息,通过实时将标准业务模型转换为对应的可重用组件(例如javaBean),同时基于采集配置的目标转换策略,采用热加载技术实时生效目标转换策略,开启服务接口,接收数据实例,由此实现了标准业务模型变化、对接数据源实时感知并且支持实时上线,满足实时响应业务需求,采用低代码或者无代码的形式完成数据实例的接入。
为了更好地理解上述技术方案,下面结合具体示例,对其进行示例性说明。示例性的,基于协议配置,根据业务身份标识和自定义转换策略配置,采用热加载技术完成策略动态编译加载到jvm中,同时基于Spring反转控制(Inversion Of Control,IOC)注入策略Service及其依赖的bean类,并基于业务身份标识注解完成业务身份标识与策略的映射关系,从而实现对接数据源在不重启服务情况下,完成实时上线发布;同时基于方式配置完成定时任务、MQ动态检测(基于Spring IOC完成动态注入),以便完成异步拉取或消费的协议层通信建立。
具体的,参见图5所示的基于数据源配置构建目标转换策略打通协议层的具体实现过程。获取数据源配置,具体包括方式配置(例如Pull或是Push)和协议配置(例如MQ或是RPC)。对数据源配置进行解析,在方式配置是Pull的情况下,根据MQ信息生成检测器,然后进一步判断协议配置是否为MQ;在方式配置是Push的情况下,进一步判断协议配置是否为MQ。在协议配置是MQ的情况下,根据MQ信息生成检测器,并进一步读取数据源配置中的业务身份标识;在协议配置不是MQ的情况下,直接读取数据源配置中的业务身份标识。进一步,读取Conver解析器代码,然后动态编译加载类,并注入策略Bean到Spring容器,生成动态的与业务身份标识对应的目标转换策略,并完成上线&修改上线状态,由此实现了目标转换策略的有效生成。
为了从整体上更好地理解上述的各个技术方案,下面结合具体示例,对其进行示例性说明。为了在动态业务建模完成之后,可实时感知模型变化,敏捷适应异构数据实例接入,这里通过抽象协议层,剥离转换策略层,由此满足了复杂云上资源和企业内部服务对接,并基于串行外设接口(Serial Peripheral Interface,SPI)+热加载+Spring动态构建来有效地屏蔽技术复杂度,提升对接效率。具体的,参见图6a和图6b,其可以分为标准业务模型新建,对接数据源新建,对接数据源与标准业务模型的关联,以及,对接数据源开启接入数据实例这四部分。为了简化表述,在本示例性说明中,将标准业务模型简称为模型,并且将对接数据源简称为数据源。
1、模型新建:新建模型—新增模型,例如根据模型名称、模型层级和模型负责人信息新增模型—填充公共属性和固有属性,这里支持用户自定义属性—对不同模型的各个属性进行关联绑定,实现模型管理—上线。
2、数据源新建:新建数据源—获取数据源的协议配置、方式配置以及默认配置—模型导入,例如将数据源样例JSON数据导入,动态生成Java Bean,同时将数据源名称作为最外层类名,实时导入—数据源创建完成—在模型与数据源之间的属性映射关系构建完成的情况下,数据源上线。
3、数据源与模型的关联:关联数据源—选择数据源,例如在被动模式下,动态添加API/MQ检测器,支持新增数据源接入—选择数据源属性—选择模型—选择模型属性—将数据源属性与模型属性进行关联—生效。
4、数据源开启接入数据实例:通过被动接入或是主动拉取采集数据实例—根据数据源获取bean,从而根据bean解析数据报文—根据属性映射关系构建多模型实例—校验模型实例是否合规—在是的情况下,提交多模型实例,以及在否的情况下,存储异常的模型实例以进行数据治理—结束。
上述技术方案,基于业务动态建模能力,数据源采集层基于SPI及热加载实现协议扩展动态上下线、自定义转换策略实时生效、基于业务建模以及关联关系自动构建数据实例关系;如接入非标准化策略业务模型调整,只需要修改转换策略即可完成数据实例实时感知业务模型对接,如使用标准内置转换策略,只需要调整业务模型即可实时感知业务实例变化,基于增量和全量采集器采集策略组合,实现数据的完整性、实时性和一致性,从而建立全局统一的数据或视图。相对于静态数据接入模型,上述技术方案灵活的拓展机制可以适应当前愈发敏捷的IT环境。实现多源异构数据动态接入,基于SPI机制支持协议扩展,支持标准转换策略及自定义转换策略热加载,同时基于业务建模关联配置自动构实例关联关系,实现了实时数据和离线数据的动态接入。
上述技术方案至少具有如下特点:
1.可视化业务建模、模型属性及模型与模型之间的关联关系、数据源业务身份标识申请;
2.动态配置数据源,支持多协议,不局限于数据库对接,基于RPC、MQ或是HTTP等协议层扩展,可支持数据库、管理系统和文件推送等;
3.支持标准转换策略及自定义转换策略并能实时上线发布,适应模型调整后实时感知,并且自定义转换策略可处理复杂的业务模型,完成模型实例接入;
4.基于动态生成java文件,同时依据java内省实现异构数据源与标准业务模型进行转换,抽象转换层预留扩展点可在线编辑转换策略,通过引入网关层,屏蔽了协议对接技术复杂度,产生直接效益减少开发对接、发布等对接工作量,提升了开发效率,做到开箱即用,低成本快速迭代,敏捷响应业务需求。
图7为本发明实施例所提供的异构数据源的整合装置的结构框图,该装置用于执行上述任意实施例所提供的异构数据源的整合方法。该装置与上述各实施例的异构数据源的整合方法属于同一个发明构思,在异构数据源的整合装置的实施例中未详尽描述的细节内容,可以参考上述异构数据源的整合方法的实施例。参见图7,该装置具体可以包括:数据实例采集模块410、目标转换策略确定模块420和模型实例得到模块430。其中,
数据实例采集模块410,用于针对待整合的异构数据源,基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;
目标转换策略确定模块420,用于获取预先开发完成的至少一个候选转换策略,根据对接数据源的业务身份标识,从至少一个候选转换策略中确定目标转换策略;
模型实例得到模块430,用于针对预先基于对接数据源新建出的标准业务模型,基于目标转换策略对数据实例进行转换,得到标准业务模型匹配的模型实例。
可选的,标准业务模型至少包括第一业务模型和第二业务模型,模型实例得到模块430,可以包括:
模型实例得到单元,用于基于目标转换策略转换数据实例,得到与第一业务模型匹配的第一模型实例以及与第二业务模型匹配的第二模型实例;
上述的异构数据源的整合装置,还包括:
模型关联关系获取模块,用于获取针对第一业务模型与第二业务模型预先绑定的模型关联关系;
实例关联关系得到模块,用于基于模型关联关系,得到第一模型实例与第二模型实例之间的实例关联关系。
在此基础上,可选的,第一业务模型通过如下模块新建得到:
第一业务模型新建模块,用于获取待新建的第一业务模型内待填充的至少一个第一属性,基于至少一个第一属性新建出第一业务模型;
第二业务模型通过如下模块新建得到:
第二业务模型新建模块,用于获取待新建的第二业务模型内待填充的至少一个第二属性,基于至少一个第二属性新建出第二业务模型;
上述的异构数据源的整合装置,还包括:
模型关联关系得到模块,用于响应于模型关联关系绑定指令,对至少一个第一属性中的各第一属性与至少一个第二属性中的各第二属性进行绑定,得到模型关联关系;
实例关联关系得到模块,具体用于:
基于模型关联关系所表征的各第一属性与各第二属性之间的属性关联关系,得到第一模型实例与第二模型实例间的实例关联关系。
可选的,数据实例采集模块410,包括:
数据实例接收单元,用于接收异构数据源发送的异构数据源内的数据实例;
在对接数据源在新建过程中被导入标准业务模型的情况下,上述异构数据源的整合装置,还包括:
无关实例确定模块,用于基于对接数据源,确定数据实例中是否存在与标准业务模型无关的无关实例;
数据实例更新模块,用于若是,则删除无关实例,并将删除无关实例之后的数据实例,作为数据实例。
可选的,数据实例采集模块410,包括:
数据源配置获取单元,用于针对已新建完成的用于对接异构数据源的对接数据源,获取对接数据源的数据源配置,其中,数据源配置包括方式配置和协议配置,方式配置包括主动拉取或是被动接入,协议配置包括以太网存储矩阵、超文本传输协议或是消息队列;
数据实例采集单元,用于基于数据源配置,采集异构数据源内的数据实例。
可选的,目标转换策略通过如下模块预先生成:
属性映射关系获取模块,用于针对对接数据源的至少一个数据源属性,以及,标准业务模型的至少一个模型属性,获取至少一个数据源属性中被选中的数据源属性,与,至少一个模型属性中被选中的模型属性之间的属性映射关系;
目标转换策略生成模块,用于根据属性映射关系生成目标转换策略。
在此基础上,可选的,目标转换策略生成模块,具体用于:
对标准业务模型进行转换,得到可重用组件;
根据属性映射关系,通过调用可重用组件生成目标转换策略;
上述的异构数据源的整合装置,还包括:
目标转换策略生效模块,用于采用热加载技术生效目标转换策略。
本发明实施例提供的异构数据源的整合装置,针对待整合的异构数据源,通过数据实例采集模块基于已新建完成的用于对接异构数据源的对接数据源,采集异构数据源内的数据实例;通过目标转换策略确定模块获取已开发完成的至少一个候选转换策略,并根据对接数据源的业务身份标识,从至少一个候选转换策略中确定出目标转换策略;针对预先基于对接数据源新建出的标准业务模型,通过模型实例得到模块基于目标转换策略对数据实例进行转换,得到与标准业务模型匹配的模型实例。上述装置,通过对接数据源、目标转换策略与标准业务模型的相互配合,实现了异构数据源的有效整合。
本发明实施例所提供的异构数据源的整合装置可执行本发明任意实施例所提供的异构数据源的整合方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述异构数据源的整合装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
图8示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图8所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如异构数据源的整合方法。
在一些实施例中,异构数据源的整合方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的异构数据源的整合方法的一个或多个步骤。备选地,在其他实施例中,处理器11可通过其他任何适当的方式(例如,借助于固件)而被配置为执行异构数据源的整合方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、以及至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、以及该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或是其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行并且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种异构数据源的整合方法,其特征在于,包括:
针对待整合的异构数据源,基于已新建完成的用于对接所述异构数据源的对接数据源,采集所述异构数据源内的数据实例;
获取已开发完成的至少一个候选转换策略,并根据所述对接数据源的业务身份标识,从所述至少一个候选转换策略中确定目标转换策略;
针对预先基于所述对接数据源新建出的标准业务模型,基于所述目标转换策略对所述数据实例进行转换,得到与所述标准业务模型匹配的模型实例。
2.根据权利要求1所述的方法,其特征在于,所述标准业务模型至少包括第一业务模型以及第二业务模型,所述基于所述目标转换策略对所述数据实例进行转换,得到与所述标准业务模型匹配的模型实例,包括:
基于所述目标转换策略转换所述数据实例,得到与所述第一业务模型匹配的第一模型实例以及与所述第二业务模型匹配的第二模型实例;
所述方法还包括:
获取针对所述第一业务模型与所述第二业务模型预先绑定的模型关联关系;
基于所述模型关联关系,得到所述第一模型实例与所述第二模型实例之间的实例关联关系。
3.根据权利要求2所述的方法,其特征在于:
所述第一业务模型通过如下步骤新建得到:
获取待新建的所述第一业务模型内待填充的至少一个第一属性,基于所述至少一个第一属性新建出所述第一业务模型;
所述第二业务模型通过如下步骤新建得到:
获取待新建的所述第二业务模型内待填充的至少一个第二属性,基于所述至少一个第二属性新建出所述第二业务模型;
所述方法还包括:
响应于模型关联关系绑定指令,对所述至少一个第一属性中的各第一属性与所述至少一个第二属性中的各第二属性进行绑定,得到所述模型关联关系;
所述基于所述模型关联关系,得到所述第一模型实例与所述第二模型实例之间的实例关联关系,包括:
基于所述模型关联关系所表征的所述各第一属性与所述各第二属性之间的属性关联关系,得到所述第一模型实例与所述第二模型实例间的实例关联关系。
4.根据权利要求1所述的方法,其特征在于,所述采集所述异构数据源内的数据实例,包括:
接收所述异构数据源发送的所述异构数据源内的数据实例;
在所述对接数据源在新建过程中被导入所述标准业务模型的情况下,所述方法还包括:
基于所述对接数据源,确定所述数据实例中是否存在与所述标准业务模型无关的无关实例;
若是,则删除所述无关实例,并将删除所述无关实例之后的所述数据实例,作为所述数据实例。
5.根据权利要求1所述的方法,其特征在于,所述基于已新建完成的用于对接所述异构数据源的对接数据源,采集所述异构数据源内的数据实例,包括:
针对已新建完成的用于对接所述异构数据源的对接数据源,获取所述对接数据源的数据源配置,其中,所述数据源配置包括方式配置和协议配置,所述方式配置包括主动拉取或是被动接入,所述协议配置包括以太网存储矩阵、超文本传输协议或是消息队列;
基于所述数据源配置,采集所述异构数据源内的数据实例。
6.根据权利要求1所述的方法,其特征在于,所述目标转换策略通过如下步骤预先生成:
针对所述对接数据源的至少一个数据源属性,以及,所述标准业务模型的至少一个模型属性,获取所述至少一个数据源属性中被选中的数据源属性,与,所述至少一个模型属性中被选中的模型属性之间的属性映射关系;
根据所述属性映射关系生成所述目标转换策略。
7.根据权利要求6所述的方法,其特征在于,所述根据所述属性映射关系生成所述目标转换策略,包括:
对所述标准业务模型进行转换,得到可重用组件;
根据所述属性映射关系,通过调用所述可重用组件生成所述目标转换策略;
所述方法还包括:
采用热加载技术生效所述目标转换策略。
8.一种异构数据源的整合装置,其特征在于,包括:
数据实例采集模块,用于针对待整合的异构数据源,基于已新建完成的用于对接所述异构数据源的对接数据源,采集所述异构数据源内的数据实例;
目标转换策略确定模块,用于获取已开发完成的至少一个候选转换策略,并根据所述对接数据源的业务身份标识,从所述至少一个候选转换策略中确定目标转换策略;
模型实例得到模块,用于针对预先基于所述对接数据源新建出的标准业务模型,基于所述目标转换策略对所述数据实例进行转换,得到与所述标准业务模型匹配的模型实例。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-7中任一项所述的异构数据源的整合方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现如权利要求1-7中任一所述的异构数据源的整合方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211522914.5A CN115757587A (zh) | 2022-11-30 | 2022-11-30 | 一种异构数据源的整合方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211522914.5A CN115757587A (zh) | 2022-11-30 | 2022-11-30 | 一种异构数据源的整合方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115757587A true CN115757587A (zh) | 2023-03-07 |
Family
ID=85341485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211522914.5A Pending CN115757587A (zh) | 2022-11-30 | 2022-11-30 | 一种异构数据源的整合方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115757587A (zh) |
-
2022
- 2022-11-30 CN CN202211522914.5A patent/CN115757587A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9363195B2 (en) | Configuring cloud resources | |
CN108304201B (zh) | 对象更新方法、装置及设备 | |
US20120047239A1 (en) | System and Method for Installation and Management of Cloud-Independent Multi-Tenant Applications | |
CN110908641B (zh) | 基于可视化的流计算平台、方法、设备和存储介质 | |
US20220179711A1 (en) | Method For Platform-Based Scheduling Of Job Flow | |
CN112698921A (zh) | 一种逻辑代码运行方法、装置、计算机设备和存储介质 | |
CN111966692A (zh) | 针对数据仓库的数据处理方法、介质、装置和计算设备 | |
CN112685499A (zh) | 一种工作业务流的流程数据同步方法、装置及设备 | |
CN114244595A (zh) | 权限信息的获取方法、装置、计算机设备及存储介质 | |
CN113190517B (zh) | 数据集成方法、装置、电子设备和计算机可读介质 | |
CN112559525B (zh) | 数据检查系统、方法、装置和服务器 | |
CN113962597A (zh) | 一种数据分析方法、装置、电子设备及存储介质 | |
CN109614271A (zh) | 多个集群数据一致性的控制方法、装置、设备及存储介质 | |
CN115567526B (zh) | 数据监控方法、装置、设备及介质 | |
US11615061B1 (en) | Evaluating workload for database migration recommendations | |
US20230409710A1 (en) | Allow list of container images based on deployment configuration at a container orchestration service | |
CN115543428A (zh) | 一种基于策略模板的模拟数据生成方法和装置 | |
US20220122038A1 (en) | Process Version Control for Business Process Management | |
CN111143408B (zh) | 一种基于业务规则的事件处理方法和装置 | |
CN115757587A (zh) | 一种异构数据源的整合方法、装置、电子设备及存储介质 | |
CN114756301A (zh) | 日志处理方法、装置和系统 | |
CN115033634A (zh) | 数据采集方法、装置、电子设备和介质 | |
CN112181401A (zh) | 应用构建方法及应用构建平台 | |
CN111399826B (zh) | 一种可视化拖拽流程图式etl在线数据交换方法和系统 | |
US20230368103A1 (en) | Knowledge graph enabled augmentation of natural language processing applications |
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 |