27、分布式数据库管理系统:概念、挑战与解决方案

分布式数据库管理系统:概念、挑战与解决方案

1. 分布式数据库并发控制之投票方法

在分布式数据库管理系统(DDBMS)环境中,实现并发控制的一种方法是使用投票方法。之前讨论的并发控制方法是基于区分副本的概念,即指定一个站点作为复制数据项的区分副本持有者。而投票方法中不存在区分副本的概念。

当需要更新一个数据项时,会向持有该数据项副本的所有站点发送锁定请求。每个数据项副本都关联一个锁,副本可以决定是否授予或拒绝锁定。当一个事务需要更新数据项时,它会向该数据项的所有副本(即站点)发送锁定请求,每个站点会回复“是”或“否”,此回复称为投票。每个数据项都关联一个最小阈值,事务必须达到该阈值才能继续进行更新。存在以下两种情况:
- 情况一 :如果所有“是”投票的总和等于或大于阈值,事务将获得该数据项的锁,并通知所有站点,然后继续进行更新。
- 情况二 :如果所有“是”投票的总和小于阈值,或者在指定时间内没有响应,事务将取消其锁定请求并通知所有站点。

投票方法本质上更具分布式特性,因为不依赖于单个区分副本。然而,由于站点之间需要传输大量的锁定请求/响应和投票消息,其速度较慢。

2. 分布式恢复

在集中式数据库管理系统中,日志记录可确保从故障中快速恢复。但在分布式系统中,情况并非如此简单。例如,站点A向站点B发送消息,如果B没有响应,A应该怎么做?B不响应可能有以下三个原因:
- 通信问题 :A到B的消息由于通信问题根本没有到达B。
- 站点故障 :A发送消息时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值