【技术实现步骤摘要】
【国外来华专利技术】使用时间戳对网络中的事务进行分布式处理
[0001]优先权申明
[0002]本申请要求于2020年5月30日提交的申请号为63/032,589的美国临时申请的优先权的权益,其全部内容通过引用并入本文中。
[0003]本专利技术大体上涉及网络中事务的分布式处理。
技术介绍
[0004]在传统的数据库系统中,数据库软件安装在一台机器上。这支持系统管理并发用户,同时确保他们观察数据库的一致状态,并确保并发和潜在冲突的修改保持这种一致性。但是,传统的方法将数据库系统的性能容量限制在单机的容量上,这在架构中造成了单点故障。随着全球业务和服务的兴起,增加这种容量的要求推动了分布式数据库系统的出现,在这种系统中,数据被小心地分割(分区)在成百上千台机器中,这些机器可以物理地分布在地理区域,例如大陆。
[0005]在具有跨越地理区域分布的超过数十亿用户的系统中,数据一致性要求至关重要。已经开发了许多方案来解决这种数据一致性要求。但是,在这些相互竞争的目标之间取得良好的平衡是一个难题。在当前可用的系统中,这可以通过权衡一致性以获得较好的延迟,或者通过使数据库事务适用于小的事务子类来实现。
技术实现思路
[0006]根据本专利技术的一个方面,提供了一种用于处理事务序列以在分布式系统中维护一致性和延迟的计算机实现的方法,包括:节点接收与第一时间戳相关联的数据记录的第一事务;所述节点标识与所述第一事务冲突的所述数据记录的第二事务,其中,所述标识的第二事务具有第二时间戳,所述第二时间戳是所述节点中存储的 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种用于处理事务序列以在分布式系统中维护一致性和延迟的计算机实现的方法,其特征在于,包括:节点接收与第一时间戳相关联的数据记录的第一事务;所述节点标识与所述第一事务冲突的所述数据记录的第二事务,其中,所述标识的第二事务具有第二时间戳,所述第二时间戳是所述节点中存储的最近事务;所述节点接收对所述第二事务的传输状态的确定;所述节点基于对所述传输状态的所述确定,发送所述第一事务的结果,以完成从客户端接收的所述第一事务,在所述第一事务的完整传输时间段大于或等于所述分布式系统的最小事务延迟(minimum transaction latency,MTL)之后,所述第一事务完成。2.根据权利要求1所述的计算机实现的方法,其特征在于,所述第一时间戳和所述第二时间戳包括不确定性窗口,并且所述不确定性窗口基于发布所述第一时间戳或所述第二时间戳的时间戳服务处的标准时钟同步误差。3.根据权利要求2所述的计算机实现的方法,其特征在于,所述分布式系统中所有时间戳服务处的所述标准时钟同步误差的最大值小于最小事务延迟(minimum transaction latency,MTL)。4.根据权利要求1所述的计算机实现的方法,其特征在于,所述第一时间戳包括第一序列号和第一不确定性窗口,所述第二时间戳包括第二序列号和第二不确定性窗口。5.根据权利要求4所述的计算机实现的方法,其特征在于,还包括分别根据所述第一序列号和所述第二序列号对所述第一事务和所述第二事务顺序地排序,其中,所述第一时间戳和所述第二时间戳由第一时间戳服务发布。6.根据权利要求5所述的计算机实现的方法,其特征在于,所述第一时间戳和所述第二时间戳由不同的时间戳服务实例发布,当所述序列号被绑定时,所述绑定被时间戳服务实例ID打破。7.根据权利要求1所述的计算机实现的方法,其特征在于,当所述第一事务为读取操作,所述第二事务为写入意图操作时,所述第二事务的所述传输状态被确定为提交,发送给所述客户端的所述结果为写入意图操作的数据记录;当所述第一事务为写入操作,所述第二事务为写入意图操作时,所述第二事务的所述传输状态被确定为提交,发送给所述客户端的所述结果是成功消息。8.根据权利要求1所述的计算机实现的方法,其特征在于,当所述第一事务为读取操作,所述第二事务为写入意图操作时,所述第二事务的所述传输状态被确定为中止,发送给所述客户端的所述结果为所述写入意图操作之前提交的所述数据记录;当所述第一事务为写入操作,所述第二事务为写入意图操作时,所述第二事务的所述传输状态被确定为中止,发送给所述客户端的所述结果是成功消息。9.根据权利要求1所述的计算机实现的方法,其特征在于,所述第一事务为读取操作,所述第二事务为写入意图操作,
所述第二事务的所述传输状态被确定为进行中,所述方法还包括:根据分别分配的优先级中的最低优先级,中止所述第一事务或所述第二事务中的一个;当所述第一事务的优先级和所述第二事务的优先级相同时,根据所述第一时间戳和所述第二时间戳中的最旧的时间戳中止所述第一事务和所述第二事务中的一个。10.根据权利要求9所述的计算机实现的方法,其特征在于,当所述第二事务被中止时,将所述第二事务标记为中止并发布异步传输清理,发送给所述客户端的所述结果为所述写入意图操作之前提交的所述数据记录;当所述第一事务被中止时,所述发送的结果是所述读取操作失败。11.根据权利要求9所述的计算机实现的方法,其特征在于,当所述第一事务和所述第二事务是同一事务时,响应于所述读取操作,所述写入意图被返回。12.根据权利要求1所述的计算机实现的方法,其特征在于,所述第一事务为写入操作,所述第二事务为写入意图操作,所述第二事务的所述传输状态被确定为进行中,所述方法还包括:根据分别分配的优先级中的最低优先级,中止所述第一事务或所述第二事务中的一个;当所述第一事务的优先级和所述第二事务的优先级相同时,根据所述第一时间戳和所述第二时间戳中的最旧的时间戳中止所述第一事务和所述第二事务中的一个。13.根据权利要求12所述的计算机实现的方法,其特征在于,当所述第二事务被中止时,将所述第二事务标记为中止并发布异步传输清理,发送给所述客户端的所述结果是成功消息;当所述第一事务被中止时,所述发送的结果是失败消息。14.一种用于处理事务序列以在分布式系统中...
【专利技术属性】
技术研发人员:峰,
申请(专利权)人:华为云计算技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。