quicksilver
This commit is contained in:
parent
cdcdba1099
commit
57d72c4af1
2 changed files with 54 additions and 9 deletions
|
@ -94,9 +94,9 @@
|
|||
title = {Open Nested Transactions: Semantics and Support},
|
||||
OPTcrossref = {},
|
||||
OPTkey = {},
|
||||
booktitle = {Proceedings of WMPI 2006},
|
||||
booktitle = {Proceedings of WMPI},
|
||||
OPTpages = {},
|
||||
OPTyear = {},
|
||||
year = {2006},
|
||||
OPTeditor = {},
|
||||
OPTvolume = {},
|
||||
OPTnumber = {},
|
||||
|
@ -653,3 +653,28 @@
|
|||
OPTbibsource = {DBLP, http://dblp.uni-trier.de}
|
||||
}
|
||||
|
||||
@inproceedings{experienceWithQuickSilver,
|
||||
author = {Frank B. Schmuck and
|
||||
James C. Wyllie},
|
||||
title = {Experience with Transactions in {QuickSilver}},
|
||||
booktitle = {SOSP},
|
||||
year = {1991},
|
||||
pages = {239-253},
|
||||
OPTbibsource = {DBLP, http://dblp.uni-trier.de}
|
||||
}
|
||||
|
||||
@article{recoveryInQuickSilver,
|
||||
author = {Roger L. Haskin and
|
||||
Yoni Malachi and
|
||||
Wayne Sawdon and
|
||||
Gregory Chan},
|
||||
title = {Recovery Management in {QuickSilver}},
|
||||
journal = {ACM Trans. Comput. Syst.},
|
||||
volume = {6},
|
||||
number = {1},
|
||||
year = {1988},
|
||||
pages = {82-108},
|
||||
OPTee = {http://doi.acm.org/10.1145/35037.35060},
|
||||
OPTbibsource = {DBLP, http://dblp.uni-trier.de}
|
||||
}
|
||||
|
||||
|
|
|
@ -303,13 +303,11 @@ use of a structured physical model and abstract conceptual mappings.
|
|||
|
||||
\subsection{The Systems View}
|
||||
|
||||
\eab{check quicksilver}
|
||||
|
||||
The systems community has also worked on this mismatch for 20 years,
|
||||
which has led to many interesting projects. Examples include
|
||||
alternative durability models such as Quicksilver~\cite{Quicksilver}
|
||||
or LRVM~\cite{lrvm}, persistent object~\cite{argus}, and
|
||||
cluster hash tables~\cite{DDS}. We expect that \yad would simplify
|
||||
alternative durability models such as QuickSilver~\cite{experienceWithQuickSilver},
|
||||
RVM~\cite{lrvm}, persistent objects~\cite{argus},
|
||||
cluster hash tables~\cite{DDS}, and Boxwood~\cite{boxwood}. We expect that \yad would simplify
|
||||
the implementation of most if not all of these systems. We look at
|
||||
these in more detail in Section~\ref{related-work}.
|
||||
|
||||
|
@ -1640,6 +1638,25 @@ Multithreaded Transactions model is based on nested transactions,
|
|||
incorporates exception handling, and allows parents to execute
|
||||
concurrently with their children~\cite{omtt}.
|
||||
|
||||
QuickSilver is a distributed transactional operating system. It
|
||||
provided an IPC mechanism that mandated the use of transactions, and
|
||||
allowed varying degrees of isolation, both to support legacy code, and
|
||||
to implement servers that require special isolation properties. It
|
||||
supported transactions over durable and volatile state, and included a
|
||||
number of different commit protocols for applications to choose
|
||||
between. It provided a flexible, shared logging facility that did not
|
||||
hardcode log format, or recovery algorithms. The shared log
|
||||
essentially provided an API that other write ahead logging systems to
|
||||
could make use of. Underneath this interface, it supported a number
|
||||
of interesting optimizations such as distributed
|
||||
logging~\cite{recoveryInQuickSilver}. The QuickSilver project found
|
||||
that transactions are general enough to meet the demands of most
|
||||
applications, provided that long running transactions do not exhaust
|
||||
sytem resources, and that flexible concurrency control policies are
|
||||
available to applications. In QuickSilver, nested transactions would
|
||||
have been most useful when composing a series of program invocations
|
||||
into a larger logical unit~\cite{experienceWithQuickSilver}.
|
||||
|
||||
\subsection{Berkeley DB}
|
||||
|
||||
\eab{this text is also in Sec 2; need a new comparison}
|
||||
|
@ -1666,6 +1683,9 @@ assumptions regarding workloads and decisions regarding low level data
|
|||
representation. Thus, although Berkeley DB could be built on top of \yad,
|
||||
Berkeley DB's data model and write-ahead logging system are too specialized to support \yad.
|
||||
|
||||
\subsection{Transactional storage servers}
|
||||
|
||||
\rcs{Boxwood, cluster hash tables here.}
|
||||
|
||||
\subsection{stuff to add somewhere}
|
||||
|
||||
|
@ -1763,8 +1783,8 @@ complement to such a system, especially given \yads focus on
|
|||
intelligence and optimizations within a single node, and Boxwood's
|
||||
focus on multiple node systems. In particular, it would be
|
||||
interesting to explore extensions to the Boxwood approach that make
|
||||
use of \yads customizable semantics (Section~\ref{sec:wal}) and fully logical logging
|
||||
mechanisms (Section~\ref{sec:logging}).
|
||||
use of \yads customizable semantics (Section~\ref{sec:wal}) and fully
|
||||
logical logging mechanisms (Section~\ref{sec:logging}).
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue