×
新网 > 建站推广 > 正文

并发操作可能会产生哪几类数据不一致?

  • 作者:zccc
  • 来源:网络
  • 2020-08-31 16:09:27

并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据。避免不一致性的方法和技术就是并发控制,最常用的技术是封锁技术;也可以用其他技术,例如在分布式数据

并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据。避免不一致性的方法和技术就是并发控制,最常用的技术是封锁技术;也可以用其他技术,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制。

并发操作带来的数据不一致性包括三类:丢失修改、不可重复读和读“脏”数据。

1、丢失修改(Lost Update)

两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了(覆盖了)T1提交的结果,导致T1的修改被丢失。

2、不可重复读(Non -Repeatable Read)

不可重复读是指事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。

3、读“脏”数据(Dirty Read)

读“脏”数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为“脏”数据,即不正确的数据。

用什么方法能避免各种不一致的情况?

避免不一致性的方法和技术就是并发控制,最常用的技术是封锁技术;也可以用其他技术,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制。

更多相关知识,请访问:PHP中文网!

  • 相关专题

免责声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,也不承认相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,请发送邮件至:operations@xinnet.com进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

免费咨询获取折扣

Loading