冲突解决方案概念和体系结构——高级复制

文档在这一章介绍了冲突解决方案的概念。

 

 

无论是多主复制环境还是可更新物化视图复制环境,只要有两个以上的站点存在同时的写操作,就可能导致数据的不一致,为了保证各个站点上的数据统一性,就必须设定冲突解决方案。

其中多主复制每个主站点都会在出现数据冲突时根据预设的冲突解决方案来解决数据的冲突。而物化视图复制环境只在主站点和可更新的主物化视图站点运行冲突解决方案。

根据冲突的类型不同,可以分为更新冲突、唯一冲突和删除冲突。

更新冲突指的是两个或更多站点在几乎同时(多主复制是在两个主站点将修改推到对方之前,而物化视图复制则是在物化视图刷新之前)修改了同一条记录。Oracle预设了LAST TIMESTAMPOVERWRITEADDITIVEAVERAGEDISCARDEARLIEST TIMESTAMPMAXIMUMMINIMUMPRIORITY GROUPSITE PRIORITY多种冲突解决方案。其中LAST TIMESTAMPADDITIVE可以保证在多主环境中数据的统一性。而MAXIMUMMINIMUMPRIORITY GROUP都是在满足一定条件下可以保证多主环境中数据统一性。其他的方法用在多主环境中很可能会造成各个站点在进行冲突解决后数据不一致,因此更适合作为物化视图复制环境的冲突解决方案,或者第二冲突解决方案。在所有冲突解决方案中,最常使用的是LAST TIMESTAMP加上SITE PRIORITY作为后备冲突解决方案,因为两个站点的时间戳可能出现重复。

唯一冲突是指两个或更多站点在几乎同时(多主复制是在两个主站点将修改推到对方之前,而物化视图复制则是在物化视图刷新之前)插入或更新的数据的唯一键值相同。Oracle提供了APPEND SITE NAMEAPPEND SEQUENCEDISCARD三种冲突解决方案,其实大部分唯一冲突都可以从设计层面避免。

删除冲突指的是两个或更多站点在几乎同时(多主复制是在两个主站点将修改推到对方之前,而物化视图复制则是在物化视图刷新之前)删除同一行记录,或者一个站点删除记录,而另一个站点对数据进行了更新。Oracle并没有提供解决删除冲突的解决方案,对于删除冲突可以通过避免DELETE语句,或者用户自己提供的冲突方案来解决。

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-665656/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/4227/viewspace-665656/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值