Isolation (database systems)

isolationtransaction isolationisolateddata isolationI'''solationisolation levelisolation levelsnon-repeatable reads
In database systems, isolation determines how transaction integrity is visible to other users and systems.wikipedia
44 Related Articles

Database transaction

transactiontransactionstransactional
In database systems, isolation determines how transaction integrity is visible to other users and systems.
A database transaction, by definition, must be atomic, consistent, isolated and durable.

ACID (computer science)

ACIDACID transactionsAtomicity, consistency, isolation, durability
Isolation is one of the ACID (Atomicity, Consistency, Isolation, Durability) properties.
In computer science, ACID (Atomicity, Consistency, Isolation, Durability) is a set of properties of database transactions intended to guarantee validity even in the event of errors, power failures, etc. In the context of databases, a sequence of database operations that satisfies the ACID properties (and these can be perceived as a single logical operation on the data) is called a transaction.

Serializability

serializablerecoverabilityconflicts
The transaction-related mechanisms typically constrain the database data access operations' timing (transaction schedules) to certain orders characterized as the serializability and recoverability schedule properties.
It is considered the highest level of isolation between transactions, and plays an essential role in concurrency control.

Concurrency control

concurrencyconcurrent accessglobal concurrency control
Concurrency control comprises the underlying mechanisms in a DBMS which handle isolation and guarantee related correctness.
Isolation - Transactions cannot interfere with each other (as an end result of their executions). Moreover, usually (depending on concurrency control method) the effects of an incomplete transaction are not even visible to another transaction. Providing isolation is the main goal of concurrency control.

Multiversion concurrency control

MVCCMVCC architectureMulti Version Concurrency Control (MVCC)
Under the multiversion concurrency control method, non-repeatable reads may occur when the requirement that a transaction affected by a commit conflict must roll back is relaxed.
Read and write transactions are thus isolated from each other without any need for locking.

Atomicity (database systems)

atomicityatomicatomic transaction
Atomicity
In database systems, atomicity (from ) is one of the ACID (Atomicity, Consistency, Isolation, Durability) transaction properties.

Database

database management systemdatabasesdatabase systems
In database systems, isolation determines how transaction integrity is visible to other users and systems. Concurrency control comprises the underlying mechanisms in a DBMS which handle isolation and guarantee related correctness.
The acronym ACID describes some ideal properties of a database transaction: atomicity, consistency, isolation, and durability.

Snapshot isolation

serializable snapshot isolationsnapshottransaction snapshots
See snapshot isolation for more details on this topic.
Snapshot isolation has been used to criticize the ANSI SQL-92 standard's definition of isolation levels, as it exhibits none of the "anomalies" that the SQL standard prohibited, yet is not serializable (the anomaly-free isolation level defined by ANSI).

Concurrency (computer science)

concurrencyconcurrentconcurrent systems
For example, when a user is creating a Purchase Order and has created the header, but not the Purchase Order lines, is the header available for other systems/users (carrying out concurrent operations, such as a report on Purchase Orders) to see?

Schedule (computer science)

scheduleschedulingconflicts
The transaction-related mechanisms typically constrain the database data access operations' timing (transaction schedules) to certain orders characterized as the serializability and recoverability schedule properties.

Two-phase locking

Strong strict Two-phase lockingStrict 2PL2-phased locks
Two-phase locking is the most common transaction concurrency control method in DBMSs, used to provide both serializability and recoverability for correctness.

Record locking

lockrecordlocking
In order to access a database object a transaction first needs to acquire a lock for this object.

Select (SQL)

SELECT keywordSELECTs
Non-repeatable reads phenomenon may occur in a lock-based concurrency control method when read locks are not acquired when performing a SELECT, or when the acquired locks on affected rows are released as soon as the SELECT operation is performed.

Insert (SQL)

INSERTInsertinginserts
The phantom reads anomaly is a special case of Non-repeatable reads when Transaction 1 repeats a ranged SELECT ... WHERE query and, between both operations, Transaction 2 creates (i.e. INSERT) new rows (in the target table) which fulfill that WHERE clause.

Application software

applicationapplicationssoftware application
This requires adding logic for the application to function correctly.

Deadlock

livelockdeadlocksdeadly embrace
Conversely, if higher isolation levels are used, the possibility of deadlock is increased, which also requires careful analysis and programming techniques to avoid.

American National Standards Institute

ANSIASAAmerican National Standard
The isolation levels defined by the ANSI/ISO SQL standard are listed as follows.

SQL

Structured Query LanguageSQL DatabasesWikibook SQL
The isolation levels defined by the ANSI/ISO SQL standard are listed as follows.

Optimistic concurrency control

optimisticoptimistic concurrencyoptimistic concurrency mechanism
Optimistic concurrency control

Relational database management system

RDBMSrelational database management systemsrelational database
Relational Database Management System

Java Database Connectivity

JDBCJava Database Connectivity (JDBC)JDBC API
in JDBC: Connection constant fields, Connection.getTransactionIsolation, Connection.setTransactionIsolation(int)

Spring Framework

SpringSpring MVCcore Spring framework
in Spring Framework: @Transactional, Isolation