懒副本协议也是一种变异,它并不试图在更新数据项的事务上下文中涉及的数据项的所有副本上实施写操作,而是将更新实施在一个或几个副本上,随后将改变传递给其他副本。拥有关系参数用于定义更新副本拷贝的许可。基于这四个参数,可以将懒副本协议分为两类。第一类由懒副本协议方法构成,所有副本都是可更新的。这种情况下,副本上存在群组关系。为这种模式实现的公共传播策略是延迟立即。刷新期间所有接收到的刷新事务都要执行。......
2023-10-28
严格副本控制协议强加单副本等价性(one-copy equivalence)作为正确性依据。它要求所有的数据库副本都是互一致的。ROWA协议是强加单副本一致性的协议,它把一个逻辑读变成对任意一个副本的读操作,把一个逻辑写变成对所有副本的写操作,从而让所有副本有同一个值。这样,当提交这个更新事务时,所有副本的值都是一样的。
ROWA协议简单优雅,但有一个致命缺陷:只要有一个副本不能用,更新事务就不能终止。所以在可用性上就出现了问题。
有一种替代的方法称为读-写均可用(read one write all available,ROWA-A)协议。基本思路是,该写命令在所有可用副本上执行,事务终止。那时不能用的副本在变得可用时将新更新的值再传播给它。
实际上已经提出了这个协议的不少变种,有一个协议称为可用副本协议。这里,若要更新数据x,协调者启动一个事务T,向所有有x副本的节点发送WT(x)等待确认(或者拒绝)消息。如果在其获得所有响应前超时,就认为该副本不可用,在可用节点上继续实施更新。这些不可用节点在其恢复时更新其数据库到最后状态。很可能这些节点根本不知道T的存在以及T对x进行的更新。
有两件事需要强调:首先,有可能在协调者认为不可用的节点里已经更新了x但是其答复信息没有到达协调者。其次,有些节点在T启动时已经不可用,接着恢复,开始执行这个事务。因此,协调者在提交前需进行验证。(www.chuimin.cn)
(1)协调者检验是否自己认为不可用的节点依然不可用,方法是发送查询消息给所有节点。那些可用的节点就会给出回答。如果协调者从其中一个原来不可用的节点得到答复,就夭折这个事务,因为它不知道原来不可用的节点原来的状态:有可能这个节点其实一直是可用的,它实施了原始的WT(x)操作但是答复消息延迟了,或者它确实在T启动时不可用,但可用时却去执行另外一个事务S的操作Ws(x)了。后一种情况会导致非可串行化。
(2)如果T的协调者没从节点得到任何响应,则认为它不可用了,然后检查一下以保证当执行WT(x)时可用的节点是否仍然可用。如果答案为是,则T执行提交。
ROWA-A协议比简单ROWA协议更能抗故障,包括网络分割。
另一类严格副本控制协议是基于选举的。本质上,每个读/写操作必须获得充分的能够提交的选举人数。这些协议可以是保守的也可以是乐观的。
有关分布式数据库技术的文章
懒副本协议也是一种变异,它并不试图在更新数据项的事务上下文中涉及的数据项的所有副本上实施写操作,而是将更新实施在一个或几个副本上,随后将改变传递给其他副本。拥有关系参数用于定义更新副本拷贝的许可。基于这四个参数,可以将懒副本协议分为两类。第一类由懒副本协议方法构成,所有副本都是可更新的。这种情况下,副本上存在群组关系。为这种模式实现的公共传播策略是延迟立即。刷新期间所有接收到的刷新事务都要执行。......
2023-10-28
在美国加利福尼亚州库珀提诺市总部的苹果公司,有着严密的保安措施。这样的措施应该就是乔布斯完全掌控产品宣传以及新闻引导的手段之一,也可见苹果公司独特的保密制度及强烈的控制欲。为此,苹果跟与会的员工都签订了保密协议。......
2024-05-06
如果启动中的节点还不是网络的一部分,则会计算一个尚未指定给其他节点的随机ID编号。最高层的子树由整棵树不包含自己的树的另一半组成;下一层子树由剩下部分不包含自己的一半组成;依此类推,直到分割完整棵树。Kademlia协议确保每个节点知道其各子树的至少一个节点,只要这些子树非空。Kademlia为节点和键使用160比特的ID。例如,令x=010101,y=110001,则这两个节点的距离为100100(二进制),即十进制为32+4=36。......
2023-10-28
下面讨论一个典型的提交协议,即两阶段提交协议。这种模式用到分布式事务管理就是两阶段提交协议。参与方接收到prepare消息后,就会检查自己能否提交。图10.132PC协议时协调者和参与者的状态转换图由图10.13可知:第一,2PC协议允许参与者单边夭折一个事务,直到它决定加入肯定选择前,它都是自由的。图10.14集中式2PC协议的通信结构实现时,2PC协议可以使用许多种不同的通信方式。图10.15线形2PC协议的通信结构协调者发送″prepare″消息给参与者2。......
2023-10-28
有多种并发控制算法的分类方式。按照同步原语可以将并发控制算法分成两类:基于互斥存取共享数据的算法和将事务排序按规则执行的算法。图9.10并发控制算法的分类●在主本封锁中,将每个封锁单元的某个副本指定为主本,在访问该单元时主本必须封锁。这些算法可以分成基本TO、多版本TO和保守TO等。实际上,在某些基于封锁的算法中也使用时标,因为这样可以改进效率和并发性,我们称为混合算法。......
2023-10-28
在数据库安全里,访问控制扮演着重要角色。访问控制就提供这种保护功能。访问控制系统需要关注三个方面:访问控制策略、访问控制模型和访问控制机制。访问控制策略定义高级规则,用于核实访问请求是否被核准或拒绝。访问控制策略通过访问控制模型来实现规范,通过访问控制机制来强制实施。这样,访问策略改变后,访问控制机制依然有效。访问控制系统主要具有如下特征。这些特征给访问控制机制的设计与开发迎来了新的挑战。......
2023-10-28
基于法定人数选举法可以作为一个副本控制方法,也可作为提交方法在网络分割时保证事务的原子性。事务提交前,必须获得提交法定选举人数Vc的通过。后两条规则说明选举的两条规则。在协调者从PRECOMMIT状态移到COMMIT状态和发送″global-commit″命令时,协调者必须获得提交选举人数参与者的同意,这是为了满足规则。图10.193PC协议在选举人方案中的状态转换基于选举人提交算法,有两点是很重要的。......
2023-10-28
强制安全策略采用通过集中授权施加以规则为基础的访问控制。一个访问类c1的级别大于等于另一个访问类c2,则称为c1支配c2。基于保密强制策略:是为了保护数据机密性。强制策略的最大缺陷是它们只能控制通过公开通道的信息流,即合法途径操作的通道。主体提交的访问请求按以下两条原则进行评估。例如,假设有两个完整性级别Crucial和Important,且C>I,同时和主体与对象关联的分类集合是{Admin,Medical}。......
2023-10-28
相关推荐