System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据同步方法、装置、介质和存储设备制造方法及图纸_技高网

数据同步方法、装置、介质和存储设备制造方法及图纸

技术编号:40259287 阅读:8 留言:0更新日期:2024-02-02 22:50
本公开提供了一种数据同步方法,可以应用于大数据技术领域和金融科技技术领域。该数据同步方法包括:响应于接收到由列式数据库的存储引擎发送的预提交请求,从预提交请求中解析出事务标识,其中,事务标识用于表征第二客户端针对第一数据的目标操作;在第一客户端中同步针对第一数据的目标操作,得到第二数据;向存储引擎发送表征目标操作执行成功的确认信息,以便存储引擎在接收确认信息后生成提交请求;以及响应于接收到由存储引擎的发送的提交请求,在第一客户端存储第二数据。本公开还提供了一种数据同步装置、设备、存储介质和程序产品。

【技术实现步骤摘要】

本公开涉及大数据和金融科技,更具体地涉及一种数据同步方法、装置、设备、介质和程序产品。


技术介绍

1、随着大数据技术的不断发展,对于数据质量和数据存储的需求越来越高。一般将数据存储在数据库中,通过控制数据库引擎对数据进行修改及查询等操作。

2、在相关技术中,为了满足处理效率的需求,可以通过数据库引擎对数据进行并发操作,以提高数据的处理效率。但是当数据库引擎通过多个并发操作对同一数据进行修改时,会出现数据不一致的问题,并且由于数据库引擎在故障恢复和事务处理方面的能力有限,影响系统的可用性和稳定性。


技术实现思路

1、鉴于上述问题,本公开提供了的数据同步方法、装置、设备、介质和程序产品。

2、根据本公开的第一个方面,提供了一种数据同步方法,应用于第一客户端,包括:响应于接收到由列式数据库的存储引擎发送的预提交请求,从上述预提交请求中解析出事务标识,其中,上述事务标识用于表征第二客户端针对第一数据的目标操作;在上述第一客户端中同步针对上述第一数据的目标操作,得到第二数据;向上述存储引擎发送表征上述目标操作执行成功的确认信息,以便上述存储引擎在接收上述确认信息后生成提交请求;以及响应于接收到由上述存储引擎的发送的提交请求,在上述第一客户端存储上述第二数据。

3、根据本公开的实施例,述在上述第一客户端中同步针对上述第一数据的目标操作,得到第二数据,包括:从第一地址中获取上述第一数据;对上述第一数据执行上述目标操作,得到第二数据;以及将上述第二数据存储于第二地址,其中,上述第二地址与存储上述第一数据的第一地址不同。

4、根据本公开的实施例,上述响应于接收到由上述存储引擎的发送的提交请求,在上述第一客户端存储上述第二数据,包括:从上述第二地址中获取上述第二数据,并将上述第二数据存储至上述第一地址。

5、根据本公开的实施例,上述目标操作包括新增或删除;该方法还包括:在上述第一数据中新增或删除目标数据之前,确定上述第一数据的第一状态信息;在上述第一数据中新增或删除目标数据之后,确定上述第二数据的第二状态信息;根据上述第一状态信息和上述第二状态数据,确定针对上述目标数据的完整性结果;以及在上述完整性结果表征上述目标数据完全存储至上述第一客户端、或者上述目标数据完全从上述第一客户端删除的情况下,生成上述确认信息。

6、根据本公开的第二个方面,提供了一种数据同步方法,应用于列式存储数据库的存储引擎,包括:响应于接收到来自第二客户端的事务请求,生成与上述事务请求对应的事务标识,其中,上述事务请求用于在除上述第二客户端之外的m个第一客户端同步针对第一数据的目标操作,m为正整数;根据上述事务请求的事务标识,生成预提交请求;向每个上述第一客户端发送上述预提交请求,以便每个上述第一客户端同步针对上述第一数据的目标操作,得到第二数据;以及响应于接收到来自m个上述第一客户端的确认信息,向每个上述第一客户端发送提交请求,以便在每个上述第一客户端存储上述第二数据,上述确认信息用于表征上述目标操作执行成功

7、根据本公开的实施例,上述方法还包括:响应于接收到由上述第m个第一客户端发送的故障信息,向除第m个第一客户端之外的每个上述第一客户端发送上述提交请求,以便在除第m个第一客户端之外的每个上述第一客户端存储上述第二数据,m为小于m的正整数;响应于接收到由上述第m个第一客户端发送的故障恢复信息,确定上述第m个第一客户端的故障时长;在确定上述故障时长未超过预定时长的情况下,获取在上述第m个第一客户端故障期间新增的n个事务标识,n为正整数;以及在上述第m个第一客户端中同步上述新增的n个事务标识对应的操作。

8、根据本公开的实施例,上述方法还包括:响应于检测到上述第m个第一客户端针对确认信息的接收时长超过预定时长、或者接收到由上述第m个第一客户端发送的执行失败信息,向除第m个第一客户端之外的每个上述第一客户端发送操作取消请求,以便除第m个第一客户端之外的每个上述第一客户端取消针对上述第一数据的目标操作;以及响应于接收到除第m个第一客户端之外的(m-1)个上述第一客户端的操作取消成功信息,向上述第二客户端返回同步失败信息。

9、本公开的第三方面提供了一种数据同步装置,应用于第一客户端,包括:解析模块,用于响应于接收到由列式数据库的存储引擎发送的预提交请求,从上述预提交请求中解析出事务标识,其中,上述事务标识用于表征第二客户端针对第一数据的目标操作;同步模块,用于在上述第一客户端中同步针对上述第一数据的目标操作,得到第二数据;确认模块,用于向上述存储引擎发送表征上述目标操作执行成功的确认信息,以便上述存储引擎在接收上述确认信息后生成提交请求;以及存储模块,用于响应于接收到由上述存储引擎的发送的提交请求,在上述第一客户端存储上述第二数据。

10、本公开的第四方面提供了一种数据同步装置,应用于列式存储数据库的存储引擎,包括:第一生成模块,用于响应于接收到来自第二客户端的事务请求,生成与上述事务请求对应的事务标识,其中,上述事务请求用于在除上述第二客户端之外的m个第一客户端同步针对第一数据的目标操作,m为正整数;第二生成模块,用于根据上述事务请求的事务标识,生成预提交请求;第一请求发送模块,用于向每个上述第一客户端发送上述预提交请求,以便每个上述第一客户端同步针对上述第一数据的目标操作,得到第二数据;以及第二请求发送模块,用于响应于接收到来自m个上述第一客户端的确认信息,向每个上述第一客户端发送提交请求,以便在每个上述第一客户端存储上述第二数据,上述确认信息用于表征上述目标操作执行成功。

11、本公开的第五方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得一个或多个处理器执行上述数据同步方法。

12、本公开的第六方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述数据同步方法。

13、本公开的第七方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述数据同步方法。

14、根据本公开的实施例,通过在第二客户端针对第一数据进行目标操作时,向第一客户端发送预提交请求,实现分布式系统内目标操作的同步;通过针对第一数据进行目标操作得到第二数据,但并不实际提交第二数据,防止出现多个第一客户端中的部分第一客户端执行目标操作失败,导致多个客户端中的第一数据不一致;通过向存储引擎发送确认信息,使得存储引擎对多个第一客户端执行目标操作的情况进行判断,在确定多个第一客户端执行目标操作成功的情况下才发送提交请求,第一客户端在接收到提交请求的情况下才对第二数据进行存储,保证了数据的一致性。

本文档来自技高网...

【技术保护点】

1.一种数据同步方法,应用于第一客户端,所述方法包括:

2.根据权利要求1所述的方法,其中,所述在所述第一客户端中同步针对所述第一数据的目标操作,得到第二数据,包括:

3.根据权利要求2所述的方法,其中,所述响应于接收到由所述存储引擎的发送的提交请求,在所述第一客户端存储所述第二数据,包括:

4.根据权利要求1所述的方法,其中,所述目标操作包括新增或删除;该方法还包括:

5.一种数据同步方法,应用于列式存储数据库的存储引擎,所述方法包括:

6.根据权利要求1所述的方法,还包括:

7.根据权利要求1所述的方法,还包括:

8.一种数据同步装置,应用于第一客户端,所述装置包括:

9.一种数据同步装置,应用于列式存储数据库的存储引擎,所述装置包括:

10.一种电子设备,包括:

11.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~7中任一项所述的方法。

12.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~7中任一项所述的方法。

...

【技术特征摘要】

1.一种数据同步方法,应用于第一客户端,所述方法包括:

2.根据权利要求1所述的方法,其中,所述在所述第一客户端中同步针对所述第一数据的目标操作,得到第二数据,包括:

3.根据权利要求2所述的方法,其中,所述响应于接收到由所述存储引擎的发送的提交请求,在所述第一客户端存储所述第二数据,包括:

4.根据权利要求1所述的方法,其中,所述目标操作包括新增或删除;该方法还包括:

5.一种数据同步方法,应用于列式存储数据库的存储引擎,所述方法包括:

6.根据权利要求1所...

【专利技术属性】
技术研发人员:王泽洋李芳李兰彬黄镜澄
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1