数据交互方法、装置、电子设备及可读存储介质与流程

未命名 09-22 阅读:100 评论:0


1.本发明涉及数据交互技术领域,尤其涉及一种数据交互方法、装置、电子设备及可读存储介质。


背景技术:

2.大数据时代下,不同的对象之间存在大量的对数据的操作,因此需要进行多方直接的数据交互,但当数据提供端的数据发生更新变动后,数据提供端将更新数据推送至中间库时,数据调用端未能被动或及时地感知到数据的更新,需要数据提供端多频次的主动查询中间库中数据的更新状况,造成了数据通道的拥堵。并在数据调用端感知到数据的更新后,还需要进一步的在中间库中确定更新数据的具体内容,因此现有的数据交互手段存在数据提供端的增量数据往往会造成交互过程中数据的延时和数据的不准确。


技术实现要素:

3.有鉴于此,本发明实施例提供了一种流量调度方法,以解决数据交互过程中的延时问题和数据不准确的问题。
4.根据本发明的第一方面,提供了一种数据交互方法,包括:
5.接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入;
6.响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据;
7.接收第二输入,所述第二输入为接收所述差异数据的输入;
8.响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。
9.可选地,所述响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端后,还包括:
10.接收第三输入,所述第三输入为所述数据调用端对所述差异数据进行操作的输入;
11.响应于所述第三输入,输出判定数据交互成功的判断结果。
12.可选地,所述响应于所述第三输入,输出判定数据交互成功的判断结果前,还包括:
13.接收第四输入,所述第四输入为所述数据调用端未接收所述差异数据的输入;
14.响应于所述第四输入,重新获取所述第三输入。
15.可选地,所述响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据后,还包括:
16.根据与所述差异数据对应的目标表名和目标主键,更新所述中间库的数据表。
17.根据本发明的第二方面,提供了一种数据交互装置,包括:
18.第一接收模块,用于接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入;
19.第一获取模块,响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据;
20.第二接收模块,用于接收第二输入,所述第二输入为接收所述差异数据的输入;
21.推送模块,响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。
22.可选地,所述数据交互装置还包括:
23.第三接收模块,用于接收第三输入,所述第三输入为所述数据调用端对所述差异数据进行操作的输入;
24.判断模块,响应于所述第三输入,输出判定数据交互成功的判断结果。
25.可选地,所述数据交互装置还包括:
26.第四接收模块,用于接收第四输入,所述第四输入为所述数据调用端未接收所述差异数据的输入;
27.第二获取模块,响应于所述第四输入,重新获取所述第三输入。
28.可选地,所述数据交互装置还包括:
29.更新模块,用于根据与所述差异数据对应的目标表名和目标主键,更新所述中间库的数据表。
30.根据本发明的第三方面,提供了一种电子设备,包括:
31.处理器;以及
32.存储程序的存储器,
33.其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据本发明第一方面中任一项所述的方法。
34.根据本发明的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据本发明第一方面中任一项所述的方法。
35.本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
36.在不改变数据交互流程的前提下,感知数据提供端、中间库和数据调用端对于数据的处理动作,通过接收数据提供端向中间库推送数据的输入,获取交互过程中更新的差异数据,并将差异数据推送给数据调用端,让数据调用端能及时对数据进行更新和使用,减少数据的延时性,提高数据的使用效率。
37.上述简要说明仅是对本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下举例详细描述本发明的具体实施方式。
附图说明
38.在下面结合附图对于示例性实施例的描述中,本发明的更多细节、特征和优点被公开,在附图中:
39.图1示出了根据本发明示例性实施例的可以在其中实施本文描述的各种方法的示例系统的示意图;
40.图2示出了根据本发明示例性实施例的数据交互方法的流程图;
41.图3示出了根据本发明示例性实施例的数据交互装置的示意性框图;
42.图4示出了能够用于实现本发明的实施例的示例性电子设备的结构框图。
具体实施方式
43.下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
44.应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
45.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
46.需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
47.本发明实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
48.以下参照附图描述本发明的方案,通过具体的实施例及其应用场景对本技术实施例提供的技术方案进行详细地说明。
49.如图1所示,图1是本技术实施例提供的实施一种数据交互方法的系统示意图,该系统包括数据提供端101、中间库102、数据调用端103和数据交互装置104,其中,当数据提供端101和数据调用端103之间建立了数据的交互关系,则数据提供端101用于给数据调用端103提供数据交互过程中的交互数据,数据调用端103用于接收数据提供端101提供的交互数据,并对交互数据施加操作,中间库102是进行数据访问服务的中间件,独立于数据提供端101和数据调用端103,方便部署与卸载。便于数据调用端103对数据检索的收割、集成、集中搜索与展示,降低交互过程中数据的获取难度,提高交互过程中数据的共享程度。
50.如图2所示,图2是本技术实施例提供的一种数据交互方法的流程示意图,方法可以包括如下步骤s201~步骤s204:
51.s201,接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入。
52.在本实施例的一个可选方式中,当数据提供端和数据调用端之间建立了数据交互关系后,当数据调用端向数据提供端提交了数据请求时,中间库负责将这些请求分类为数据请求,再向数据提供端发出数据交换申请。数据提供端对请求进行筛选处理之后,再将所需的数据先发送至中间库,以便于后续通过中间库传递回到数据调用端。而在数据提供端将交互数据发送至中间库时,生成了第一输入。
53.在本实施例的一个可选方式中,在数据交互装置中配置数据提供端、数据调用端和中间库的信息,包括数据提供端和数据调用端的日志查询接口、对中间库的操作信息以及中间库的表结构,建立数据提供端和数据调用端之间的数据交互关系。在查询数据提供端日志时,可以获知其向中间库发送更新数据的信息;在查询数据调用端日志时,可以获知
数据调用端从中间库获取更新数据的信息。
54.s202,响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据。
55.在本实施例的一个可选方式中,日志,是计算机用语,作为网络设备、系统及服务程序等的数据提供端,在运作时都会产生一个叫log的事件记录,即日志。每一行日志都记载着日期、时间、使用者及动作等相关操作的描述。
56.windows网络操作系统都设计有各种各样的日志文件,如应用程序日志,安全日志、系统日志、scheduler服务日志、ftp日志、www日志、dns服务器日志等等,这些根据系统开启的服务的不同而有所不同。当数据提供端进行操作时,这些日志文件通常会记录下操作的相关内容。
57.本实施例中,通过对比数据提供端的日志和中间库的数据表,可以得出数据提供端更新的数据,即差异数据。
58.s203,接收第二输入,所述第二输入为接收所述差异数据的输入。
59.本实施例中,当对比后获取到差异数据后,生成接收到差异数据的信号。
60.s204,响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。
61.本实施例中,当接收到差异数据的信号后,将对应的差异数据推送给数据调用端,达到数据提供端的数据更新后,数据调用端实时接收到更新后的差异数据,不需要数据调用端主动多次的去中间库中查询是否有更新,减少了工作量,保障了数据的准确性。
62.在本实施例的一个可选方式中,所述响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端后,还包括:
63.s205,接收第三输入,所述第三输入为所述数据调用端对所述差异数据进行操作的输入;
64.s206,响应于所述第三输入,输出判定数据交互成功的判断结果。
65.本实施例中,当中间库将差异数据推送给数据调用端后,由数据调用端对差异数据进行操作,并感知交互过程结束后的数据调用端对差异数据的数据消费行为。进一步的验证了数据交互过程是成功的,数据提供端的数据发生更新后,可以及时准确的将更新数据推送到数据调用端。
66.在本实施例的一个可选方式中,所述响应于所述第三输入,输出判定数据交互成功的判断结果前,还包括:
67.s205a,接收第四输入,所述第四输入为所述数据调用端未接收所述差异数据的输入;
68.s205b,响应于所述第四输入,重新获取所述第三输入。
69.本实施例中,当中间库将所述差异数据推送给数据调用端后,也可以从数据调用端的日志中进一步论证,数据调用端是否接收到对应的差异数据,若未接收到差异数据,但却接收到了第三输入,则表明当前的第三输入有误,需要重新获取正确的第三输入,保障交互过程的准确度。
70.在本实施例的一个可选方式中,所述响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据后,还包括:
71.s202a,根据与所述差异数据对应的目标表名和目标主键,更新所述中间库的数据
表。
72.本实施例中,当存在差异数据时,表明数据提供端的数据发生了更新,此时需要在中间库的数据表中进行与数据提供端更新相对应的数据表的更新,即更新数据表中的目标表名和目标主键。
73.本技术实施例在不改变数据交互流程的前提下,感知数据提供端、中间库和数据调用端对于数据的处理动作,通过接收数据提供端向中间库推送数据的输入,获取交互过程中更新的差异数据,并将差异数据推送给数据调用端,让数据调用端能及时对数据进行更新和使用,减少数据的延时性,提高数据的使用效率。
74.与上述实施例相对应,参见图3,本技术实施例还提供一种数据交互装置300,包括:
75.第一接收模块301,用于接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入;
76.第一获取模块302,响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据;
77.第二接收模块303,用于接收第二输入,所述第二输入为接收所述差异数据的输入;
78.推送模块304,响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。
79.可选地,数据交互装置300还包括:
80.第三接收模块305,用于接收第三输入,所述第三输入为所述数据调用端对所述差异数据进行操作的输入;
81.判断模块306,响应于所述第三输入,输出判定数据交互成功的判断结果。
82.可选地,数据交互装置300还包括:
83.第四接收模块307,用于接收第四输入,所述第四输入为所述数据调用端未接收所述差异数据的输入;
84.第二获取模块308,响应于所述第四输入,重新获取所述第三输入。
85.可选地,数据交互装置300还包括:
86.更新模块309,用于根据与所述差异数据对应的目标表名和目标主键,更新所述中间库的数据表。
87.本技术实施例在不改变数据交互流程的前提下,感知数据提供端、中间库和数据调用端对于数据的处理动作,通过接收数据提供端向中间库推送数据的输入,获取交互过程中更新的差异数据,并将差异数据推送给数据调用端,让数据调用端能及时对数据进行更新和使用,减少数据的延时性,提高数据的使用效率。
88.本发明示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。存储器存储有能够被至少一个处理器执行的计算机程序,计算机程序在被至少一个处理器执行时用于使电子设备执行根据本发明实施例的方法。
89.本发明示例性实施例还提供一种存储有计算机程序的非瞬时计算机可读存储介质,其中,计算机程序在被计算机的处理器执行时用于使计算机执行根据本发明实施例的方法。
90.本发明示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,计算机程序在被计算机的处理器执行时用于使计算机执行根据本发明实施例的方法。
91.参考图4,现将描述可以作为本发明的服务器或客户端的电子设备400的结构框图,其是可以应用于本发明的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
92.如图4所示,电子设备400包括计算单元401,其可以根据存储在只读存储器(rom)402中的计算机程序或者从存储单元408加载到随机访问存储器(ram)403中的计算机程序,来执行各种适当的动作和处理。在ram 403中,还可存储设备400操作所需的各种程序和数据。计算单元401、rom 402以及ram 403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。
93.电子设备400中的多个部件连接至i/o接口405,包括:输入单元406、输出单元407、存储单元408以及通信单元409。输入单元406可以是能向电子设备400输入信息的任何类型的设备,输入单元406可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元407可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元404可以包括但不限于磁盘、光盘。通信单元409允许电子设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙tm设备、wifi设备、wimax设备、蜂窝通信设备和/或类似物。
94.计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理。例如,在一些实施例中,流量调度方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由rom 402和/或通信单元409而被载入和/或安装到电子设备400上。在一些实施例中,计算单元401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行流量调度方法。
95.用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
96.在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电
子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
97.如本发明使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
98.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
99.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
100.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

技术特征:
1.一种数据交互方法,其特征在于,包括:接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入;响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据;接收第二输入,所述第二输入为接收所述差异数据的输入;响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。2.根据权利要求1所述的数据交互方法,其特征在于,所述响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端后,还包括:接收第三输入,所述第三输入为所述数据调用端对所述差异数据进行操作的输入;响应于所述第三输入,输出判定数据交互成功的判断结果。3.根据权利要求2所述的数据交互方法,其特征在于,所述响应于所述第三输入,输出判定数据交互成功的判断结果前,还包括:接收第四输入,所述第四输入为所述数据调用端未接收所述差异数据的输入;响应于所述第四输入,重新获取所述第三输入。4.根据权利要求1所述的数据交互方法,其特征在于,所述响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据后,还包括:根据与所述差异数据对应的目标表名和目标主键,更新所述中间库的数据表。5.一种数据交互装置,其特征在于,包括:第一接收模块,用于接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入;第一获取模块,响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据;第二接收模块,用于接收第二输入,所述第二输入为接收所述差异数据的输入;推送模块,响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。6.根据权利要求5所述的数据交互装置,其特征在于,所述数据交互装置还包括:第三接收模块,用于接收第三输入,所述第三输入为所述数据调用端对所述差异数据进行操作的输入;判断模块,响应于所述第三输入,输出判定数据交互成功的判断结果。7.根据权利要求6所述的流量调度装置,其特征在于,所述数据交互装置还包括:第四接收模块,用于接收第四输入,所述第四输入为所述数据调用端未接收所述差异数据的输入;第二获取模块,响应于所述第四输入,重新获取所述第三输入。8.根据权利要求5所述的流量调度装置,其特征在于,所述数据交互装置还包括:更新模块,用于根据与所述差异数据对应的目标表名和目标主键,更新所述中间库的数据表。9.一种电子设备,包括:处理器;以及存储程序的存储器,其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权
利要求1-4中任一项所述的方法。10.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-4中任一项所述的方法。

技术总结
本发明提供一种数据交互方法,包括:接收第一输入,所述第一输入为数据提供端向中间库推送数据的输入;响应于所述第一输入,获取所述数据提供端的日志和所述中间库的数据表的差异数据;接收第二输入,所述第二输入为接收所述差异数据的输入;响应于所述第二输入,所述中间库将所述差异数据推送给数据调用端。本发明能够让数据调用端能及时对数据进行更新和使用,减少数据的延时性,提高数据的使用效率。率。率。


技术研发人员:刘兴 王钊
受保护的技术使用者:陕西永之嵩信息技术有限公司
技术研发日:2023.06.01
技术公布日:2023/9/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐