Home

serialiseerbare

Serialiseerbare is een term uit databasebeheer die verwijst naar het isolatieniveau van transacties. Het garandeert dat de uitvoer van meerdere gelijktijdig lopende transacties equivalent is aan een volgorde waarin ze achtereenvolgend zouden zijn uitgevoerd. Met andere woorden, de resultaten lijken alsof de transacties één voor één zijn gezet.

Dit is het sterkste isolatieniveau in de SQL-standaard en voorkomt de gangbare anomalieën zoals dirty reads,

In de praktijk gaat serialiseerbaarheid ten koste van prestaties. Gelijktijdige transacties kunnen wachten op locks, wat

Een bekend voorbeeld is een bankrekeningensysteem waarin twee transacties gelijktijdig geld tussen rekeningen moeten overhevelen. Serialiseerbaarheid

Zie ook: isolatieniveaus, transacties, two-stage locking, snapshot isolation.

non-repeatable
reads
en
phantom
reads.
Serialiseerbaarheid
kan
worden
bereikt
met
locking-protocollen
zoals
Strict
Two-Phase
Locking
(S2PL),
waarbij
alle
benodigde
locks
vooraf
worden
verkregen
en
pas
bij
commit
vrijgegeven,
of
met
Serializable
Snapshot
Isolation
(SSI),
een
alternatief
dat
snapshots
gebruikt
en
tegelijkertijd
onverenigbaar
gedrag
detecteert
en
afbreekt.
kan
leiden
tot
wachttijden,
verhoogde
kans
op
deadlocks
en
lagere
doorvoer
bij
zware
workloads.
Daarom
kiezen
sommige
systemen
voor
minder
strikte
isolatieniveaus
wanneer
de
exacte
volgorde
van
transacties
minder
cruciaal
is.
verzekert
dat
de
uiteindelijke
toestand
overeenkomt
met
een
van
de
mogelijke
sequenties
(T1
gevolgd
door
T2
of
T2
gevolgd
door
T1)
en
voorkomt
inconsistenties
die
zouden
ontstaan
door
interleaving.