用于第三方的数据共享更新方法及系统与流程

文档序号:11830391阅读:667来源:国知局
用于第三方的数据共享更新方法及系统与流程

本申请涉及数据处理领域,具体涉及一种用于第三方的数据共享更新方法及系统。



背景技术:

随着人类社会全面进入信息时代,数据成为与水、石油同等重要的战略资源,数据库已经成为数据组织和存储最重要的方式,对所有应用程序的访问几乎都会变相使用到数据库,于是数据库的响应速度也成为应用程序执行速度的重要瓶颈。在企业应用或互联网软件系统中,对于一些多个系统都用到的基础数据,业内普遍是把这些基础数据做到一个数据库中,其他要用到这些基础数据的系统都从该数据库里获取数据,从而可以降低系统间耦合,提高基础数据的可维护性。

在实现本申请的过程中,发明人发现现有技术至少存在以下问题:目前业内已经在普遍使用的数据共享或数据基础平台,主要是实现了基础数据的管理和维护,以及提供对外API接口服务来供第三方系统读取数据。这种技术方案的问题是,当基础数据有变更时,第三方系统无法实时感知并及时读取,对于那些数据时效性要求高的系统这是无法容忍的。



技术实现要素:

本申请实施例提供一种用于第三方的数据共享更新方法及系统,用以解决上述阐述的现有技术中的至少一个问题。

一方面本申请提供了一种用于第三方的数据共享更新方法,包括:

根据与多项基础数据相关的订阅项生成订阅列表;

提供订阅接口供至少一个第三方调用所述订阅列表,记录各第三方的名称、各第三方采用的网络链接的特征信息、以及各第三方在订阅列表中选定的订阅项,确定各第三方的订阅关系;

当某项基础数据完成更改时,确定相应的订阅项,并自所述各第三方的订阅关系中查询与该订阅项对应的第三方的名称和网络链接的特征信息,根据查询到的第三方的名称和网络链接的特征信息将变更通知发送给相应的第三方。

另一方面本申请提供了一种用于第三方的数据共享更新系统,包括:

基础数据模块,用于根据与多项基础数据相关的订阅项生成订阅列表;

订阅关系模块,用于提供订阅接口供至少一个第三方调用所述订阅列表,记录各第三方的名称、各第三方采用的网络链接的特征信息、以及各第三方在订阅列表中选定的订阅项,并确定各第三方的订阅关系;

变更通知模块,用于在某项基础数据完成更改时,确定相应的订阅项,并自所述各第三方的订阅关系中查询与该订阅项对应的第三方的名称和网络链接的特征信息,根据查询到的第三方的名称和网络链接的特征信息将变更通知发送给相应的第三方。

本申请实施例提供的用于第三方的数据共享更新方法及系统,通过将待更改的基础数据对应的订阅项生成订阅列表,并提供订阅接口供第三方调用该订阅列表来确定各第三方的订阅关系,当待更改的基础数据中某一项基础数据完成更改时,则根据该基础数据对应的订阅项以及订阅列表确定的第三方的订阅关系查询到与该订阅项对应的第三方,将变更通知发送给与该订阅项对应的第三方,即可完成对第三方的数据共享更新的过程。本申请所示实施例能够在基础数据发生更改的同时,根据所确定的订阅关系查询到订阅该基础数据的第三方并向所述第三方发送变更通知,可以将变更的数据实时地通知给订阅该变更的数据的第三方以便第三方能够及时读取变更后的数据,降低了因第三方无法实时感知和读取变更的订阅数据而造成的损失。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例的用于第三方的数据共享更新方法的流程图;

图2是本申请一实施例的用于第三方的数据共享更新系统的结构示意图;

图3是本申请一实施例的图2所示系统基于图1所示方法工作的原理图;

图4为本申请实施例提供的一种用于第三方的数据共享平台400的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,在不冲突的情况下,本申请中的实施方式及实施方式中的特征可以相互组合。

本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

图1是本申请一实施例的用于第三方的数据共享更新方法的流程图。如图1所示,该方法包括:

S101:根据与多项基础数据相关的订阅项生成订阅列表;

S102:提供订阅接口供至少一个第三方调用所述订阅列表,记录各第三方的名称、各第三方采用的网络链接的特征信息、以及各第三方在订阅列表中选定的订阅项,确定各第三方的订阅关系;

S103:当某项基础数据完成更改时,确定相应的订阅项,并自所述各第三方的订阅关系中查询与该订阅项对应的第三方的名称和网络链接的特征信息,根据查询到的第三方的名称和网络链接的特征信息将变更通知发送给相应的第三方。

本申请实施例提供的用于第三方的数据共享更新方法,通过将待更改的基础数据对应的订阅项生成订阅列表,并提供订阅接口供第三方调用该订阅列表来确定各第三方的订阅关系,当待更改的基础数据中某一项基础数据完成更改时,则根据该基础数据对应的订阅项以及订阅列表确定的第三方的订阅关系查询到与该订阅项对应的第三方,将变更通知发送给与该订阅项对应的第三方,即可完成对第三方的数据共享更新的过程。本申请所示实施例能够在基础数据发生更改的同时,根据所确定的订阅关系查询到订阅该基础数据的第三方并向所述第三方发送变更通知,可以将变更的数据实时地通知给订阅该变更的数据的第三方以便第三方能够及时读取变更后的数据,降低了因第三方无法实时感知和读取变更的订阅数据而造成的损失。

作为图1所示实施例的进一步说明,图1所示实施例中,基础数据的存储结构为键值对。本实施例中,键值对的取值方式是用key,key是字符串,可以随时定义,因此不管运用什么技术从键值对中取值的方式都是是统一的,使用键值对会将传输数据的业务属性封闭在键值对内部,便于操作。同时,键值对存储技术几乎包含在所有的主流技术里,因此利用该数据结构作为传输介质具有可以跨平台的优势。

作为本申请所示方法的一可选实施例,本申请可选实施例中,第三方采用的网络链接的特征信息为长链接。长链接只需要进行一回三次握手从而建立TCP链接,就可以进行多次通信,因此本实施例采用长链接作为与第三方的网络链接,避免了每一次通信的过程都需要建立连接导致时间延长的问题,减少了网络的堵塞,增加了第三方感知和读取变更数据的实时性。

在本申请一些实施例中,在S103当某项基础数据完成更改时,确定相应的订阅项,并自所述各第三方的订阅关系中查询与该订阅项对应的第三方的名称和网络链接的特征信息,根据查询到的第三方的名称和网络链接的特征信息将变更通知发送给相应的第三方之后包括:

S104:通过所述第三方采用的网络链接接收所述第三方返回的反馈信息以确认所述基础数据在所述第三方中是否更新成功。

本实施例采用了反馈机制以进一步增大第三方及时感知和读取更改数据的实时性。

作为本申请所示方法的一可选实施例,本申请可选实施例中,各第三方采用的网络链接定期更新。本实施例通过对各第三方采用的网络链接定期更新,避免了因网络堵塞等原因造成的与第三方的网络连接断开,从而减少了第三方无法及时感知和读取更改数据的可能性。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

图2是本申请一实施例的用于第三方的数据共享更新系统的结构示意图。本申请所述的用于第三方的数据共享更新方法可以基于本实施例中的用于第三方的数据共享更新系统实施。如图2所示,该系统包括基础数据模块201、订阅关系模块202和变更通知模块203。

基础数据模块201用于根据与多项基础数据相关的订阅项生成订阅列表;

订阅关系模块202用于提供订阅接口供至少一个第三方调用所述订阅列表,记录各第三方的名称、各第三方采用的网络链接的特征信息、以及各第三方在订阅列表中选定的订阅项,并确定各第三方的订阅关系;

变更通知模块203用于在某项基础数据完成更改时,确定相应的订阅项,并自所述各第三方的订阅关系中查询与该订阅项对应的第三方的名称和网络链接的特征信息,根据查询到的第三方的名称和网络链接的特征信息将变更通知发送给相应的第三方。

本申请实施例提供的用于第三方的数据共享更新系统,通过基础数据模块201将数据库中待更改的基础数据对应的订阅项生成订阅列表,并通过订阅关系模块202提供订阅接口供第三方调用该订阅列表来确定各第三方的订阅关系,当待更改的基础数据中某一项基础数据完成更改时,则通过变更关系模块203根据该基础数据对应的订阅项以及订阅列表确定的第三方的订阅关系查询到与该订阅项对应的第三方,将变更通知发送给与该订阅项对应的第三方,即可完成对第三方的数据共享更新的过程。本申请所示实施例能够在基础数据发生更改的同时,根据所确定的订阅关系查询到订阅该基础数据的第三方并向所述第三方发送变更通知,可以将变更的数据实时地通知给订阅该变更的数据的第三方以便第三方能够及时读取变更后的数据,降低了因第三方无法实时感知和读取变更的订阅数据而造成的损失。

作为本申请所示系统的一可选实施例,本申请可选实施例中,基础数据的存储结构为键值对。本实施例中,键值对的取值方式是用key,key是字符串,可以随时定义,因此不管运用什么技术从键值对中取值的方式都是是统一的,使用键值对会将传输数据的业务属性封闭在键值对内部,便于操作。同时,键值对存储技术几乎包含在所有的主流技术里,因此利用该数据结构作为传输介质具有可以跨平台的优势。

作为本申请所示系统的一可选实施例,本申请可选实施例中,第三方采用的网络链接的特征信息为长链接。长链接只需要进行一回三次握手从而建立TCP链接,就可以进行多次通信,因此本实施例采用长链接作为与第三方的网络链接,避免了每一次通信的过程都需要建立连接导致时间延长的问题,减少了网络的堵塞,增加了第三方感知和读取变更数据的实时性。

在本申请一些实施例中,图2所示系统实施例还包括变更确认模块204,用于通过所述第三方采用的网络链接接收所述第三方返回的反馈信息以确认所述基础数据在所述第三方中是否更新成功。

本实施例采用了反馈机制以进一步增大第三方及时感知和读取更改数据的实时性。

作为本申请所示方法的一可选实施例,本申请可选实施例中,所述各第三方采用的网络链接定期更新。本实施例通过对各第三方采用的网络链接定期更新,避免了因网络堵塞等原因造成的与第三方的网络连接断开,从而减少了第三方无法及时感知和读取更改数据的可能性。

图3是本申请一实施例的图2所示系统基于图1所示方法工作的原理图。如图3所示,图2所示系统基于图3所示的数据共享平台工作。该数据共享平台还包括基础数据库和订阅关系库,基础数据库为包含所有基础数据的数据库,订阅关系库则为包含根据与所有基础数据相关的订阅项生成的订阅列表的数据库。

基础数据模块直接操作于基础数据库,以对基础数据进行增、删、改、查等数据读写操作。同时还维护以基础数据作为订阅项的订阅列表,更新订阅列表的数据并保存到订阅关系库中。

订阅关系模块提供订阅接口(例如,API)供n个第三方(业务系统)调用,该API的参数有:第三方名称、第三方在订阅列表中选定的订阅项。第三方在调用本模块时,该模块会自动记录下该第三方采用的网络链接的特征信息,并将第三方的名称、采用的网络链接的特征信息和第三方在订阅列表中选定的订阅项保存到订阅关系库中,完成订阅关系的建立。

当基础数据模块对基础数据的更改操作完成时,会将基础数据的名称和内容(键值)和其修改信息通知给变更通知模块,变更通知模块根据该键值从订阅关系模块中查询所有订阅该键值的第三方,之后基于查询到的第三方的网络链接,将数据变更内容通知给第三方。

本申请实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。

图4为本申请实施例提供的一种用于第三方的数据共享平台400的结构示意图,本申请具体实施例并不对用于第三方的数据共享平台400的具体实现做限定。如图4所示,该用于第三方的数据共享平台400可以包括:

处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430、以及通信总线440。其中:

处理器410、通信接口420、以及存储器430通过通信总线440完成相互间的通信。

通信接口420,用于与比如客户端等的网元通信。

处理器410,用于执行程序432,具体可以执行上述方法实施例中的相关步骤。

具体地,程序432可以包括程序代码,所述程序代码包括计算机操作指令。

处理器410可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。

上述实施例的数据共享平台中:

存储器,用于存放计算机操作指令;

处理器,用于执行所述存储器存储的计算机操作指令,以执行:

根据与多项基础数据相关的订阅项生成订阅列表;

提供订阅接口供至少一个第三方调用所述订阅列表,记录各第三方的名称、各第三方采用的网络链接的特征信息、以及各第三方在订阅列表中选定的订阅项,确定各第三方的订阅关系;

当某项基础数据完成更改时,确定相应的订阅项,并自所述各第三方的订阅关系中查询与该订阅项对应的第三方的名称和网络链接的特征信息,根据查询到的第三方的名称和网络链接的特征信息将变更通知发送给相应的第三方。

以上所描述的实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

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

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

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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