oracle事务隔离级别_笔记1:什么是并发控制
什么是并发控制
并发控制(concurrency control)是数据库提供的函数集合,允许多个人同时访问和修改数据。
Oracle对并发的支持不只是高效的锁定。它还实现了一种多版本控制(multi-versioning)体系结构,这种体系结构提供了一种受控但高度并发的数据访问。多版本控制是指,Oracle能同时物化多个版本的数据,这也是Oracle提供数据读一致视图的机制(读一致视图即read-consistent view,是指相对于某个时间点有一致的结果)。多版本控制有一个相当令人惊喜的连带效果,即数据的读取器(reader)绝对不会被数据的写入器(writer)所阻塞。换句话说,写不会阻塞读。这是Oracle与其他数据库之间的一个根本区别。在Oracle中,如果一个查询只是读取信息,那么永远也不会被阻塞。它不会与其他会话发生死锁,而且不可能得到数据库中根本不存在的答案。
默认情况下,Oracle的读一致性多版本模型应用于语句级(statement level),也就是说,应用于每一个查询;另外还可以应用于事务级(transaction level)。这说明,至少提交到数据库的每一条SQL语句都会看到数据库的一个读一致视图,如果你希望数据库的这种读一致视图是事务级的,这也是可以的。
数据库中事务的基本作用是将数据从一种一致状态转变为另一种一致状态。ISO SQL标准指定了多种事务隔离级别(transaction isolation level),这些隔离级别定义了一个事务对其他事务作出的修改有多“敏感”。越是敏感,数据库在应用执行的各个事务之间必须提供的隔离程序就越高。
本文来源 我爱IT技术网 http://www.52ij.com/jishu/5207.html 转载请保留链接。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
