当前位置: 首页 > 专利查询>标记公司专利>正文

在分布式数据库中的一般化的协调制造技术

技术编号:16330834 阅读:36 留言:0更新日期:2017-10-01 21:59
本发明专利技术的实施例包括用于在分布式数据库中的数据库事务的一般化的一致性控制。在分布式数据库系统中,特定协调过程通常被需要并被编码为每个可能无法解决的事件。本文所描述的系统和方法启用多种类型的无法解决的事件的一般特征,从而消除和/或减少了需要为每个特定事件编写单个代码的需要。

Generalized coordination in distributed databases

Embodiments of the present invention include generalized consistency control for database transactions in a distributed database. In a distributed database system, a particular coordination process is usually needed and coded for each potentially impossible event. The systems and methods described in this article enable the general characteristics of many types of non resolving events, thus eliminating and / or reducing the need for writing individual code for each specific event.

【技术实现步骤摘要】
【国外来华专利技术】优先权要求本申请要求2011年08月01日递交的第61/513,932号,名称为“ReconcilingaDistributedDatabasefromHierarchicalViewpoints”,代理案号为58520-8006.US00的美国临时申请,其内容以引用方式被明示地合并于此。对相关申请的交互引用本申请涉及题为“ReconcilingaDistributedDatabasefromHierarchicalViewpoints”,也是由贾森·卢卡斯专利技术的,于2012年8月1日提交的,代理人案号为58520-8006.US01的共同未决的美国专利申请________,其的内容以引用的方式被明示地合并于此。本申请涉及题为“SystemsandMethodsforAsynchronousDistributedDatabaseManagement”,也由贾森·卢卡斯专利技术的,于2012年8月1日提交的,代理人案号为58520-8008.US01的共同未决的美国专利申请________,其内容以引用的方式被明示地合并于此。
本专利技术的具体实施例一般涉及数据库管理技术以及,更具体地说,在分布式数据库中的一般化的协调
技术介绍
分布式数据库是一种不是所有的存储装置都被连接到共同的中央处理单元(CPU)的数据库。分布式数据库可以被存储在位于同一物理位置的多台计算机中,或可以分散在处于多个物理位置的互连的计算机网络。分布式系统的位置或场所可能分布在大的区域(如美国或世界),或在一个小的区域(如建筑物或校园)。在分布式数据库中的数据集合也可以分布在多个物理位置。通常情况下,分布式数据库系统的目的是让很多用户(客户端或应用)在相同时间的数据集合中的相同信息的使用,同时使它看起来好像每个用户独占访问整个数据集合。分布式数据库系统应以性能的损失最小(潜伏期)和最大事务吞吐量来提供这项服务。也就是说,在位置A的用户必须能够访问(也许更新)在位置B的数据。如果用户更新信息,该更新必须被整个传播分布式数据库系统的资源以维护在分布式数据库系统中的一致性。更新(或数据库事务)都必须在分布式数据库系统中串行化以维护一致性。如果事务以串行顺序被执行,同时冲突永远不会发生,因为每一个事务将是在特定时间的系统上被执行的唯一事务,并有专用的系统资源。新的事务将看到以前事务的结果,再加上由该事务作出的变化,但永远不会看到那些尚未启动的事务的结果。在操作中,事务通常同时执行,并且要求到相同资源的同时访问和修改。因此,维护在分布式数据库系统中的一致性可能非常复杂并且经常导致不可接受的响应时间。当前存在各种同时控制机制,例如,开放式同时控制机制,其通过事后检测无效使用进行操作。这些类型的机制的基本思想是把数据库事务的生命周期分为三个阶段:读取、验证和发布。在读阶段,事务获取资源而不计冲突或有效性,但它维护它采时用的资源集合(读集)的纪录和它已经修改资源集合(写集)。在验证阶段,开放式同时控制机制检查事务的读集,并决定那些资源的当前状态是否已经改变。如果读集并没有改变,那么事务的开放式的假设被证实是正确的,并且系统发布写集,提交事务的更改。如果读集有变化,那么事务的开放式假设被证明是错误的,并且系统将中止导致所有更改的损失的事务。为了避免其假设被证明是错误的事务的不必要的中止,现有技术系统的目的是为了协调不正确的假设。不幸的是,迄今为止,这些机制要求特定的协调程序为每个可能无法解决的事件被单独编码。
技术实现思路
在分布式数据库中的数据库记事务的一般化的一致性控制的系统和方法被在此描述。如上所讨论的,在分布式数据库系统中的特定协调过程通常被需要并被为每个可能无法解决的事件进行编码。本公开的目标是启用多种类型的不可解决的事件的一般特征,从而消除和/或减少了为每个特定无法解决的事件编写单个代码的需要。根据各种实施例,数据库管理系统(DBMS)通过从分布式数据库系统中的多个客户端系统接收与多个事务序列相关联的多个数据库事务,来一般化在分布式数据库中的数据库事务的一致性控制,其中每个事务序列指示一个或多个未提交的数据库事务并且每个未提交的数据库事务包括要求在分布式数据库系统中的多个资源之间达成共识以用于协调的一个或多个断言。DBMS可以从多个事务序列的两个或更多事务序列检测与两个或更多未提交数据库事务相关联的断言之间的不一致性,其中不一致性指示在关于一个或多个所述断言的有效性的所述多个资源之间的共识的缺乏。DBMS可以处理与两个或更多事务序列相关联的两个或更多断言以产生语义保持转换,其中语义保持转换,当被应用到一个或多个的两个或更多断言的时候,消除了不一致性。在一个实施例中,DBMS可以通过将语义保持转换应用至一个或多个的断言来协调数据库事务从而一般化一致性控制。在一个实施例中,语义保持转换指示改变,改变当被应用到一个或多个断言时消除了不一致性。在一个实施例中,多个事务序列的两个或更多事务序列被协调为全局事务序列。在一个实施例中,DBMS可以通过处理一组规则以生成语义保持转换来一般化一致性控制。一组规则包括用于处理与两个或更多事务序列相关联的两个或更多断言以产生语义保持转换的一般化的指示。在一个实施例中,DBMS可以通过发送消息给一个或多个的与两个或更多断言相关联的客户端系统来请求用户输入用于解决不一致性,以及接收指示所述用户输入的响应来一般化一致性控制,两个或更多断言与两个或更多事务序列相关联。在一个实施例中,DBMS可以通过处理用户输入和与两个或更多事务序列相关联的两个或更多断言,以生成语义保持转换来一般化一致性控制。在一个实施例中,资源包括在分布式数据库系统中的其它数据库管理系统。根据各种实施例,DBMS可以通过从多个事务序列的两个或更多事务序列检测与两个或更多数据库事务相关联的断言之间的不一致性来一般化在分布式数据库中的数据库事务的一致性控制,其中不一致性指示在关于一个或多个的断言的有效性的多个资源之间的共识的缺乏。DBMS可以处理与两个或更多事务序列相关联的两个或更多断言以产生语义保持转换,其中语义保持转换,当被应用到一个或多个的两个或更多断言的时候,消除了不一致性。DBMS可以通过将语义保持转换应用到一个或多个断言协调未提交的数据库事务。根据各种实施例,DBMS可以一般化在分布式数据库中的数据库事务的本文档来自技高网
...

【技术保护点】
一种在分布式数据库中的一致性控制的方法,所述方法包括:在数据库管理系统,从所述分布式数据库系统中的多个客户端系统接收与多个事务序列相关联的多个数据库事务,其中每个事务序列指示一个或多个未提交的数据库事务并且每个未提交的数据库事务包括要求在所述分布式数据库系统中的多个资源之间达成共识以用于协调的一个或多个断言;在所述数据库管理系统,从所述多个事务序列的两个或更多事务序列检测与两个或更多未提交数据库事务相关联的断言之间的不一致性,其中所述不一致性指示在关于一个或多个所述断言的所述有效性的所述多个资源之间的共识的缺乏;以及在所述数据库管理系统,处理与所述两个或更多事务序列相关联的所述两个或更多断言以产生语义保持转换,其中所述语义保持转换,当被应用到一个或多个的所述两个或更多断言的时候,消除了所述不一致性。

【技术特征摘要】
【国外来华专利技术】2011.08.01 US 61/513,9321.一种在分布式数据库中的一致性控制的方法,所述方法包括:
在数据库管理系统,从所述分布式数据库系统中的多个客户端系统接
收与多个事务序列相关联的多个数据库事务,其中每个事务序列指示一个
或多个未提交的数据库事务并且每个未提交的数据库事务包括要求在所述
分布式数据库系统中的多个资源之间达成共识以用于协调的一个或多个断
言;
在所述数据库管理系统,从所述多个事务序列的两个或更多事务序列
检测与两个或更多未提交数据库事务相关联的断言之间的不一致性,其中
所述不一致性指示在关于一个或多个所述断言的所述有效性的所述多个资
源之间的共识的缺乏;以及
在所述数据库管理系统,处理与所述两个或更多事务序列相关联的所
述两个或更多断言以产生语义保持转换,其中所述语义保持转换,当被应
用到一个或多个的所述两个或更多断言的时候,消除了所述不一致性。
2.如权利要求1所述的方法,进一步包括:
通过将所述语义保持转换应用至所述一个或多个的断言,协调所述数
据库事务。
3.如权利要求1所述的方法,其中所述语义保持转换指示改变,当被
应用到所述一个或多个断言时,所述改变消除了所述不一致性。
4.如权利要求1所述的方法,其中所述多个事务序列的所述两个或更
多事务序列被协调为全局事务序列。
5.如权利要求1所述的方法,进一步包括:
在所述数据库管理系统处理一组规则,以生成所述语义保持转换。
6.如权利要求5所述的方法,其中所述一组规则包括用于处理与所述
两个或更多事务序列相关联的所述两个或更多断言,以产生所述语义保持
转换的一般化的指示。
7.如权利要求1所述的方法,还包括:
在所述数据库管理系统发送消息给与所述两个或更多断言相关联的一
个或多个的所述客户端系统,来请求用户输入用于解决所述不一致性,所
述两个或更多断言与所述两个或更多事务序列相关联;以及
在所述数据库管理系统接收指示所述用户输入的响应。
8.如权利要求7所述的方法,进一步包括:
在所述数据库管理系统处理所述用户输入和与所述两个或更多事务序
列相关联的所述两个或更多断言,以生成所述语义保持转换。
9.如权利要求1所述的方法,其中所述资源包括在所述分布式数据库
系统中的其它数据库管理系统。
10.如权利要求1所述的方法,其中所述资源包括在所述分布式数据
库系统中的存储管理系统。
11.一种在分布式数据库系统中的一致性控制的方法,所述方法包括:
在数据库管理系统,从多个事务序列的两个或更多事务序列检测与两
个或更多数据库事务相关联的断言之间的不一致性,其中所述不一致性指
示在关于一个或多个的所述断言的所述有效性的所述多个资源之间的共识
的缺乏;
在所述数据库管理系统,处理与所述两个或更多事务序列相关联的所
述两个或更多断言以产生语义保持转换,其中所述语义保持转换,当被应
用到一个或多个的所述两个或更多断言的时候,消除了所述不一致性;以

通过将所述语义保持转换应用到所述一个或多个断言,协调所述未提

\t交的数据库事务。
12.如权利要求11所述的方法,进一步包括:
在所述数据库管理系统,从在所述分布式数据库系统中的多个客户端
系统接收与所述多个事务相关联的所述多个数据库事务,其中每个事务序
列指示一个或多个未提交的数据库事务以及每个未提交的数据库事务包括
要求在所述分布式数据库系统中的多个资源之间达成共识以用于协调的一
个或多个断言。
13.如权利要求11所述的方法,其中所述语义保持转换指示改变,所
述改变当被应用到所述一个或多个断言时消除了所述不一致性。
14.如权利要求11所述的方法,其中所述多个事务序列的所述两个或
更多事务序列被协调为全局事务序列。
15.如权利要求11所述的方法,进一步包括:
在所述数据库管理系统处理...

【专利技术属性】
技术研发人员:詹森·卢卡斯
申请(专利权)人:标记公司
类型:发明
国别省市:美国;US

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

1