CN115776491A - 数据共享方法和数据共享系统 - Google Patents
数据共享方法和数据共享系统 Download PDFInfo
- Publication number
- CN115776491A CN115776491A CN202211474612.5A CN202211474612A CN115776491A CN 115776491 A CN115776491 A CN 115776491A CN 202211474612 A CN202211474612 A CN 202211474612A CN 115776491 A CN115776491 A CN 115776491A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- target
- service node
- service data
- 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
技术领域
本公开涉及计算机技术领域,尤其涉及一种数据共享方法和数据共享系统。
背景技术
随着智慧城市的推进和数据经济产业的持续深入发展,加快了多方之间的数据交换共享。而要让智慧城市运营起来,最主要的是通过数据交换共享,加强多部门之间的联动协作。
因此,如何实现多部门之间数据的共享应用,是非常重要的。
发明内容
本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
本公开提出一种数据共享方法和数据共享系统,以通过在感知到第二服务节点中的第一数据库中存在发生更新和/或新增的目标业务数据时,驱动对发生更新和/或新增目标业务数据进行汇聚,从而对汇聚至第二数据库中的目标业务数据进行及时且有效地推送,可以实现对目标业务数据进行共享,可以实现业务数据共享的灵活性、及时性和有效性。
本公开第一方面实施例提出了一种数据共享方法,应用于分布式集群中的第一服务节点,方法包括:
对所述分布式集群中的第二服务节点中的第一数据库进行感知,以感知所述第一数据库中是否存在目标业务数据,其中,所述目标业务数据为所述第一数据库中发生更新的业务数据和/或新增的业务数据;
对所述第二服务节点进行环境检测,以得到第一环境检测信息,其中,所述第一环境检测信息用于指示所述第二服务节点的第一网络状态和所述第一数据库的第一运行状态;
响应于所述第一网络状态为在线状态、所述第一运行状态为非异常状态、且所述第一数据库中存在所述目标业务数据,则从所述第一数据库中获取所述目标业务数据,并将所述目标业务数据汇聚至所述第一服务节点中的第二数据库;
向所述分布式集群中的第三服务节点推送所述第二数据库中存储的所述目标业务数据,以实现所述目标业务数据的共享。
可选地,所述向所述分布式集群中的第三服务节点推送所述第二数据库中存储的所述目标业务数据,包括:对所述第三服务节点进行环境检测,以得到第二环境检测信息,其中,所述第二环境检测信息用于指示所述第三服务节点的第二网络状态和所述第三服务节点中第三数据库的第二运行状态;响应于所述第二网络状态为在线状态,且所述第二运行状态为非异常状态,向所述第三服务节点推送所述第二数据库中存储的所述目标业务数据。
可选地,所述方法还包括:响应于所述第二网络状态为掉线状态,和/或,所述第二运行状态为异常状态,将所述目标业务数据缓存至所述第一服务节点的目标内存中;开启定时器;响应于所述定时器的运行时长等于设定时长,重新对所述第三服务节点进行环境检测,以在重新检测的所述第三服务节点的环境检测信息指示所述第三服务节点的网络状态为在线状态,且所述第三数据库的运行状态为非异常状态的情况下,向所述第三服务节点推送所述目标内存中缓存的目标业务数据。
可选地,所述方法还包括:响应于所述第二网络状态为掉线状态,和/或,所述第二运行状态为异常状态,按照设定周期,周期性地对所述第三服务节点进行环境检测,以在重新检测的所述第三服务节点的环境检测信息指示所述第三服务节点的网络状态为在线状态,且所述第三数据库的运行状态为非异常状态的情况下,向所述第三服务节点推送所述第二数据库中存储的所述目标业务数据。
可选地,所述将所述目标业务数据汇聚至所述第一服务节点中的第二数据库,包括:获取所述目标业务数据对应的参考文件,其中,所述参考文件中包含参考业务数据;将所述目标业务数据与所述参考文件中的参考业务数据进行比对,以确定所述目标业务数据中是否存在不同于所述参考业务数据的差异数据;响应于所述目标业务数据未存在所述差异数据,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库。
可选地,所述方法还包括:响应于所述目标业务数据存在所述差异数据,根据所述差异数据生成修改提示信息,其中,所述修改提示信息,用于提示对所述目标业务数据中的所述差异数据进行修改;展示所述修改提示信息;响应于对所述目标业务数据的更新操作,对所述目标业务数据中的所述差异数据进行更新,以得到更新后的目标业务数据;将所述更新后的目标业务数据汇聚至所述第一服务节点中的第二数据库。
可选地,所述方法还包括:响应于所述目标业务数据存在所述差异数据,根据所述差异数据生成修改指示信息,其中,所述修改指示信息用于指示所述目标业务数据中的所述差异数据,以及指示对所述差异数据进行修改;向指定设备发送所述修改指示信息;接收所述指定设备响应于所述修改指示信息所发送的更新信息,并根据所述更新信息对所述目标业务数据中的所述差异数据进行更新,以得到更新后的目标业务数据;将所述更新后的目标业务数据汇聚至所述第一服务节点中的第二数据库。
可选地,所述将所述目标业务数据汇聚至所述第一服务节点中的第二数据库,包括:获取所述目标业务数据的属性信息;在所述属性信息指示所述目标业务数据无条件共享的情况下,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库;在所述属性信息指示所述目标业务数据有条件共享的情况下,获取所述目标业务数据的授权信息;在所述授权信息指示所述目标业务数据授权于所述第三服务节点的情况下,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库。
可选地,所述方法还包括:在所述授权信息指示所述目标业务数据未授权于所述第三服务节点的情况下,向所述第二服务节点发送授权提示信息;其中,所述授权提示信息,用于提示所述第二服务节点是否对所述第三服务节点授权所述目标业务数据;接收所述第二服务节点发送的授权指示信息;响应于所述授权指示信息指示对所述第三服务节点授权所述目标业务数据,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库。
可选地,所述对分布式集群中的第二服务节点中的第一数据库进行感知,以感知所述第一数据库中是否存在目标业务数据,包括:获取所述分布式集群中的第二服务节点中的第一数据库的日志文件,并对日志文件进行解析,以确定所述第一数据库中是否存在目标业务数据;或,从所述分布式集群中的第二服务节点中的第一数据库中,确定是否存在与目标事件关联的业务数据,响应于所述第一数据库中存在与所述目标事件关联的业务数据,确定所述第一数据库中存在所述目标业务数据。
可选地,所述方法还包括:响应于向所述第三服务节点推送所述第二数据库中所述目标业务数据中的第一业务数据,对所述第二数据库中所述第一业务数据进行标记;从所述第二数据库中的所述目标业务数据中,获取未带标记的第二业务数据;向所述第三服务节点推送所述第二业务数据。
本公开第二方面实施例提出了一种数据共享系统,包括分布式集群,其中,所述分布式集群中包括第一服务节点、第二服务节点和第三服务节点:
其中,所述第一服务节点用于执行本公开上述第一方面所述的数据共享方法;
所述第二服务节点用于提供目标业务数据;其中,所述目标业务数据为所述第二服务节点中的第一数据库中发生更新的业务数据和/或新增的业务数据;
所述第三服务节点用于接收所述目标业务数据。
本公开第三方面实施例提出了一种数据共享装置,装置包括:
感知模块,用于对所述分布式集群中的第二服务节点中的第一数据库进行感知,以感知所述第一数据库中是否存在目标业务数据,其中,所述目标业务数据为所述第一数据库中发生更新的业务数据和/或新增的业务数据;
检测模块,用于对所述第二服务节点进行环境检测,以得到第一环境检测信息,其中,所述第一环境检测信息用于指示所述第二服务节点的第一网络状态和所述第一数据库的第一运行状态;
第一处理模块,用于响应于所述第一网络状态为在线状态、所述第一运行状态为非异常状态、且所述第一数据库中存在所述目标业务数据,则从所述第一数据库中获取所述目标业务数据,并将所述目标业务数据汇聚至所述第一服务节点中的第二数据库;
第一推送模块,用于向所述分布式集群中的第三服务节点推送所述第二数据库中存储的所述目标业务数据,以实现所述目标业务数据的共享。
本公开第四方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的数据共享方法。
本公开第五方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的数据共享方法。
本公开第六方面实施例提出了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开上述第一方面所述的数据存储方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据,其中,目标业务数据为第一数据库中发生更新的业务数据和/或新增的业务数据;对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态;响应于第一网络状态为在线状态、第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据,并将目标业务数据汇聚至第一服务节点中的第二数据库;向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。由此,通过在感知到第二服务节点中的第一数据库中存在发生更新和/或新增的目标业务数据时,驱动对发生更新和/或新增目标业务数据进行汇聚,从而对汇聚至第二数据库中的目标业务数据进行及时且有效地推送,可以实现对目标业务数据进行共享,可以实现业务数据共享的灵活性、及时性和有效性。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为信息资源共享交换平台的组成架构示意图;
图2为数据共享交换实施流程设计示意图;
图3为本公开实施例一所提供的数据共享方法的流程示意图;
图4为本公开实施例二所提供的数据共享方法的流程示意图;
图5为本公开实施例三所提供的数据共享方法的流程示意图;
图6为本公开实施例四所提供的数据共享方法的流程示意图;
图7为本公开所提供的数据汇聚流程示意图;
图8是本公开第五实施例所提供的一种数据共享装置的结构示意图;
图9示出了适于用来实现本发明实施方式的示例性电子设备的框图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
目前,多部门之间的数据共享是基于数据共享交换平台(又可以称为信息资源共享交换平台)实现的。通过建立规范有序的信息交换和共享机制,可以实现部门间数据的共享应用。
其中,信息资源共享交换平台由中心数据交换系统、中心数据交换服务管理系统、部门交换节点服务器软件、部门桥接服务管理子系统和部门交换管理客户端组成,比如,信息资源共享交换平台的组成架构可如图1中所示。
其中,中心数据交换服务管理系统用于支持大数据中心对数据资源共享交换平台的可视化运行监控管理、交换流程管理、服务管理、资源管理、数据跟踪、日志管理、统计分析、审计管理和授权管理等,通过大数据中心授权可为部门用户提供流程编排、数据跟踪、交换规则审计、交换资源目录、交换服务目录等服务。
信息资源共享交换平台可以包括数据层、应用支撑层、业务应用层和访问层。
其中,数据层是信息资源共享交换平台建设的重要基础成果,包括基础信息库、监控管理信息库、交换管理信息库、服务信息库、资源管理库、日志管理库、审计管理库、查询统计库、系统管理库,以支撑信息资源共享交换平台。
应用支撑层作为支撑业务应用系统的中间层,包括图表展示服务、操作系统、数据库管理软件、应用服务器、OFFICE中间件。
业务应用层包括基础信息、监控管理信息、交换管理信息、服务信息、资源管理、日志管理、审计管理,查询统计、系统管理,以基于数据层提供的数据提供业务应用服务。
访问层,部门用户可以通过Web(World Wide Web,全球广域网,又称为万维网)浏览器进行访问。
信息资源共享交换平台采用的技术路线如下:
(1)服务端和客户端开发采用Java技术体系
信息资源共享交换平台的服务端和客户端的软件开发均采用Java技术体系,保持系统体系的一致性。
(2)服务端采用开源数据库和轻量级服务器软件
服务端数据库系统可采用数据库oracle,系统部署采用轻量级开源服务器软件Tomcat。
(3)网络访问技术
构建系统内部的指定外网,只有通过指定外网才能登录服务端系统,进行日常数据共享交换工作处理,同时保持系统后台数据的一致性。
信息资源共享交换平台采用B/S(Browser/Server,浏览器/服务器)模式,各部门之间数据共享交换的实施流程设计如图2中所示,其中,在数据需求方提出数据共享申请之后,需要通过项目负责人、处室负责人、部门负责人的层层申请审核;在部门负责人审核通过后,项目负责人与数据需求方和数据提供方沟通数据共享交换的技术要求和数据规范,其中,数据提供方设定数据提供方式、数据格式和交换频率等,数据需求方设定数据接收方式和数据整合规则等;在上述沟通通过的情况下,项目负责人实施数据共享交换工作,其中,数据提供方提供数据访问信息,数据需求方接收数据访问信息;数据需求方在接收数据访问信息之后,可以对共享交换的实施结果进行反馈和确认。
综上,上述各部门之间数据共享交换过程操作繁杂,增加了相关工作人员的处理负担,且数据需求方不能及时地获取所需的数据资源,无法保证数据资源获取的及时性和有效性。
因此针对上述存在的问题,本公开提出一种数据共享方法和数据共享系统。
下面参考附图描述本公开实施例的数据共享方法和数据共享系统。
图3为本公开实施例一所提供的数据共享方法的流程示意图。
本公开实施例的数据共享方法可以应用于分布式集群中的第一服务节点。
如图3所示,该数据共享方法可以包括以下步骤:
步骤301,对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据。
其中,目标业务数据可以为第一数据库中发生更新的业务数据和/或新增的业务数据。
在本公开实施例中,第二服务节点中可以设置有第一数据库,且第一数据库可以用于存储业务数据。其中,第一数据库比如可以为SQL server(Structured QueryLanguage server)数据库、Oracle数据库等,本公开对此不做限制。
在本公开实施例中,可以对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据。
作为一种可能的实现方式,可以获取分布式集群中的第二服务节点中的第一数据库的日志文件,并对日志文件进行解析,以确定第一数据库中是否存在目标业务数据。
比如,以第一数据库为SQL server数据库进行示例,可以从分布式集群中的第二服务节点中的SQL server数据库中获取日志文件(比如事物日志),并对获取到的事物日志进行解析,从而可以确定SQL server数据库中是否存在发生更新的业务数据和/或新增的业务数据,即确定SQL server数据库中是否存在目标业务数据。
作为另一种可能的实现方式,可以从分布式集群中的第二服务节点中的第一数据库中,确定是否存在与目标事件关联的业务数据,响应于第一数据库中存在与目标事件关联的业务数据,确定第一数据库中存在目标业务数据。
其中,目标事件比如可以为数据增量事件,其中,数据增量事件比如可以为数据更新(update)事件、数据新增(insert)事件等,本公开对此不做限制。
作为一种示例,可以预先定义用于监听分布式集群中的第二服务节点中的第一数据库的触发器,当触发器监听到第一数据库中的目标事件时,即可确定第一数据库中存在与目标事件关联的业务数据,从而可以确定第一数据库中存在目标业务数据。
作为再一种可能的实现方式,可以通过变更数据获取工具CDC(change datacapture)对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据。
具体地,变更数据获取工具CDC可以监测和捕获分布式集群中的第二服务节点中的第一数据库中业务数据的变化,且可以记录第一数据库中业务数据的变化信息,并将变化信息传输至消息队列中间件,从而在第一服务节点订阅该消息队列中间件的情况下,可以从该消息队列中间件中获取业务数据的变化信息,并根据业务数据的变化信息,确定业务数据是否发生更新,和/或,确定是否新增业务数据;在确定业务数据发生更新和/或新增业务数据的情况下,可以确定第一数据库中存在目标业务数据。
步骤302,对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态。
在本公开实施例中,第二服务节点的第一网络状态可以包括在线状态和掉线状态。
在本公开实施例中,第一数据库的第一运行状态可以用于指示第一数据库是否可以正常读写、更新、删除等,其中,第一运行状态可以包括异常状态和非异常状态。比如,在非异常状态下,第一数据库可以正常读写、更新、删除等,而在异常状态下,第一数据库可能无法正常读写、更新或删除等。
在本公开实施例中,可以对第二服务节点进行环境检测,从而可以得到第一环境检测信息。其中,第一环境检测信息可以用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态。
需要说明的是,本公开对步骤301和步骤302的执行时序不做限制,也就是说,步骤301可以与步骤302并列执行,或者步骤302也可以在步骤301之前执行,本公开仅在步骤301发生在步骤302之前进行示例。
步骤303,响应于第一网络状态为在线状态、且第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据,并将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例中,分布式集群中的第一服务节点可以设置有第二数据库,其中,第二数据库比如可以为SQL server数据库、Oracle数据库等,本公开对此不做限制。
在本公开实施例中,当第一网络状态为在线状态、且第一运行状态为非异常状态、且第一数据库中存在目标业务数据时,则可以从第二服务节点中的第一数据库中获取目标业务数据,并可以将目标业务数据汇聚至第一服务节点中的第二数据库中。
需要说明的是,可以实时从第一数据库中获取目标业务数据,或者也可以在设定时间从第一数据库中获取目标业务数据,本公开对此不做限制。
其中,设定时间为预先设定的时刻,比如可以为每日7:00、每周星期一8:30、每月一号的3:20等。
需要说明的是,上述对设定时间的示例仅是示例性说明,在实际应用中,可以根据需要对设定时间进行设置,本公开对此不做限制。
作为一种可能的实现方式,设定时间可以根据数据提供方(比如第二服务节点)或数据需求方(比如第三服务节点)的实际需求进行设定。
步骤304,向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。
在本公开实施例中,第一服务节点可以向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,从而可以实现目标业务数据的共享。
其中,可以一次性地将所有的目标业务数据推送至第三服务节点,或者,在目标业务数据的数据量较大时,也可以分批次地将目标业务数据推送至第三服务节点。
作为一种可能的实现方式,当向第三服务节点推送第二数据库中目标业务数据时,若已向第三服务节点推送目标业务数据中的第一业务数据时,则可以对第二数据库中的第一业务数据进行标记,比如,可以标记第一业务数据已共享;从而在后续向第三服务节点推送数据时,可以从第二数据库中的目标业务数据中,获取未带标记的第二业务数据,并可以向第三服务节点推送第二业务数据,以避免业务数据的重复发送。
由此,对第二数据库中的目标业务数据进行标记,可以确定目标业务数据的共享状态,从而可以根据业务数据的共享状态,从第二数据库中确定未共享的目标业务数据,进而可以向第三服务节点推送还未共享的目标业务数据。一方面,可以避免向第三服务节点推送已共享的目标业务数据,减少数据推送过程中的资源浪费;另一方面,在目标业务数据的推送过程中,如果第一服务节点宕机,或第一服务节点中用于推送目标业务数据的实例发生宕机或迁移,则在实例重启后,可以通过重启后的实例从第二数据库中获取未带标记的业务数据,以避免在设备宕机或实例迁移时从第二数据库中获取已共享的业务数据(即携带标记的业务数据),而导致业务数据重复推送的情况,从而可以提升业务数据的推送效率,以及降低资源占用,并可以达到断点续传的目的。
作为一种示例,以第一服务节点为数据资源共享交换平台,第二服务节点为数据提供方对应的前置机,第三服务节点为数据接收方(或数据需求方)对应的前置机进行示例性说明,数据资源共享交换平台可以对数据提供方对应的前置机上的第一数据库进行感知,以感知第一数据库中是否存在发生更新和/或新增的目标业务数据;且数据资源共享交换平台可以对数据提供方对应的前置机进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息可以用于指示数据提供方的前置机的第一网络状态和第一数据库的第一运行状态;当第一网络状态为在线状态、且第一运行状态为非异常状态、且第一数据库中存在目标业务数据,即数据提供方对应的前置机在线,数据提供方对应的前置机中的第一数据库的第一运行状态为非异常状态,且第一数据库中存在发生更新和/或新增的目标业务数据时,则可以从第一数据库中获取目标业务数据,并可以将目标业务数据汇聚至数据资源共享交换平台中的第二数据库中;并可以向数据接收方对应的前置机推送第二数据库中存储的目标业务数据,从而可以实现目标业务数据的共享。
本公开实施例的数据共享方法,通过对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据,其中,目标业务数据为第一数据库中发生更新的业务数据和/或新增的业务数据;对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态;响应于第一网络状态为在线状态、第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据,并将目标业务数据汇聚至第一服务节点中的第二数据库;向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。由此,通过在感知到第二服务节点中的第一数据库中存在发生更新和/或新增的目标业务数据时,驱动对发生更新和/或新增目标业务数据进行汇聚,从而对汇聚至第二数据库中的目标业务数据进行及时且有效地推送,可以实现对目标业务数据进行共享,可以实现业务数据共享的灵活性、及时性和有效性。
为了清楚说明本公开上述实施例中,是如何向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据的,本公开还提出一种数据共享方法。
图4为本公开实施例二所提供的数据共享方法的流程示意图。
如图4所示,该数据共享方法可以包括以下步骤:
步骤401,对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据。
步骤402,对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态。
步骤403,响应于第一网络状态为在线状态、且第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据,并将目标业务数据汇聚至第一服务节点中的第二数据库。
步骤401至403的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
步骤404,对第三服务节点进行环境检测,以得到第二环境检测信息,其中,第二环境检测信息用于指示第三服务节点的第二网络状态和第三服务节点中第三数据库的第二运行状态。
在本公开实施例中,第三服务节点的第一网络状态可以包括在线状态和掉线状态。
在本公开实施例中,第三数据库的第二运行状态可以包括异常状态和非异常状态。
在本公开实施例中,可以对第三服务节点进行环境检测,从而可以得到第二环境检测信息。其中,第二环境检测信息可以用于指示第三服务节点的第二网络状态和第三服务节点中的第三数据库的第二运行状态。
步骤405,响应于第二网络状态为在线状态,且第二运行状态为非异常状态,向第三服务节点推送第二数据库中存储的目标业务数据。
在本公开实施例中,当第三服务节点的第二网络状态为在线状态,且第三服务节点中的第三数据库的第二运行状态为非异常状态时,可以向第三服务节点推送第二数据库中存储的目标业务数据。
可以理解的是,实际应用时,还可能存在第三服务节点的第二网络状态为掉线状态,和/或,第三服务节点中第三数据库的第二运行状态为异常状态的情况。
作为本公开实施例的一种可能的实现方式,当第二网络状态为掉线状态,和/或,第二运行状态为异常状态时,可以将目标业务数据缓存至第一服务节点的目标内存中,并可以同时或同步开启定时器;当定时器的运行时长等于设定时长时,可以重新对第三服务节点进行环境检测,以在重新检测的第三服务节点的环境检测信息指示第三服务节点的网络状态为在线状态,且第三数据库的运行状态为非异常状态的情况下,可以向第三服务节点推送目标内存中缓存的目标业务数据。
在本公开实施例中,设定时长可以为预先设定的时长,比如可以为10s(second,秒)、1min(minute,分钟)、2分钟等,本公开对此不做限制。
综上,在第二网络状态为掉线状态,和/或,第二运行状态为异常状态时,对目标业务数据做定向存储,一方面,可以预防目标业务数据的丢失,另一方面,在重新对第三服务节点进行环境检测,且重新检测的第三服务节点的环境检测信息指示第三服务节点的网络状态为在线状态,且第三数据库的运行状态为非异常状态的情况下,可以精准且方便地从目标内存中获取还未向第三服务节点推送的目标业务数据。
作为本公开实施例的另一种可能的实现方式,当第二网络状态为掉线状态,和/或,第二运行状态为异常状态时,还可以按照设定周期,周期性地对第三服务节点进行环境检测,以在重新检测的第三服务节点的环境检测信息指示第三服务节点的网络状态为在线状态,且第三数据库的运行状态为非异常状态的情况下,向第三服务节点推送第二数据库中存储的目标业务数据。
在本公开实施例中,设定周期可以为预先设定的周期,比如可以为10s、20s、1min等,本公开对此不做限制。
综上,在第二网络状态为掉线状态,和/或,第二运行状态为异常状态时,周期性地对第三服务节点进行环境检测,直至在重新检测的第三服务节点的环境检测信息指示第三服务节点的网络状态为在线状态,且第三数据库的运行状态为非异常状态的情况下,可以向第三服务节点推送第二数据库中存储的目标业务数据,以避免不能有效向第三服务节点推送目标业务数据情况的发生,即提升业务数据推送的及时性和有效性。
本公开实施例的数据共享方法,通过对第三服务节点进行环境检测,以得到第二环境检测信息,其中,第二环境检测信息用于指示第三服务节点的第二网络状态和第三服务节点中第三数据库的第二运行状态;响应于第二网络状态为在线状态,且第二运行状态为非异常状态,向第三服务节点推送第二数据库中存储的目标业务数据。由此,在向第三服务节点推送第二数据库中存储的目标业务数据之前,先对第三服务节点进行环境检测,从而可以在确定第三服务节点的网络状态在线,第三服务节点中的第三数据库运行正常的情况下,再向第三服务节点推送目标业务数据,以避免第三服务节点无法接收到目标业务数据的情况发生,和/或,避免第三服务节点接收到目标业务数据,而无法存储目标业务数据的情况发生,从而实现目标业务数据的有效推送。
为了清楚说明本公开任一实施例中,是如何将目标业务数据汇聚至第一服务节点中的第二数据库中的,本公开还提出一种数据共享方法。
图5为本公开实施例三所提供的数据共享方法的流程示意图。
如图5所示,该数据共享方法可以包括以下步骤:
步骤501,对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据。
步骤502,对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态。
步骤503,响应于第一网络状态为在线状态、且第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据。
步骤501至503的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
步骤504,获取目标业务数据对应的参考文件,其中,参考文件中包含参考业务数据。
在本公开实施例中,可以获取目标业务数据对应的参考文件,其中,参考文件中可以包含参考业务数据,其中,参考业务数据包含格式正确且内容正确的业务数据。
步骤505,将目标业务数据与参考文件中的参考业务数据进行比对,以确定目标业务数据中是否存在不同于参考业务数据的差异数据。
在本公开实施例中,可以将目标业务数据与参考文件中的参考业务数据进行比对,从而可以确定目标业务数据中是否存在不同于参考业务数据的差异数据。
步骤506,响应于目标业务数据未存在差异数据,将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例中,当目标业务数据中未存在差异数据时,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
需要说明的是,也可以通过人工对目标业务数据进行审核,以确定目标业务数据是否内容无误,在人工确定目标业务数据的内容无误的情况下,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
可以理解的是,实际应用时,还可能存在目标业务数据中存在差异数据的情况。因此,在本公开实施例的一种可能的实现方式中,当目标业务数据中存在差异数据时,可以根据差异数据生成修改提示信息,其中,修改提示信息,可以用于提示对目标业务数据中的差异数据进行修改;并可以展示修改提示信息;响应于对目标业务数据的更新操作,可以对目标业务数据中的差异数据进行更新,以得到更新后的目标业务数据;从而可以将更新后的目标业务数据汇聚至第一服务节点中的第二数据库。
作为一种示例,当目标业务数据存在差异数据时,第一服务节点可以根据差异数据生成修改提示信息,其中,修改提示信息可以用于提示第一服务节点侧的相关人员对目标业务数据中的差异数据进行修改;并可以向第一服务节点侧的相关人员展示该修改提示信息;在第一服务节点侧的相关人员根据修改提示信息对目标业务数据进行更新之后,第一服务节点可以响应于对该目标业务数据的更新操作,对目标业务数据中的差异数据进行更新,得到更新后的目标业务数据,从而可以将更新后的目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例的另一种可能的实现方式中,当目标业务数据存在差异数据时,还可以根据差异数据生成修改指示信息,其中,修改指示信息可以用于指示目标业务数据中的差异数据,以及指示对差异数据进行修改;并可以向指定设备发送该修改指示信息;且可以接收指定设备响应于修改指示信息所发送的更新信息,并可以根据更新信息对目标业务数据中的差异数据进行更新,以得到更新后的目标业务数据;从而将更新后的目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例中,指定设备可以为预先指定的设备。
作为一种示例,当目标业务数据中存在差异数据时,第一服务节点可以根据差异数据生成修改指示信息,其中,修改指示信息可以用于指示目标业务数据中的差异数据以及指示对差异数据进行修改;第一服务节点可以向指定设备发送该修改指示信息;在指定设备的对接人员确认可以根据该修改指示信息对目标业务数据中的差异数据进行修改之后,指定设备可以向第一服务节点发送该对接人员对目标业务数据中的差异数据进行更新的更新信息,相对应的,第一服务节点可以接收该更新信息,并可以根据更新信息对目标业务数据中的差异数据进行更新,可以得到更新后的目标业务数据;从而可以将更新后的目标业务数据汇聚至第一服务节点中的第二数据库中。
比如,上述对接人员可以为数据提供方,指定设备可以为第二服务节点。
由此,在将目标业务数据汇聚至第一服务节点中的第二数据库之前,对目标业务数据中的差异数据进行更新,可以提升汇聚至第二数据库中的目标业务数据的正确性,且可以使得使用该目标业务数据的数据接收方能够获取到内容正确的业务数据,从而数据接收方可以解读并使用内容正确的业务数据。
步骤507,向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。
步骤507的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
本公开实施例的数据共享方法,通过获取目标业务数据对应的参考文件,其中,参考文件中包含参考业务数据;将目标业务数据与参考文件中的参考业务数据进行比对,以确定目标业务数据中是否存在不同于参考业务数据的差异数据;响应于目标业务数据未存在差异数据,将目标业务数据汇聚至第一服务节点中的第二数据库。由此,在目标业务数据汇聚至第一服务节点中的第二数据库之前,可以实现对目标业务数据进行有效检测,从而可以提升汇聚至第二数据库中的业务数据的正确性。
作为本公开的一种可能的实现方式,为了清楚说明本公开任一实施例中,是如何将目标业务数据汇聚至第一服务节点中的第二数据库的,本公开还提出一种数据共享方法。
图6为本公开实施例四所提供的数据共享方法的流程示意图。
如图6所示,该数据共享方法可以包括以下步骤:
步骤601,对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据。
步骤602,对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态。
步骤603,响应于第一网络状态为在线状态、且第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据。
步骤601至603的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
步骤604,获取目标业务数据的属性信息。
在本公开实施例中,目标业务数据的属性信息可以用于指示目标业务员数据是否可以共享,其中,属性信息比如可以包括有条件共享、无条件共享等,本公开对此不做限制。
在本公开实施例中,可以获取目标业务数据的属性信息。
步骤605,在属性信息指示目标业务数据无条件共享的情况下,将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例中,在属性信息指示目标业务数据无条件共享的情况下,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
步骤606,在属性信息指示目标业务数据有条件共享的情况下,获取目标业务数据的授权信息。
在本公开实施例中,目标业务数据的授权信息可以用于指示目标业务数据是否可以授权于第三服务节点。
在本公开实施例中,在属性信息指示目标业务数据有条件共享的情况下,可以获取目标业务数据的授权信息。
步骤607,在授权信息指示目标业务数据授权于第三服务节点的情况下,将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例中,当授权信息指示目标业务数据授权于第三服务节点时,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
作为本公开的一种可能的实现方式,当授权信息指示目标业务数据未授权于第三服务节点时,可以向第二服务节点发送授权提示信息,并接收第二服务节点发送的授权指示信息,其中,授权提示信息,可以用于提示第二服务节点是否对第三服务节点授权目标业务数据;授权指示信息,可以用于指示是否对第三服务节点授权目标业务数据。当授权指示信息指示对第三服务节点授权目标业务数据时,可以将目标业务数据汇聚至第一服务节点中的第二数据库。而当授权指示信息指示未对第三服务节点授权目标业务数据时,可以无需将目标业务数据汇聚至第一服务节点中的第二数据库。
需要说明的是,本公开对步骤605和步骤606-607的执行时序不做限制,也就是说,步骤605可以与步骤606-607并列执行,或者,步骤605也可以在步骤606-607之后执行,本公开对此不做限制。
步骤608,向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。
步骤608的执行过程可以参见本公开任一实施例的执行过程,在此不做赘述。
作为一种示例,以数据共享流程如图7中所示进行示例,其中,数据资源共享交换平台,在本公开中记为第一服务节点,数据共享流程可以包括以下几个步骤:
(一)感知存在发生更新和/或新增的目标业务数据
可选地,利用SQL Server,Oracle和其他系统提供的变更数据获取工具CDC对数据提供方对应的部门前置机(在本公开中记为第二服务节点)上的第一数据库进行感知,以感知是否存在发生更新和/或新增的目标业务数据;
可选地,可以获取SQL Server,Oracle和其他系统中的事务日志,并可以对事物日志进行分析,以确定是否存在发生更新/或新增的目标业务数据;
可选地,可以预先定义用于监听第一数据库的触发器,当触发器监听到第一数据库中的目标事件,即确定第一数据库中存在与目标事件关联的业务数据,从而可以确定第一数据库中存在目标业务数据。
可选地,可以根据时间戳,将数据库或表与历史版本的数据库或表进行对比,以感知是否存在发生更新和/或新增的目标业务数据。
(二)数据汇聚
可选地,可以根据数据提供方提供的设定时间(比如每日9:00,每周周一8:30),第一服务节点从第一数据库中获取发生更新和/或新增的目标业务数据。
在获取目标业务数据之后,可以将目标业务数据汇聚至第一服务节点的第二数据库中。
可选地,可以对目标业务数据进行审核,例如,可以人工审核,或者,也可以机器审核,比如可以获取目标业务数据对应的参考文件,其中,参考文件中包含参考业务数据;将目标业务数据与参考文件中的参考业务数据进行比对,以确定目标业务数据中是否存在不同于参考业务数据的差异数据;响应于目标业务数据未存在差异数据,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
可选地,当目标业务数据存在差异数据时,第一服务节点可以根据差异数据生成修改提示信息,其中,修改提示信息可以用于向相关人员提示目标业务数据中的差异数据进行修改;并可以向相关人员展示该修改提示信息;在相关人员根据修改提示信息对目标业务数据进行更新之后,第一服务节点响应于对该目标业务数据的更新操作,可以对目标业务数据中的差异数据进行更新,得到更新后的目标业务数据,从而可以将更新后的目标业务数据汇聚至第一服务节点中的第二数据库。
可选地,当目标业务数据存在差异数据时,第一服务节点可以根据差异数据生成修改指示信息,其中,修改指示信息可以用于指示目标业务数据中的差异数据以及指示对差异数据进行修改;第一服务节点可以向指定设备(比如数据提供方对应的部门前置机)发送该修改指示信息;在指定设备的对接人员确认可以根据该修改指示信息对目标业务数据中的差异数据进行修改之后,指定设备可以向第一服务节点发送上述对接人员对目标业务数据中的差异数据进行更新的更新信息,相对应的,第一服务节点可以接收该更新信息,并可以根据更新信息对目标业务数据中的差异数据进行更新,可以得到更新后的目标业务数据;从而可以将更新后的目标业务数据汇聚至第一服务节点中的第二数据库中。
可选地,可以获取目标业务数据的属性信息;在属性信息指示目标业务数据无条件共享的情况下,可以将目标业务数据汇聚至第一服务节点中的第二数据库;在属性信息指示目标业务数据有条件共享的情况下,可以获取目标业务数据的授权信息;在授权信息指示目标业务数据授权于第三服务节点的情况下,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
可选地,在授权信息指示目标业务数据未授权于第三服务节点的情况下,可以向第二服务节点发送授权提示信息;其中,授权提示信息,用于提示第二服务节点是否对第三服务节点授权目标业务数据;并可以接收第二服务节点发送的授权指示信息;响应于授权指示信息指示对第三服务节点授权目标业务数据,可以将目标业务数据汇聚至第一服务节点中的第二数据库。
作为一种示例,以对目标业务数据进行人工审核进行示例,如图7中所示,数据提供方对数据提供方对应的前置机中的第一数据库中的数据进行更新,并定义数据的汇聚方式,然后可以向数据资源共享交换平台发送数据汇聚申请;数据资源共享交换平台在感知到存在发生更新和/或新增的目标业务数据的情况下,获取目标业务数据,并确定是否接收到数据汇聚申请;响应于数据资源共享交换平台的对接人员确定接收到数据汇聚申请并登陆数据目标系统(在本公开中记为第二数据库)的操作,可以向数据汇聚技术对接人员发送该数据汇聚申请,数据汇聚技术对接人员可以接收该数据汇聚申请,并对目标业务数据进行审核,在确定目标业务数据无差异的情况下,可以实施数据汇聚;在确定目标业务数据存在差异的情况下,可以将审核结果反馈给数据提供方,以对存在差异的目标业务数据进行修改完善。且数据目录系统可以修改和保存汇聚至数据目录系统中的目标业务数据的汇聚状态和共享状态。
(三)接收数据的环境检测
为加强数据推送的有效性,在推送目标业务数据之前,在感知到目标业务数据存在的情况下,可以触发对申请并授权使用该目标业务数据资源的部门前置机,即数据接收方对应的部门前置机(在本公开中记为第三服务节点)进行环境检测,以得到第二环境检测信息,其中,第二环境检测信息用于指示第三服务节点的第二网络状态和第三服务节点中第三数据库的第二运行状态。
(四)多部门联动数据共享
当第二网络状态为在线状态,且第二运行状态为非异常状态,可以向第三服务节点推送汇聚至第二数据库中存储的目标业务数据。
由此,可以代替传统的轮询机制,并可以保证数据共享交换的及时性,可以及时将已在数据资源共享交换平台落地的数据共享给其他部门。
综上,本公开的数据共享方法,可以提高数据共享及时性,并可以降低各部门前置机性能压力。
本公开实施例的数据共享方法,通过获取目标业务数据的属性信息;在属性信息指示目标业务数据共享的情况下,将目标业务数据汇聚至第一服务节点中的第二数据库;在属性信息指示目标业务数据未共享的情况下,获取目标业务数据的授权信息;在授权信息指示目标业务数据授权于第三服务节点的情况下,将目标业务数据汇聚至第一服务节点中的第二数据库。由此,同时基于目标业务数据的属性信息和授权信息,可以有效对目标业务数据进行汇聚,以及可以避免向未授权的用户推送目标业务数据,提升业务数据的安全性。
为了更加清楚的说明上述实施例,本公开还提供了一种数据共享系统。该数据共享系统可以包括分布式集群,其中,分布式集群中包括第一服务节点、第二服务节点和第三服务节点。
其中,第一服务节点用于执行本公开上述任一实施例所提出的数据共享方法;
第二服务节点用于提供目标业务数据;其中,目标业务数据为第二服务节点中的第一数据库中发生更新的业务数据和/或新增的业务数据;
第三服务节点用于接收目标业务数据。
可选地,可以以可视化的方式通过第一服务节点进行交换控制操作,包括对交换节点、数据源、数据标准、映射、交换任务、调度的管理等。
其中,交换节点之间通过Web Service接口通讯,相互传递命令数据和配置数据,并可以通过HTTP(Hyper Text Transfer Protocol,超文本传输协议)、SFTP(Secret FileTransfer Protocol,安全文件传送协议)、消息等方式传递业务数据。
数据源管理用于确定交换数据的来源和格式,可以通过配置IP(InternetProtocol Address,互联网协议地址)、端口、用户名、密码等信息,调用JDBC(JavaDatabase Connectivity,Java数据库连接)接口抽取数据库元数据,实现对所有接入平台的数据资源进行统一管理。
映射管理可以提供业务源与目标的数据同步、加载规则。
交换任务管理用于管理维护数据交换任务,实现新建、定制任务模板。
调度管理用于定时触发交换任务执行,实现数据的抽取、加密、传输。
可选地,支持定期交换、实时交换的数据交换策略。
其中,定期交换可以通过提前定义计划任务模板,按秒、分钟、小时、天、周、月、年等周期配置任务,数据更新后可以自动触发执行;对于实时性要求高的交换需求,平台通过数据库触发器、时间戳阈值、数据快照比对、日志监听与分析等方式,实时监听数据库变化来触发执行交换流程。
交换过程可以支持断点续传、加密传输、自动压缩、流量控制等多种数据传输功能,以适应不同的网络环境。
与上述图3至图6实施例提供的数据共享方法相对应,本公开还提供一种数据共享装置,由于本公开实施例提供的数据共享装置与上述图3至图6实施例提供的数据共享方法相对应,因此在数据共享方法的实施方式也适用于本公开实施例提供的数据共享装置,在本公开实施例中不再详细描述。
图8是本公开第五实施例所提供的一种数据共享装置的结构示意图。
如图8所示,该数据共享装置800可以包括:感知模块801、检测模块802、第一处理模块803和第一推送模块804。
其中,感知模块801,用于对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据,其中,目标业务数据为第一数据库中发生更新的业务数据和/或新增的业务数据。
检测模块802,用于对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态。
第一处理模块803,用于响应于第一网络状态为在线状态、第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据,并将目标业务数据汇聚至第一服务节点中的第二数据库。
第一推送模块804,用于向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。
在本公开实施例的一种可能的实现方式中,第一推送模块804,用于:对第三服务节点进行环境检测,以得到第二环境检测信息,其中,第二环境检测信息用于指示第三服务节点的第二网络状态和第三服务节点中第三数据库的第二运行状态;响应于第二网络状态为在线状态,且第二运行状态为非异常状态,向第三服务节点推送第二数据库中存储的目标业务数据。
在本公开实施例的一种可能的实现方式中,该数据共享装置800还包括:
缓存模块,用于响应于第二网络状态为掉线状态,和/或,第二运行状态为异常状态,将目标业务数据缓存至第一服务节点的目标内存中。
开启模块,用于开启定时器。
第二处理模块,用于响应于定时器的运行时长等于设定时长,重新对第三服务节点进行环境检测,以在重新检测的第三服务节点的环境检测信息指示第三服务节点的网络状态为在线状态,且第三数据库的运行状态为非异常状态的情况下,向第三服务节点推送目标内存中缓存的目标业务数据。
在本公开实施例的一种可能的实现方式中,该数据共享装置800还包括:
第三处理模块,用于响应于第二网络状态为掉线状态,和/或,第二运行状态为异常状态,按照设定周期,周期性地对第三服务节点进行环境检测,以在重新检测的第三服务节点的环境检测信息指示第三服务节点的网络状态为在线状态,且第三数据库的运行状态为非异常状态的情况下,向第三服务节点推送第二数据库中存储的目标业务数据。
在本公开实施例的一种可能的实现方式中,第一处理模块803,用于:获取目标业务数据对应的参考文件,其中,参考文件中包含参考业务数据;将目标业务数据与参考文件中的参考业务数据进行比对,以确定目标业务数据中是否存在不同于参考业务数据的差异数据;响应于目标业务数据未存在差异数据,将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例的一种可能的实现方式中,该数据共享装置800还包括:
第一生成模块,用于响应于目标业务数据存在差异数据,根据差异数据生成修改提示信息,其中,修改提示信息,用于提示对目标业务数据中的差异数据进行修改。
展示模块,用于展示修改提示信息。
第一更新模块,用于响应于对目标业务数据的更新操作,对目标业务数据中的差异数据进行更新,以得到更新后的目标业务数据。
第一汇聚模块,用于将更新后的目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例的一种可能的实现方式中,该数据共享装置800还包括:
第二生成模块,用于响应于目标业务数据存在差异数据,根据差异数据生成修改指示信息,其中,修改指示信息用于指示目标业务数据中的差异数据,以及指示对差异数据进行修改。
第一发送模块,用于向指定设备发送修改指示信息。
第四处理模块,用于接收指定设备响应于修改指示信息所发送的更新信息,并根据更新信息对目标业务数据中的差异数据进行更新,以得到更新后的目标业务数据。
第二汇聚模块,用于将更新后的目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例的一种可能的实现方式中,第一处理模块803,用于:获取目标业务数据的属性信息;在属性信息指示目标业务数据无条件共享的情况下,将目标业务数据汇聚至第一服务节点中的第二数据库;在属性信息指示目标业务数据有条件共享的情况下,获取目标业务数据的授权信息;在授权信息指示目标业务数据授权于第三服务节点的情况下,将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例的一种可能的实现方式中,该数据共享装置800还包括:
第二发送模块,用于在授权信息指示目标业务数据未授权于第三服务节点的情况下,向第二服务节点发送授权提示信息;其中,授权提示信息,用于提示第二服务节点是否对第三服务节点授权目标业务数据。
接收模块,用于接收第二服务节点发送的授权指示信息。
第三汇聚模块,用于响应于授权指示信息指示对第三服务节点授权目标业务数据,将目标业务数据汇聚至第一服务节点中的第二数据库。
在本公开实施例的一种可能的实现方式中,感知模块801,用于:获取分布式集群中的第二服务节点中的第一数据库的日志文件,并对日志文件进行解析,以确定第一数据库中是否存在目标业务数据;或,从分布式集群中的第二服务节点中的第一数据库中,确定是否存在与目标事件关联的业务数据,响应于第一数据库中存在与目标事件关联的业务数据,确定第一数据库中存在目标业务数据。
在本公开实施例的一种可能的实现方式中,该数据共享装置800还包括:
第二推送模块,用于响应于向第三服务节点推送第二数据库中目标业务数据中的第一业务数据,对第二数据库中第一业务数据进行标记。
获取模块,用于从第二数据库中的目标业务数据中,获取未带标记的第二业务数据。
第三推送模块,用于向第三服务节点推送第二业务数据。
本公开实施例的数据共享装置,通过通过对分布式集群中的第二服务节点中的第一数据库进行感知,以感知第一数据库中是否存在目标业务数据,其中,目标业务数据为第一数据库中发生更新的业务数据和/或新增的业务数据;对第二服务节点进行环境检测,以得到第一环境检测信息,其中,第一环境检测信息用于指示第二服务节点的第一网络状态和第一数据库的第一运行状态;响应于第一网络状态为在线状态、第一运行状态为非异常状态、且第一数据库中存在目标业务数据,则从第一数据库中获取目标业务数据,并将目标业务数据汇聚至第一服务节点中的第二数据库;向分布式集群中的第三服务节点推送第二数据库中存储的目标业务数据,以实现目标业务数据的共享。由此,通过在感知到第二服务节点中的第一数据库中存在发生更新和/或新增的目标业务数据时,驱动对发生更新和/或新增目标业务数据进行汇聚,从而对汇聚至第二数据库中的目标业务数据进行及时且有效地推送,可以实现对目标业务数据进行共享,可以实现业务数据共享的灵活性、及时性和有效性。
为了实现上述实施例,本发明还提出一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如本发明前述任一实施例提出数据共享方法。
为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本发明前述任一实施例提出的数据共享方法。
为了实现上述实施例,本发明还提出一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行如本发明前述任一实施例提出的数据共享方法。
根据本发明的实施例,本发明还提供了一种电子设备、一种非临时性计算机可读存储介质和一种计算机程序产品。
如图9所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (12)
1.一种数据共享方法,应用于分布式集群中的第一服务节点,其特征在于,所述方法包括:
对所述分布式集群中的第二服务节点中的第一数据库进行感知,以感知所述第一数据库中是否存在目标业务数据,其中,所述目标业务数据为所述第一数据库中发生更新的业务数据和/或新增的业务数据;
对所述第二服务节点进行环境检测,以得到第一环境检测信息,其中,所述第一环境检测信息用于指示所述第二服务节点的第一网络状态和所述第一数据库的第一运行状态;
响应于所述第一网络状态为在线状态、且所述第一运行状态为非异常状态、且所述第一数据库中存在所述目标业务数据,则从所述第一数据库中获取所述目标业务数据,并将所述目标业务数据汇聚至所述第一服务节点中的第二数据库;
向所述分布式集群中的第三服务节点推送所述第二数据库中存储的所述目标业务数据,以实现所述目标业务数据的共享。
2.根据权利要求1所述的方法,其特征在于,所述向所述分布式集群中的第三服务节点推送所述第二数据库中存储的所述目标业务数据,包括:
对所述第三服务节点进行环境检测,以得到第二环境检测信息,其中,所述第二环境检测信息用于指示所述第三服务节点的第二网络状态和所述第三服务节点中第三数据库的第二运行状态;
响应于所述第二网络状态为在线状态,且所述第二运行状态为非异常状态,向所述第三服务节点推送所述第二数据库中存储的所述目标业务数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于所述第二网络状态为掉线状态,和/或,所述第二运行状态为异常状态,将所述目标业务数据缓存至所述第一服务节点的目标内存中;
开启定时器;
响应于所述定时器的运行时长等于设定时长,重新对所述第三服务节点进行环境检测,以在重新检测的所述第三服务节点的环境检测信息指示所述第三服务节点的网络状态为在线状态,且所述第三数据库的运行状态为非异常状态的情况下,向所述第三服务节点推送所述目标内存中缓存的目标业务数据。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于所述第二网络状态为掉线状态,和/或,所述第二运行状态为异常状态,按照设定周期,周期性地对所述第三服务节点进行环境检测,以在重新检测的所述第三服务节点的环境检测信息指示所述第三服务节点的网络状态为在线状态,且所述第三数据库的运行状态为非异常状态的情况下,向所述第三服务节点推送所述第二数据库中存储的所述目标业务数据。
5.根据权利要求1所述的方法,其特征在于,所述将所述目标业务数据汇聚至所述第一服务节点中的第二数据库,包括:
获取所述目标业务数据对应的参考文件,其中,所述参考文件中包含参考业务数据;
将所述目标业务数据与所述参考文件中的参考业务数据进行比对,以确定所述目标业务数据中是否存在不同于所述参考业务数据的差异数据;
响应于所述目标业务数据未存在所述差异数据,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
响应于所述目标业务数据存在所述差异数据,根据所述差异数据生成修改提示信息,其中,所述修改提示信息,用于提示对所述目标业务数据中的所述差异数据进行修改;
展示所述修改提示信息;
响应于对所述目标业务数据的更新操作,对所述目标业务数据中的所述差异数据进行更新,以得到更新后的目标业务数据;
将所述更新后的目标业务数据汇聚至所述第一服务节点中的第二数据库。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
响应于所述目标业务数据存在所述差异数据,根据所述差异数据生成修改指示信息,其中,所述修改指示信息用于指示所述目标业务数据中的所述差异数据,以及指示对所述差异数据进行修改;
向指定设备发送所述修改指示信息;
接收所述指定设备响应于所述修改指示信息所发送的更新信息,并根据所述更新信息对所述目标业务数据中的所述差异数据进行更新,以得到更新后的目标业务数据;
将所述更新后的目标业务数据汇聚至所述第一服务节点中的第二数据库。
8.根据权利要求1所述的方法,其特征在于,所述将所述目标业务数据汇聚至所述第一服务节点中的第二数据库,包括:
获取所述目标业务数据的属性信息;
在所述属性信息指示所述目标业务数据无条件共享的情况下,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库;
在所述属性信息指示所述目标业务数据有条件共享的情况下,获取所述目标业务数据的授权信息;
在所述授权信息指示所述目标业务数据授权于所述第三服务节点的情况下,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在所述授权信息指示所述目标业务数据未授权于所述第三服务节点的情况下,向所述第二服务节点发送授权提示信息;其中,所述授权提示信息,用于提示所述第二服务节点是否对所述第三服务节点授权所述目标业务数据;
接收所述第二服务节点发送的授权指示信息;
响应于所述授权指示信息指示对所述第三服务节点授权所述目标业务数据,将所述目标业务数据汇聚至所述第一服务节点中的第二数据库。
10.根据权利要求1-9中任一项所述的方法,其特征在于,所述对分布式集群中的第二服务节点中的第一数据库进行感知,以感知所述第一数据库中是否存在目标业务数据,包括:
获取所述分布式集群中的第二服务节点中的第一数据库的日志文件,并对日志文件进行解析,以确定所述第一数据库中是否存在目标业务数据;
或,
从所述分布式集群中的第二服务节点中的第一数据库中,确定是否存在与目标事件关联的业务数据,响应于所述第一数据库中存在与所述目标事件关联的业务数据,确定所述第一数据库中存在所述目标业务数据。
11.根据权利要求1-9中任一项所述的方法,其特征在于,所述方法还包括:
响应于向所述第三服务节点推送所述第二数据库中所述目标业务数据中的第一业务数据,对所述第二数据库中所述第一业务数据进行标记;
从所述第二数据库中的所述目标业务数据中,获取未带标记的第二业务数据;
向所述第三服务节点推送所述第二业务数据。
12.一种数据共享系统,其特征在于,包括分布式集群,其中,所述分布式集群中包括第一服务节点、第二服务节点和第三服务节点:
其中,所述第一服务节点用于执行如权利要求1-11中任一项所述的方法;
所述第二服务节点用于提供目标业务数据;其中,所述目标业务数据为所述第二服务节点中的第一数据库中发生更新的业务数据和/或新增的业务数据;
所述第三服务节点用于接收所述目标业务数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211474612.5A CN115776491A (zh) | 2022-11-23 | 2022-11-23 | 数据共享方法和数据共享系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211474612.5A CN115776491A (zh) | 2022-11-23 | 2022-11-23 | 数据共享方法和数据共享系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115776491A true CN115776491A (zh) | 2023-03-10 |
Family
ID=85389998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211474612.5A Pending CN115776491A (zh) | 2022-11-23 | 2022-11-23 | 数据共享方法和数据共享系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115776491A (zh) |
-
2022
- 2022-11-23 CN CN202211474612.5A patent/CN115776491A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8751573B2 (en) | Cloud-processing management with a landscape directory | |
US9015315B2 (en) | Identification and monitoring of distributed business transactions | |
US10268750B2 (en) | Log event summarization for distributed server system | |
US9164950B2 (en) | Use tag clouds to visualize components related to an event | |
US9037555B2 (en) | Asynchronous collection and correlation of trace and communications event data | |
WO2021203979A1 (zh) | 运维处理方法、装置及计算机设备 | |
US20170228296A1 (en) | Hierarchical system manager rollback | |
US7779300B2 (en) | Server outage data management | |
US10033796B2 (en) | SAAS network-based backup system | |
US20140201762A1 (en) | Event handling system and method | |
CN110008104A (zh) | 一种日志信息的管理方法、系统、设备及存储介质 | |
JP2010128597A (ja) | 情報処理装置及び情報処理装置の運用方法 | |
CN113010208B (zh) | 一种版本信息的生成方法、装置、设备及存储介质 | |
CN113821254A (zh) | 接口数据处理方法、装置、存储介质及设备 | |
CN110648105B (zh) | 基于数据处理的推荐方法、装置、电子设备及存储介质 | |
CN115776491A (zh) | 数据共享方法和数据共享系统 | |
CN111294231B (zh) | 资源管理方法及系统 | |
CN112711518B (zh) | 一种日志上传方法和装置 | |
CN108566293B (zh) | 电子装置、zk节点信息通知方法及存储介质 | |
CN117097599B (zh) | 网络服务检测方法、装置、计算机设备和存储介质 | |
CN113542103B (zh) | 社交通信群组中账号的邀请监测方法、装置及移动终端 | |
CN113168357B (zh) | 从参与文档协作会话的各用户收集重复诊断数据 | |
JP2023129154A (ja) | 遠隔運用システム、タイムスタンプ修正方法、およびタイムスタンプ修正プログラム | |
CN112669213A (zh) | 实时行情图动态更新方法、装置、电子设备及存储介质 | |
CN115269696A (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 |