基于混合云的数据交换方法、装置及计算机可读介质与流程

文档序号:21360403发布日期:2020-07-04 04:33阅读:174来源:国知局
基于混合云的数据交换方法、装置及计算机可读介质与流程
本发明涉及计算机
技术领域
,特别涉及基于混合云的数据交换方法、装置及计算机可读介质。
背景技术
:随着云计算技术的普及,越来越多的企业使用云计算技术实现it(internettechnology,互联网技术)需求,提升企业竞争力。由于混合云具有降低成本、增加存储和扩展性、提高可用性和访问能力、提高敏捷性和灵活性、具有应用集成功能等优势,备受企业用户推崇。为充分利用信息和实现业务自动化,部署在混合云环境中的各个系统要实现互联互通,比如,部署在公有云下的应用系统与部署在私有云或托管云下的应用系统之间,需实现数据交换。目前,部署在混合云环境中的不同系统间的数据交换,基本上是通过人为导出导入数据文件的交换模式来实现,但数据交换效率较低。技术实现要素:本发明提供了基于混合云的数据交换方法、装置及计算机可读介质,能够提高数据交换效率。与现有技术相比,本发明提供的数据交换方法安全可靠,实时高效,满足了混合云企业用户数据交换的需求,具有良好的推广价值。为了达到上述目的,本发明是通过如下技术方案实现的:第一方面,本发明提供了基于混合云的数据交换方法,包括:根据预设的订阅机制,将一数据提供方提供的一数据接口注册为一数据服务,配置该数据服务的第一配置信息,所述第一配置信息包括来源云标识、来源系统标识及数据主体;根据所述订阅机制,将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置该订阅者的第二配置信息,所述第二配置信息包括来源云标识、来源系统标识及订阅的数据服务;在监听到任一第一数据提供方提供任一目标数据时,根据配置的各个所述第一配置信息和各个所述第二配置信息,确定可订阅所述目标数据的每一个第一订阅者;针对每一个所述第一订阅者均执行:根据当前第一订阅者的第二配置信息,将所述目标数据发送给所述当前第一订阅者所属的第一数据消费方。进一步地,在监听到所述目标数据之后,进一步包括:将所述目标数据缓存至预设的缓存区;在所述将所述目标数据发送给所述当前第一订阅者所属的第一数据消费方之后,进一步包括:接收所述第一数据消费方返回的、针对所述目标数据的订阅成功通知;在确定出每一个所述第一订阅者均已返回针对所述目标数据的订阅成功通知时,将所述目标数据从所述缓存区中删除。进一步地,在监听到所述目标数据时,进一步包括:记录当前时间为所述目标数据的时间戳;针对所述缓存区中缓存的每一个数据,均执行:根据当前数据的时间戳,实时监测所述当前数据的缓存持续时间是否达到预设时长,若是,将所述当前数据从所述缓存区中删除。进一步地,所述将所述目标数据缓存至预设的缓存区,包括:采用kafka中间件将所述目标数据缓存至预设的缓存区。第二方面,本发明提供了基于混合云的数据交换装置,包括:数据服务发布模块,用于根据预设的订阅机制,将一数据提供方提供的一数据接口注册为一数据服务,配置该数据服务的第一配置信息,所述第一配置信息包括来源云标识、来源系统标识及数据主体;数据服务订阅模块,用于根据所述订阅机制,将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置该订阅者的第二配置信息,所述第二配置信息包括来源云标识、来源系统标识及订阅的数据服务;数据监听模块,用于在监听到任一第一数据提供方提供任一目标数据时,触发数据发布模块;所述数据发布模块,用于根据配置的各个所述第一配置信息和各个所述第二配置信息,确定可订阅所述目标数据的每一个第一订阅者;数据消费模块,用于针对每一个所述第一订阅者均执行:根据当前第一订阅者的第二配置信息,将所述目标数据发送给所述当前第一订阅者所属的第一数据消费方。进一步地,所述数据监听模块,用于将所述目标数据缓存至预设的缓存区;所述数据消费模块,用于接收所述第一数据消费方返回的、针对所述目标数据的订阅成功通知;在确定出每一个所述第一订阅者均已返回针对所述目标数据的订阅成功通知时,将所述目标数据从所述缓存区中删除。进一步地,所述数据监听模块,用于在监听到所述目标数据时,记录当前时间为所述目标数据的时间戳;所述数据消费模块,用于针对所述缓存区中缓存的每一个数据,均执行:根据当前数据的时间戳,实时监测所述当前数据的缓存持续时间是否达到预设时长,若是,将所述当前数据从所述缓存区中删除。进一步地,所述数据监听模块,用于采用kafka中间件将所述目标数据缓存至预设的缓存区。第三方面,本发明提供了基于混合云的数据交换装置,包括:至少一个存储器和至少一个处理器;所述至少一个存储器,用于存储机器可读程序;所述至少一个处理器,用于调用所述机器可读程序,执行上述第一方面中任一所述的方法。第四方面,本发明提供了计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述第一方面中任一所述的方法。本发明提供了基于混合云的数据交换方法、装置及计算机可读介质,该方法包括:根据订阅机制将一数据提供方提供的一数据接口注册为一数据服务,配置其第一配置信息包括来源云标识、来源系统标识及数据主体;根据订阅机制将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置其第二配置信息包括来源云标识、来源系统标识及订阅的数据服务;在监听到任一第一数据提供方提供任一目标数据时,根据配置的各个第一配置信息和各个第二配置信息,确定可订阅目标数据的每一个订阅者;针对确定出的各个订阅者均执行:根据该订阅者的第二配置信息,将目标数据发送给该订阅者所属的数据消费方。本发明能够提高数据交换效率。与现有技术相比,本发明提供的数据交换方法安全可靠,实时高效,满足了混合云企业用户数据交换的需求,具有良好的推广价值。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一实施例提供的一种基于混合云的数据交换方法的流程图;图2是本发明一实施例提供的另一种基于混合云的数据交换方法的流程图;图3是本发明一实施例提供的一种基于混合云的数据交换装置的示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,本发明实施例提供了一种基于混合云的数据交换方法,可以包括以下步骤:步骤101:根据预设的订阅机制,将一数据提供方提供的一数据接口注册为一数据服务,配置该数据服务的第一配置信息,所述第一配置信息包括来源云标识、来源系统标识及数据主体。步骤102:根据所述订阅机制,将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置该订阅者的第二配置信息,所述第二配置信息包括来源云标识、来源系统标识及订阅的数据服务。步骤103:在监听到任一第一数据提供方提供任一目标数据时,根据配置的各个所述第一配置信息和各个所述第二配置信息,确定可订阅所述目标数据的每一个第一订阅者。步骤104:针对每一个所述第一订阅者均执行:根据当前第一订阅者的第二配置信息,将所述目标数据发送给所述当前第一订阅者所属的第一数据消费方。本发明实施例提供的基于混合云的数据交换方法包括:根据订阅机制将一数据提供方提供的一数据接口注册为一数据服务,配置其第一配置信息包括来源云标识、来源系统标识及数据主体;根据订阅机制将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置其第二配置信息包括来源云标识、来源系统标识及订阅的数据服务;在监听到任一数据提供方提供任一目标数据时,根据配置的各个第一配置信息和各个第二配置信息,确定可订阅目标数据的每一个订阅者;针对确定出的各个订阅者均执行:根据该订阅者的第二配置信息,将目标数据发送给该订阅者所属的数据消费方。本发明实施例能够提高数据交换效率。与现有技术相比,本发明实施例提供的数据交换方法安全可靠,实时高效,满足了混合云企业用户数据交换的需求,具有良好的推广价值。本发明实施例中,基于数据的给予关系,数据的提供方和消费方可以理解为一个相对概念,任一执行主体既可以是给其他消费方提供数据的数据提供方,也可以作为数据消费方,消费其他数据提供方提供的数据。本发明实施例中,执行上述数据交换方法的装置,为便于技术描述,以下称作数据盒子。数据盒子中预设有订阅机制,据此可实现数据提供方的数据接口的注册及数据消费方的数据消费逻辑接口的注册,并配置相关信息。举例来说,在订阅机制中,可以限定哪些云系统可参与数据交换,哪些应用系统可参与数据交换,参与数据交换的数据主体可以有哪些,注册数据服务时至少需配置哪些信息,注册订阅者时至少需配置哪些信息等。本发明实施例中,涉及到的云系统可以有公有云和私有云,比如阿里云、aws(amazonwebservices,亚马逊云计算服务)等公有云;涉及到的应用系统可以有mdm(masterdatamanagement,主数据管理)系统、crm(customerrelationshipmanagement,客户关系管理)系统、scm(supplychainmanagement,供应链管理)系统等;涉及到的数据主体可以有客户类数据、产品类数据、人员类数据等。本发明实施例中,将数据提供方提供的一数据接口注册为数据服务时,需配置其来源云标识、来源系统标识及相应的数据主体,将数据消费方提供的一数据消费逻辑接口注册为订阅者时,需配置其来源云标识、来源系统标识及订阅的数据服务。当任一数据提供方提供任一数据时,即可基于这些配置信息,将该数据分发给相应的数据消费方。当然,数据盒子还可根据数据提供方和数据消费方的实际需求,对注册内容做新增、删除、修改等。举例来说,在数据盒子中,将mdm系统提供的数据接口注册为数据服务,以便数据消费方进行订阅和消费。数据盒子注册的数据服务及其配置信息可以如下述表1所示。表1数据服务所属云所属系统数据主体新增客户阿里云mdm客户新增产品阿里云mdm产品在数据盒子中,注册数据消费者,并建立其与数据服务之间的订阅关系。数据盒子注册的订阅者及其配置信息如下述表2所示。表2订阅者所属云所属系统订阅的数据服务crm客户awscrm新增客户scm客户xxx私有云scm新增客户crm产品awscrm新增产品scm产品xxx私有云scm新增产品基于上述表1和表2中显示的配置项,当阿里云中的mdm系统提供一客户数据时,该客户数据对应的数据服务为上述“新增客户”,而订阅该数据服务的订阅者为上述“crm客户”和上述“scm客户”,故可将该客户数据经aws和crm系统以分发给“crm客户”,将该客户数据经xxx私有云和scm系统以分发给“scm客户”。综上所述,本发明实施例可借助数据的发布订阅机制,实现不同云之间的数据交换。与现有技术相比,本发明实施例提供的这一数据交换方法安全可靠,实时高效,满足了混合云企业用户数据交换的需求,具有良好的推广价值。本发明实施例中,可以通过数据盒子与各个数据提供方和数据消费方的互联互通,实现基于混合云的数据交换。当数据服务或数据消费逻辑发生变化时,仅需调整数据盒子中的配置信息,即可正常接收及分发数据,使得混合云间数据交换的执行更加灵活、可靠,易扩展,易满足混合云企业用户实时数据交换的需求。本发明一个实施例中,数据盒子可以包括数据服务发布模块、数据服务订阅模块、数据监听模块、数据发布模块和数据消费模块。其中,数据服务发布模块可用于将数据提供方(即源系统)的数据接口注册为数据服务;数据服务订阅模块可用于注册数据消费逻辑并订阅数据服务;数据监听模块可用于监听数据提供方提供的数据;数据发布模块可用于将监听到的数据分发出去;数据消费模块可用于调度数据消费方的数据处理逻辑(比如数据格式转换、数据加密等)。在本发明一个实施例中,来源系统提供的数据服务,可支持rest(representationalstatetransfer,表述性状态传递)风格,数据服务内部遵守安全协议,禁止发布敏感私人数据和未合法公开的数据。数据消费端可提供支持rest风格的数据消费逻辑接口,注册到数据盒子中,且可支持幂等性,避免重复消费数据。在本发明一个实施例中,为了说明一种数据分发处理的可能实现方式,所以,在监听到所述目标数据之后,进一步包括:将所述目标数据缓存至预设的缓存区;在所述将所述目标数据发送给所述当前第一订阅者所属的第一数据消费方之后,进一步包括:接收所述第一数据消费方返回的、针对所述目标数据的订阅成功通知;在确定出每一个所述第一订阅者均已返回针对所述目标数据的订阅成功通知时,将所述目标数据从所述缓存区中删除。详细地,数据盒子可以采用kafka中间件进行缓存数据。本发明实施例中,数据盒子发布监听到的数据,按照数据服务的订阅关系,将缓存区的数据分发给订阅者(即消费者)去消费。订阅者消费数据后,可把数据处理结果反馈给数据盒子。数据盒子得知数据被成功消费后,即可将对应的数据从缓存区删除,较少这部分数据的资源占用。在本发明一个实施例中,在监听到所述目标数据时,进一步包括:记录当前时间为所述目标数据的时间戳;针对所述缓存区中缓存的每一个数据,均执行:根据当前数据的时间戳,实时监测所述当前数据的缓存持续时间是否达到预设时长,若是,将所述当前数据从所述缓存区中删除。本发明实施例中,缓存区内长期未被处理的数据超出设定的期限时,可被认定为是死数据,数据盒子可将死数据自动删除。本发明实施例中,数据盒子可通过消息队列来接收及分发数据,以提供数据时序性保障,确保数据先来先到,进而可保证消费端按顺序消费数据,确保准确消费数据。如图2所示,本发明实施例提供了另一种基于混合云的数据交换方法,可以包括以下步骤:步骤201:在数据盒子中设置订阅机制,并执行步骤202和步骤210。步骤202:数据盒子根据订阅机制,将一数据提供方提供的一数据接口注册为一数据服务,配置该数据服务的第一配置信息,第一配置信息包括来源云标识、来源系统标识及数据主体。步骤203:数据盒子根据订阅机制,将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置该订阅者的第二配置信息,第二配置信息包括来源云标识、来源系统标识及订阅的数据服务。步骤204:数据盒子在监听到任一第一数据提供方提供任一目标数据时,采用kafka中间件将目标数据缓存至预设的缓存区,并记录当前时间为目标数据的时间戳。步骤205:数据盒子根据配置的各个第一配置信息和各个第二配置信息,确定可订阅目标数据的每一个第一订阅者。步骤206:数据盒子针对每一个第一订阅者均执行:根据当前第一订阅者的第二配置信息,确定针对当前第一订阅者所属的第一数据消费方。步骤207:数据盒子将目标数据发送给第一数据消费方。步骤208:第一数据消费方消费目标数据,将针对目标数据的订阅成功通知返回给数据盒子。步骤209:数据盒子在确定出每一个第一订阅者均已返回针对目标数据的订阅成功通知时,将目标数据从缓存区中删除,并结束当前流程。步骤210:数据盒子针对缓存区中缓存的每一个数据,均执行:根据当前数据的时间戳,实时监测当前数据的缓存持续时间是否达到预设时长,若是,将当前数据从缓存区中删除。如图3所示,本发明实施例提供了一种基于混合云的数据交换装置,可以包括:数据服务发布模块301,用于根据预设的订阅机制,将一数据提供方提供的一数据接口注册为一数据服务,配置该数据服务的第一配置信息,所述第一配置信息包括来源云标识、来源系统标识及数据主体;数据服务订阅模块302,用于根据所述订阅机制,将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置该订阅者的第二配置信息,所述第二配置信息包括来源云标识、来源系统标识及订阅的数据服务;数据监听模块303,用于在监听到任一第一数据提供方提供任一目标数据时,触发数据发布模块304;所述数据发布模块304,用于根据配置的各个所述第一配置信息和各个所述第二配置信息,确定可订阅所述目标数据的每一个第一订阅者;数据消费模块305,用于针对每一个所述第一订阅者均执行:根据当前第一订阅者的第二配置信息,将所述目标数据发送给所述当前第一订阅者所属的第一数据消费方。本发明实施例提供了基于混合云的数据交换装置,不仅配置简单、安全性高、可靠性强、设计合理,而且具有数据传输安全,数据交换效率高等优点。本发明实施例改变了现有的混合云之间低效、人工、死板的数据交换模式,实现了公有云下的应用系统与私有云下的应用系统之间实时数据交换,满足了混合云企业用户实时共享信息的需求,具有良好的推广价值。在本发明一个实施例中,所述数据监听模块303,用于将所述目标数据缓存至预设的缓存区;所述数据消费模块305,用于接收所述第一数据消费方返回的、针对所述目标数据的订阅成功通知;在确定出每一个所述第一订阅者均已返回针对所述目标数据的订阅成功通知时,将所述目标数据从所述缓存区中删除。在本发明一个实施例中,所述数据监听模块303,用于在监听到所述目标数据时,记录当前时间为所述目标数据的时间戳;所述数据消费模块305,用于针对所述缓存区中缓存的每一个数据,均执行:根据当前数据的时间戳,实时监测所述当前数据的缓存持续时间是否达到预设时长,若是,将所述当前数据从所述缓存区中删除。在本发明一个实施例中,所述数据监听模块303,用于采用kafka中间件将所述目标数据缓存至预设的缓存区。上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。本发明实施例还提供了一种计算机可读介质,存储用于使一计算机执行如本文所述的基于混合云的数据交换方法的指令。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。综上所述,本发明的实施例具有至少如下有益效果:1、本发明实施例中,根据订阅机制将一数据提供方提供的一数据接口注册为一数据服务,配置其第一配置信息包括来源云标识、来源系统标识及数据主体;根据订阅机制将一数据消费方提供的一数据消费逻辑接口注册为一订阅者,配置其第二配置信息包括来源云标识、来源系统标识及订阅的数据服务;在监听到任一第一数据提供方提供任一目标数据时,根据配置的各个第一配置信息和各个第二配置信息,确定可订阅目标数据的每一个订阅者;针对确定出的各个订阅者均执行:根据该订阅者的第二配置信息,将目标数据发送给该订阅者所属的数据消费方。本发明实施例能够提高数据交换效率。与现有技术相比,本发明实施例提供的数据交换方法安全可靠,实时高效,满足了混合云企业用户数据交换的需求,具有良好的推广价值。2、本发明实施例可借助数据的发布订阅机制,实现不同云之间的数据交换。与现有技术相比,本发明实施例提供的这一数据交换方法安全可靠,实时高效,满足了混合云企业用户数据交换的需求,具有良好的推广价值。3、本发明实施例提供了基于混合云的数据交换装置,不仅配置简单、安全性高、可靠性强、设计合理,而且具有数据传输安全,数据交换效率高等优点。本发明实施例改变了现有的混合云之间低效、人工、死板的数据交换模式,实现了公有云下的应用系统与私有云下的应用系统之间实时数据交换,满足了混合云企业用户实时共享信息的需求,具有良好的推广价值。需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,fpga或asic)来完成相应操作。硬件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1