138 lines
4.1 KiB
TeX
138 lines
4.1 KiB
TeX
% TEMPLATE for Usenix papers, specifically to meet requirements of
|
|
% USENIX '05
|
|
% originally a template for producing IEEE-format articles using LaTeX.
|
|
% written by Matthew Ward, CS Department, Worcester Polytechnic Institute.
|
|
% adapted by David Beazley for his excellent SWIG paper in Proceedings,
|
|
% Tcl 96
|
|
% turned into a smartass generic template by De Clarke, with thanks to
|
|
% both the above pioneers
|
|
% use at your own risk. Complaints to /dev/null.
|
|
% make it two column with no page numbering, default is 10 point
|
|
|
|
% Munged by Fred Douglis <douglis@research.att.com> 10/97 to separate
|
|
% the .sty file from the LaTeX source template, so that people can
|
|
% more easily include the .sty file into an existing document. Also
|
|
% changed to more closely follow the style guidelines as represented
|
|
% by the Word sample file.
|
|
% This version uses the latex2e styles, not the very ancient 2.09 stuff.
|
|
\documentclass[letterpaper,twocolumn,10pt]{article}
|
|
\usepackage{usenix,epsfig,endnotes,xspace}
|
|
%\usepackage{babel}
|
|
|
|
\newcommand{\yad}{Lemon\xspace}
|
|
\newcommand{\oasys}{Juicer\xspace}
|
|
|
|
\newcommand{\eab}[1]{\textcolor{red}{\bf EAB: #1}}
|
|
\newcommand{\rcs}[1]{\textcolor{green}{\bf RCS: #1}}
|
|
\newcommand{\mjd}[1]{\textcolor{blue}{\bf MJD: #1}}
|
|
|
|
\begin{document}
|
|
|
|
%don't want date printed
|
|
\date{}
|
|
|
|
|
|
%make title bold and 14 pt font (Latex default is non-bold, 16 pt)
|
|
\title{\Large \bf Wonderful : A Terrific Application and Fascinating Paper}
|
|
|
|
%for single author (just remove % characters)
|
|
\author{
|
|
{\rm Russell Sears}\\
|
|
UC Berkeley
|
|
\and
|
|
{\rm Michael Demmer}\\
|
|
UC Berkeley
|
|
\and
|
|
{\rm Eric Brewer}\\
|
|
UC Berkeley
|
|
} % end author
|
|
% copy the following lines to add more authors
|
|
|
|
\maketitle
|
|
|
|
% Use the following at camera-ready time to suppress page numbers.
|
|
% Comment it out when you first submit the paper for review.
|
|
\thispagestyle{empty}
|
|
|
|
|
|
\subsection*{Abstract}
|
|
|
|
%\cite{nil} is a dummy citation to make bibtex happy.
|
|
|
|
\yad is a storage framework that incorporates ideas from traditional
|
|
write-ahead-logging storage algorithms and file system technologies,
|
|
while providing applications with increased control over its
|
|
underlying modules. Generic transactional storage systems such as SQL
|
|
and BerkeleyDB serve many applications well, but impose constraints
|
|
that are undesirable to developers of system software and
|
|
high-performance applications, while filesystems provide limited
|
|
functionality to applications.
|
|
|
|
This paper generalizes write-ahead-logging algorithms, providing
|
|
applications with specialized functionality, cleaner semantics and
|
|
improved performance.
|
|
|
|
Applications may use our modular library of basic data strctures to
|
|
compose new concurrent transactional access methods, or write their
|
|
own from scratch. This paper presents concrete low level examples
|
|
that modify the semantics of the buffer manager to reduce memory and
|
|
CPU overhead, reorder log entries for increased efficiency, and do
|
|
away with per-page LSNs in order to perform zero-copy transactional
|
|
I/O. We argue that encapsulation allows applications to compose
|
|
extensions.
|
|
|
|
These ideas have been partially implemented, and initial performance
|
|
figures, and experience using the library compare favorably with
|
|
existing systems.
|
|
|
|
|
|
\section{Introduction}
|
|
|
|
\section{Existing transactional systems}
|
|
|
|
This section desribes DBMS systems, Berkeley DB and Database toolkits.
|
|
|
|
Relevant DB toolkit work (that I need to read): Exodus: E and ESM, Starburst,
|
|
Genesis, P2 (not ``Pier 2'').
|
|
|
|
\section{Write ahead logging}
|
|
|
|
This section desribes write ahead logging in generic terms, introduces
|
|
STEAL/no-FORCE and ARIES.
|
|
|
|
\section{Extensions}
|
|
|
|
This section desribes proof-of-concept extensions to \yad.
|
|
Performance figures accompany the extensions that we have implemented.
|
|
|
|
\section{Relationship to prior work}
|
|
|
|
This section describes how existing systems can be recast as
|
|
specializations of \yad.
|
|
|
|
\section{Conclusion}
|
|
|
|
\section{Acknowledgements}
|
|
|
|
\section{Availability}
|
|
|
|
Additional information, and \yad's source code is available at:
|
|
|
|
\begin{center}
|
|
{\tt http://\yad.sourceforge.net/}
|
|
\end{center}
|
|
|
|
{\footnotesize \bibliographystyle{acm}
|
|
\nocite{*}
|
|
\bibliography{LLADD}}
|
|
|
|
\theendnotes
|
|
|
|
\end{document}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|