Table of Contents
有效的交易管理和货币控制对于保持数据库系统的数据完整性和一致性至关重要,这些技术确保了多个用户可以同时访问和修改数据,而不会引起冲突或错误。
交易管理
交易是作为单一单位执行的操作序列。 交易的正确管理涉及确保交易是原子的、一致的、孤立的和持久的(ACID 属性) 。 这阻碍了部分更新和维护数据可靠性。
交易日志和检查站等技术有助于从失败中恢复,并保持数据的完整性,实施适当的承诺和回滚机制可确保交易要么完全完成要么完全不完成。
货币控制技术
货币控制管理多个用户同时访问数据,可以防止冲突,确保数据的一致性,常见的技术包括锁定协议和时间戳命令.
锁定协议可以是严格或宽松的。严格协议锁定交易期间的数据,防止其他交易访问。列宁特协议允许更多的货币,但需要谨慎管理以避免冲突。
共同货币管制方法
- 双相锁(2PL): 通过在释放任何一种之前获得所有必要的锁,确保序列性.
- 时间戳顺序:[] 使用时间戳来确定交易优先,避免冲突.
- 乐观的货币控制: 假设冲突很少,在犯罪前核对冲突。
- 多变货币控制(MVCC): 维持多个版本的数据,允许同时读写.