Home

viewserializable

View serializable is a database correctness criterion for the interleaved execution of multiple transactions. A schedule of reads and writes is view-serializable if there exists a serial (non-concurrent) schedule of the same transactions that yields identical read results and the same final writes for every data item.

Intuitively, view serializability depends on the read-from relations rather than the exact order of operations. A

Relation to other notions: Every conflict-serializable schedule is view-serializable, but the converse is not guaranteed. View

Practical aspects: Determining view serializability for an arbitrary schedule is computationally harder than testing conflict serializability.

schedule
is
view-serializable
if,
for
each
data
item,
every
read
in
the
schedule
reads
the
value
produced
by
some
write
in
the
serial
schedule
(or
the
initial
value
if
no
prior
write
exists),
and
the
final
writer
of
each
data
item
in
the
schedule
is
the
same
as
in
the
serial
schedule.
This
focuses
on
the
values
observed
by
reads
and
the
final
state,
rather
than
the
precise
sequencing
of
operations.
serializability
is
therefore
a
weaker
criterion
than
conflict
serializability,
allowing
more
interleavings
while
still
aiming
for
a
serial-equivalent
outcome
with
respect
to
reads
and
final
writes.
As
a
result,
most
database
management
systems
target
conflict-serializability
through
concurrency
control
methods
such
as
two-phase
locking
or
timestamp
ordering.
View
serializability
remains
an
important
theoretical
concept
for
understanding
the
limits
of
concurrent
execution
and
for
proving
correctness
of
certain
algorithms
and
workloads.