数据同步方法、装置、电子设备、系统及存储介质与流程

文档序号:33764389发布日期:2023-04-18 19:03阅读:49来源:国知局
数据同步方法、装置、电子设备、系统及存储介质与流程

本发明涉及数据处理,特别是涉及一种数据同步方法、装置、电子设备、系统及存储介质。


背景技术:

1、由于公司业务板块的增加,数据的调用越来越繁杂,例如:某项目需要调用b业务和c业务的数据,则需要b业务和c业务的数据均提供读取接口。为了解决上述问题,现有技术设立第三数据库,将公司所有业务板块下的数据同步到第三数据库,通过第三数据库提供接口同时调用所有需要的业务板块数据。

2、以第一数据库为例,在第一数据库,如用户上传视频作品,每个用户对应唯一的一个视频号,用户可以在该视频号下上传多个视频作品,此时,用户信息记录在第一数据库内,视频作品信息记录在第二数据库内,统计每个用户上传的视频作品总数,将其同步到第三数据库的过程中,现有技术中是通过调用第二数据库的接口来获取第二数据库的视频作品信息,因为接口存在每秒查询率(queries per second,qps)的限制,因此一次只能针对单个用户数据的视频作品信息进行调用,统计完该用户上传的视频作品总数后,将这一统计信息同步至第三数据库,而后选择下一个用户进行同样的操作,直到遍历结束。

3、然而,由于用户和视频作品不断增长,以及调用第二数据库信息的接口存在qps的限制,使得要将所有用户及其上传的视频作品总数均同步到第三数据库的时间过长,导致数据更新不及时,影响其他业务的数据调用。


技术实现思路

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、可选地,所述第一生成子模块,用于包括:

40、第三获取子模块,用于获取所述目标视频记录的全量用户标识;

41、第二生成子模块,用于将所述目标视频记录的所述全量用户标识去重后生成全量目标用户标识;

42、第四获取子模块,用于针对所述全量目标用户标识的任一目标用户标识,调用统计函数获取所述目标用户标识在所述目标视频记录包含的视频记录总数;

43、第三生成子模块,用于在检测到所述全量目标用户标识的所述视频记录总数获取完成的情况下,根据所述全量目标用户标识、所述视频记录总数生成所述全量用户信息对应的视频记录。

44、可选地,所述从第二数据库获取的全量视频记录的每一条视频记录还包括:视频状态,其中,所述视频状态包括:发布成功、发布失败;

45、所述第四获取子模块还包括:

46、第一检测子模块,用于在检测到所述视频状态为发布成功的情况下,调用所述统计函数在所述目标用户标识统计的所述视频记录总数上加一;

47、第二检测子模块,用于在检测到所述视频状态为发布失败的情况下,保持所述目标用户标识统计的所述视频记录总数不变。

48、可选地,所述第三模块还包括:

49、第五获取子模块,用于获取所述第一数据库的二进制日志;

50、第一存储子模块,用于在检测到所述二进制日志中存在针对所述全量用户信息对应的视频记录的更新事件的情况下,将所述全量用户信息对应的视频记录存储到第三数据库中,以便不同业务读取。

51、可选地,所述第一存储子模块还包括:

52、第一发送子模块,用于在检测到所述二进制日志中存在针对所述全量用户信息对应的视频记录的更新事件的情况下,将所述全量用户信息对应的视频记录发送至消息中间件;

53、第二存储子模块,用于通过所述消息中间件将所述全量用户信息对应的视频记录存储到第三数据库中,以便不同业务读取。

54、本发明实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

55、存储器,用于存放计算机程序;

56、处理器,用于进行存储器上所存放的程序时,进行上述任一所述的数据同步方法。

57、在本发明实施的第四方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机进行上述任一所述的数据同步方法。

58、在本发明实施的第五方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机进行上述任一所述的数据同步方法。

59、本发明实施例提供的一种数据同步方法,通过调用大数据同步工具从第一数据库获取视频应用对应的全量用户信息,从第二数据库获取全量视频记录,通过大数据同步工具一次性获取全部的用户信息和视频记录,避免了一次只能进行单个用户数据的调用,浪费时间,从全量视频记录中获取全量用户信息对应的视频记录,可以实现针对性的筛选出用户信息对应的视频记录,减少了无关视频记录的干扰,通过将全量用户信息对应的视频记录存储到第三数据库中,从而实现了数据集中同步,方便了不同业务的调用,也减轻了对于第一数据库的依赖,综上所述,本实施例通过调用大数据同步工具可以一次性获取全部的用户信息和视频记录,在筛选到全量用户信息对应的视频记录后同步至第三数据库,从而实现了第三数据库中数据的快速更新,不仅节约时间也方便了不同业务的调取。

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