基于数据库的数据共享方法以及系统与流程

文档序号:26050423发布日期:2021-07-27 15:25阅读:156来源:国知局
基于数据库的数据共享方法以及系统与流程

本发明涉及数据分发的技术领域,尤其是涉及一种基于数据库的数据共享方法以及系统。



背景技术:

数据库日志用于记录数据库更新或潜在更新的数据,比如,当数据库执行增、删、改动作时,会产生变动数据,数据库日志便对该变动数据进行记录。当业务方需要使用这些变动数据时,数据库会发布这些变动数据,以便业务方自行获取。

相关技术中,预设的数据库中包括商户数据表、商品数据表以及用户数据表等,比如,用户数据表中包括用户的编号、姓名、身份证号、联系方式以及家庭住址等,当用户的联系方式或家庭住址发生变化时,便会产生一条变动数据,该变动数据可以为以数据库名称、数据表名称、编号、姓名、身份证号、联系方式以及家庭住址等为键-值对的子信息,数据库再将这些子信息发布给所有需要接收变动数据的业务方。

针对上述的相关技术,发明人认为存在以下缺陷:由于数据库发布的变动数据的数量较大,使得业务方接收这些海量的变动数据时的压力增大,导致业务方的开发成本增加。



技术实现要素:

为了改善业务方获取变动数据时开发成本增加的问题,本申请提供一种基于数据库的数据共享方法以及系统。

第一方面,本申请提供一种基于数据库的数据共享方法,采用如下的技术方案:

获取业务方预设的数据接收条件,所述数据接收条件包括至少一目标标识;

获取预设的数据库中的变动数据,所述变动数据包括若干组子信息;

筛选与所述目标标识信息一致的子信息;

根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方。

通过采用上述技术方案,一条变动数据中通常包括多组子信息,根据业务方预设的数据接收条件,对变动数据中的子信息进行筛选,将与目标标识信息一致的子信息推送给业务方,从而减小业务方接收海量的无用数据的可能,进而减少业务方的开发成本;且有助于减少资源浪费。

可选的,所述根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方包括:

将筛选出的所述子信息推送至业务方的数据库,并更新所述业务方的数据库中与子信息对应的数据。

通过采用上述技术方案,当业务方预先设置的数据推送方式为数据库时,系统基于预设的数据接收条件,将业务方需要的子信息直接推送至业务方的数据库,并对业务方数据库中关于子信息的数据进行更新,使得业务方无需再自行获取子信息,从而保证变动数据分享时的即时性和一致性。

可选的,所述根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方包括:

将所述目标标识相同的业务方划分为同类业务方;

构建多条消息分发通道,所述消息分发通道与所述同类业务方一一对应;

将筛选出的所述子信息通过对应的消息分发通道推送给对应的同类业务方。

通过采用上述技术方案,消息分发通道的入口用于接收筛选出的子信息,消息分发通道的出口用于连接同类业务方,根据预设的目标标识,将对应的子信息通过消息分发通道推送给对应的同类业务方,以实现子信息的自动推送,从而提升数据分发系统推送子信息时的效率。

可选的,所述根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方包括:

在预设的数据库与业务方间设置广播平台;

将筛选出的所述子信息推送至广播平台,以使得所述业务方从广播平台的子信息中获取与目标标识信息一致的子信息。

通过采用上述技术方案,当业务方所需要的数据或业务方自己的数据库涉及隐私安全时,需要数据分发系统先将变动数据存放在广播平台,当业务方需要使用对应的子信息时,再自行从广播平台中获取,从而保证业务方使用子信息时的安全性。

可选的,所述预设的数据接收条件还包括预设的数据接收格式;在所述将筛选出的所述子信息推送至广播平台,以使得所述业务方从广播平台的子信息中获取与目标标识信息一致的子信息之前,还包括:

判断筛选出的所述子信息的数据格式是否与预设的数据接收格式一致,若不一致,则将筛选出的所述子信息的数据格式修改为预设的数据接收格式。

通过采用上述技术方案,由于子信息具有特定的数据格式,当子信息的数据格式与业务方的数据接收格式不一致时,数据分发系统需对子信息的数据格式进行修改,以便数据分发系统更高效地推送子信息。

可选的,在所述根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方之前,还包括:

向所述业务方的数据库发送访问请求;

判断所述业务方是否在线,若未接收到所述业务方的反馈信息,则判定所述业务方不在线,并剔除与所述业务方的目标标识信息一致的子信息。

通过采用上述技术方案,由于存在业务方在数据分发系统获取预设的数据接收条件后又自行消失的情况,所以在系统推送子信息之前,需先判断业务方是否在线,若不在线,则系统不再推送相应的子信息,从而减少数据分发系统推送子消息时的资源浪费。

可选的,在所述根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方之前,还包括:

获取所述数据接受条件中目标标识的个数;

判断所述目标标识的个数是否大于1,若大于1,则对对应于所述目标标识的多个子信息进行整合,并形成子信息链。

通过采用上述技术方案,由于有些业务方预设的目标标识可能不止一个,当数据分发系统按照目标标识顺次筛选子信息后,将筛选出的子信息进行组合,形成一条子信息链,以实现向业务方一次性发送其所需数据的效果,从而提升数据分发系统推送子信息时的效率。

第二方面,本申请提供一种基于数据库的数据共享系统,采用如下的技术方案:所述系统包括:

接收条件获取模块,用于获取业务方预设的数据接收条件,所述数据接收条件包括至少一目标标识;

变动数据获取模块,用于获取预设的数据库中的变动数据,所述变动数据包括若干组子信息;

子信息筛选模块,用于筛选与所述目标标识信息一致的子信息;

子信息推送模块,用于根据所述业务方预设的数据推送方式,将对应于所述目标标识的子信息推送给业务方。

通过采用上述技术方案,将符合业务方预设的数据接收条件的子信息推送给业务方,有助于减少业务方接收无用数据的可能,从而减少业务方接收变动数据时的开发成本。

第三方面,本申请提供一种计算机设备,采用如下的技术方案:包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行如上所述任一种基于数据库的数据共享方法的计算机程序。

通过采用上述技术方案,将符合业务方预设的数据接收条件的子信息推送给业务方,有助于减少业务方接收无用数据的可能,从而减少业务方接收变动数据时的开发成本。

第四方面,本申请提供一种存储介质,采用如下的技术方案:存储有能够被处理器加载并执行上述任一种基于数据库的数据共享方法的计算机程序。

通过采用上述技术方案,将符合业务方预设的数据接收条件的子信息推送给业务方,有助于减少业务方接收无用数据的可能,从而减少业务方接收变动数据时的开发成本。

综上所述,本申请包括以下至少一种有益技术效果:

1.根据业务方预设的数据接收条件,对变动数据中的子信息进行筛选,将符合预设的数据接收条件的子信息推送给业务方,从而减小业务方接收无用数据的可能,进而减少业务方接收变动数据时的开发成本;

2.系统基于预设的数据接收条件,将业务方需要的子信息直接推送至业务方的数据库,并对业务方数据库中关于子信息的数据进行更新,从而无需业务方自行获取,有助于提升变动数据分享时的即时性和一致性;

3.根据预设的数据接收条件,将对应的子信息通过消息分发通道推送给对应的同类业务方,实现子信息的自动推送,从而提升数据分发系统分发子信息时的效率;

4.当业务方所需要的数据或业务方自己的数据库涉及隐私安全时,需要数据分发系统先将变动数据存放在广播平台,当业务方需要使用对应的子信息时,再自行从广播平台中获取,从而保证业务方使用子信息时的安全性。

附图说明

图1是本申请实施例中基于数据库的数据共享方法的流程图。

图2是本申请实施例中s19的子流程图。

图3是本申请实施例中基于数据库的数据共享系统的结构框图。

附图标记说明:201、接收条件模块;202、变动数据获取模块;203、子信息筛选模块;204、推送方式获取模块;205、子信息加工模块;206、子信息推送模块。

具体实施方式

以下结合附图1-3对本申请作进一步详细说明。

本申请实施例公开一种基于数据库的数据共享方法,该方法基于一数据分发系统,数据分发系统用于将预设的数据库中的变动数据推送给下游的业务方。

具体来说,预设的数据库中存储有各种数据表,比如,商户数据表、商品数据表以及用户数据表,以用户数据表为例,用户数据表中包括用户的编号、姓名、身份证号、联系方式以及家庭住址等关键字,在数据库中,关键字也称为键。

当预设的数据库中的信息因进行增、删、改操作而发生变化时,都会产生相应的变动数据,比如,当用户的联系方式发生变化时,便会产生一条变动数据,变动数据可以为以数据库名称、数据表名称、编号、姓名、身份证号、联系方式以及家庭住址等为键-值对的子信息,以供数据分发系统进行获取。

如图1所示,该方法包括以下步骤:

s10,获取业务方预设的数据接收条件。

具体来说,由于对于特定的业务方来说,很多变动数据都是无用数据,如果业务方全部接受,势必会增加业务方为接收海量数据而造成的开发成本。

业务方预设的数据接收条件包括至少一目标标识,该目标标识用于指示数据库的信息变动。

s11,获取预设的数据库中的变动数据。

具体来说,数据分发系统实时获取预设的数据库中的变动数据。

s12,筛选出与目标标识信息一致的子信息。

具体来说,基于预设的数据接收条件中的目标标识,数据分发系统将与预设的目标标识信息一致的子信息分发给业务方,以减小业务方接收变动数据时的开发成本。

s13,获取业务方预设的数据推送方式。

具体来说,不同的业务方所需要的数据不一样,为了保证业务方获取所需数据时的方便性和安全性,数据分发系统在推送子信息前,会先获取业务方预设的数据推送方式。

s14,判断业务方是否在线。

具体来说,数据分发系统向数据库发送访问请求,若数据分发系统未接收到业务方的反馈消息,则判定业务方不在线,并执行s15;否则,执行s16。

s15,剔除与该业务方对应的子信息。

具体来说,每个业务方都有自己预设的数据接收条件,当不同的业务方预设的数据接收条件一致时,筛选出的子信息也是一致的,且筛选出的子信息的条数与业务方的个数是相一致的,也就是说,筛选出的子信息是相互独立存在的,并与相应的业务方一一对应。

当业务方不在线时,数据分发系统便剔除与该业务方对应的子信息,从而节省推送信息时的资源。

s16,获取目标标识的个数。

s17,判断目标标识的个数是否大于1。

具体来说,预设的数据接收条件中的目标标识可能不唯一,即数据筛选的条件不止一个。当目标标识的个数大于1时,执行s18;否则,执行s19。

s18,整合多个目标标识对应的子信息。

具体来说,一个目标标识便对应一条子信息,当有多个目标标识时,便有多条子信息,而为了提升数据分发系统将子信息推送给特定的业务方时的效率,数据分发系统可将属于同一业务方的多个子信息进行集合,形成子信息链,并根据预设的数据接收条件,将子信息链一次性推送给业务方。

s19,根据业务方预设的数据推送方式,将对应于目标标识的子信息推送给业务方。

具体来说,不同的业务方根据自身的需求,所配备的获取数据的方式也不一致,选择合适的数据推送方式,有助于提升数据分发系统将子信息或者子信息链推送至业务方时的效率。

结合图2,s19包括s20、s30以及s40这三个并行的子步骤:

s20,将筛选出的子信息推送至业务方的数据库,并更新业务方的数据库中与子信息对应的数据。

具体来说,当业务方的数据推送方式为配送至自身的数据库时,数据分发系统基于业务方预设的数据接收条件,对子信息进行筛选,再将筛选后的子信息推送至相应的业务方,并将业务方的数据库中与子信息对应的数据进行更新,将业务方的数据库中的信息更改为变化后的预设的数据库中对应的信息,从而无需业务方自行获取子信息或者子信息链,进而降低业务方获取子信息或者子信息链时的开发成本。

s30,将与预设的数据接收条件一致的业务方设置为同类业务方。

具体来说,不同的业务方预设的数据接收条件可能存在一致的情况,数据分发系统可将预设的数据接收条件一致的业务方设置为同类业务方。

s31,构建多条消息分发通道。

具体来说,数据分发系统构建多条消息分发通道,每条消息分发通道只对应一种预设的数据接收条件,且消息分发通道的入口处接收与预设的数据接收条件相对应的子信息或子信息链,消息分发通道的出口与同类业务方相连。

s32,获取筛选出的子信息的数据格式。

具体来说,数据分发系统获取多条变动数据后,基于预设的目标标识,获取与目标标识信息一致的子信息,再获取筛选出的子信息的数据格式。

s33,判断筛选出的子信息的数据格式是否与数据接收条件中的数据格式一致。

具体来说,业务方预设的数据接收条件中还包括预设的数据接收格式,比如json格式,当筛选出的子信息的数据格式与数据接收条件中的数据格式一致时,数据分发系统能更高效地将筛选出的子信息推送给业务方。

若筛选出的子信息的数据格式与数据接收条件中的数据格式一致,则执行s34;否则,执行s35。

s34,将对应的子信息通过对应的消息分发通道推送给对应的同类业务方。

具体来说,消息分发通道与预设的数据接收条件对应,数据分发系统通过不同的消息分发通道将不同的子信息推送至同类业务方。

s35,修改子信息的数据格式。

具体来说,数据分发系统将筛选出的子信息的格式转换成与业务方预设的数据接收格式一致的格式。

s40,在预设的数据库与业务方间设置广播平台。

s41,获取筛选出的子信息的数据格式。

具体来说,数据分发系统获取多条变动数据后,基于预设的目标标识,获取与目标标识信息一致的子信息,再获取筛选出的子信息的数据格式。

s42,判断筛选出的子信息的数据格式是否与数据接收条件中的数据格式一致。

具体来说,若筛选出的子信息的数据格式与数据接收条件中的数据格式一致,则执行s43;否则,跳转执行s35。

s43,将与目标标识信息一致的子信息推送至广播平台。

具体来说,当业务方的数据库是关于财务之类的涉及企业安全的数据库时,数据分发系统不能直接对业务方的数据库进行修改,所以设置广播平台,本申请实施例中的广播平台可以为kafka平台,kafka平台相当于是一个消息中转平台,具有高吞吐、低延迟的优点。

数据分发系统将业务方所需的子信息存放在广播平台上,以供业务方自行获取,从而保证数据传输时的安全性。

本申请实施例的实施原理为:当预设的数据库中产生变动数据时,数据分发系统根据业务方预设的数据接收条件以及数据推送方式,将筛选出的子信息推送给相应的业务方,从而减小业务方接收海量的无用数据的可能,进而减小业务方的开发成本。

基于上述方法,本申请实施例还公开一种基于数据库的数据共享系统。

结合图3,该系统包括以下模块:

接收条件获取模块201,用于获取业务方预设的数据接收条件;

变动数据获取模块202,用于获取预设的数据库中的变动数据;

子信息筛选模块203,用于基于接收条件获取模块201以及变动数据获取模块202,筛选出与业务方预设的数据接收条件信息一致的子信息;

推送方式获取模块204,用于获取业务方预设的数据推送方式;

子信息加工模块205,用于整合多个目标标识对应的子信息;

子信息推送模块206,基于推送方式获取模块204以及子信息加工模块205,将对应于预设的数据接收条件的子信息推送给业务方。

本申请实施例还公开一种计算机设备。

具体来说,该设备包括存储器和处理器,存储器上存储有能够被处理器加载并执行上述一种基于数据库的数据共享方法的计算机程序。

本申请实施例还公开一种计算机可读存储介质。

具体来说,该计算机可读存储介质,其存储有能够被处理器加载并执行如上一种基于数据库的数据共享方法的计算机程序,该计算机可读存储介质例如包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本具体实施方式的实施例均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。

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