\begin{frame}
\frametitle{Multiversion Concurrency Control: Snapshot Isolation}
\begin{alertblock}{}
Disadvantages:
\begin{itemize}
\item versioning requires \emph{space} and \emph{management overhead}
\item update transactions still need concurrency control!
\end{itemize}
\end{alertblock}
\begin{alertblock}{}
Snapshot isolation does not guarantee serializability! But
\begin{itemize}
\item the anomalies
\begin{itemize}
\item dirty read,
\item unrepeatable read,
\item phantom rows
\end{itemize}
do not occur.
\item however, \alert{write skew} occurs!
\end{itemize}
\end{alertblock}
\pause
Snapshot isolation is used in the Oracle SQL Server.\\ (Oracle has no real serializability).
\end{frame}