Camera ready version. (Second try.)
This commit is contained in:
parent
139f5b3fdb
commit
cfd2395157
3 changed files with 14 additions and 14 deletions
|
@ -590,7 +590,7 @@ system.
|
||||||
\includegraphics[%
|
\includegraphics[%
|
||||||
viewport=0bp 0bp 458bp 225bp,
|
viewport=0bp 0bp 458bp 225bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/structure}
|
width=1\columnwidth]{figs/structure.pdf}
|
||||||
{\caption{\label{fig:structure} The portions of \yad that directly interact with new operations. Arrows point in the direction of data flow.}}
|
{\caption{\label{fig:structure} The portions of \yad that directly interact with new operations. Arrows point in the direction of data flow.}}
|
||||||
\vspace{-12pt}
|
\vspace{-12pt}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -798,7 +798,7 @@ overhead to be negligible.
|
||||||
\includegraphics[%
|
\includegraphics[%
|
||||||
viewport=-1bp 0bp 460bp 225bp,
|
viewport=-1bp 0bp 460bp 225bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/lsn-estimation}
|
width=1\columnwidth]{figs/lsn-estimation.pdf}
|
||||||
\caption{\label{fig:lsn-estimation}LSN estimation. If a page was not mentioned in the log, it must have been up-to-date on disk. RecLSN is the LSN of the entry that caused the page to become dirty. Subtracting one gives us a safe estimate of the page LSN.}
|
\caption{\label{fig:lsn-estimation}LSN estimation. If a page was not mentioned in the log, it must have been up-to-date on disk. RecLSN is the LSN of the entry that caused the page to become dirty. Subtracting one gives us a safe estimate of the page LSN.}
|
||||||
\vspace{-12pt}
|
\vspace{-12pt}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -934,7 +934,7 @@ logically consistent.
|
||||||
\includegraphics[%
|
\includegraphics[%
|
||||||
viewport=0bp 0bp 445bp 308bp,
|
viewport=0bp 0bp 445bp 308bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/torn-page}
|
width=1\columnwidth]{figs/torn-page.pdf}
|
||||||
\caption{\label{fig:torn}Torn pages and LSN-free recovery.
|
\caption{\label{fig:torn}Torn pages and LSN-free recovery.
|
||||||
The page is torn during the crash, but consistent once redo completes.
|
The page is torn during the crash, but consistent once redo completes.
|
||||||
Overwritten sectors are shaded.}
|
Overwritten sectors are shaded.}
|
||||||
|
@ -1049,7 +1049,7 @@ perform similarly to comparable monolithic implementations.
|
||||||
\graphdbg{\includegraphics[%
|
\graphdbg{\includegraphics[%
|
||||||
viewport=-26bp 28bp 625bp 360bp,
|
viewport=-26bp 28bp 625bp 360bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/bulk-load}}
|
width=1\columnwidth]{figs/bulk-load.pdf}}
|
||||||
\caption{\label{fig:BULK_LOAD} Performance of \yad and Berkeley DB hash table implementations. The
|
\caption{\label{fig:BULK_LOAD} Performance of \yad and Berkeley DB hash table implementations. The
|
||||||
test is run as a single transaction, minimizing synchronous log writes.}
|
test is run as a single transaction, minimizing synchronous log writes.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -1058,7 +1058,7 @@ test is run as a single transaction, minimizing synchronous log writes.}
|
||||||
\graphdbg{\includegraphics[%
|
\graphdbg{\includegraphics[%
|
||||||
viewport=-43bp 45bp 490bp 370bp,
|
viewport=-43bp 45bp 490bp 370bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/tps-extended}}
|
width=1\columnwidth]{figs/tps-extended.pdf}}
|
||||||
\caption{\label{fig:TPS} High-concurrency hash table performance. Our Berkeley DB test can only support 50 threads (see text).
|
\caption{\label{fig:TPS} High-concurrency hash table performance. Our Berkeley DB test can only support 50 threads (see text).
|
||||||
\vspace{-16pt}
|
\vspace{-16pt}
|
||||||
}
|
}
|
||||||
|
@ -1104,13 +1104,13 @@ as a baseline for our experiments.
|
||||||
\graphdbg{\includegraphics[%
|
\graphdbg{\includegraphics[%
|
||||||
viewport=-25bp 19bp 625bp 400bp,
|
viewport=-25bp 19bp 625bp 400bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/object-diff}}
|
width=1\columnwidth]{figs/object-diff.pdf}}
|
||||||
\hspace{.2in}
|
\hspace{.2in}
|
||||||
\graphdbg{\includegraphics[%
|
\graphdbg{\includegraphics[%
|
||||||
% viewport=-25bp 23bp 425bp 330bp,
|
% viewport=-25bp 23bp 425bp 330bp,
|
||||||
viewport=-40bp 28bp 450bp 315bp,
|
viewport=-40bp 28bp 450bp 315bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/mem-pressure}}
|
width=1\columnwidth]{figs/mem-pressure.pdf}}
|
||||||
\caption{\label{fig:OASYS}
|
\caption{\label{fig:OASYS}
|
||||||
The effect of \yad object-persistence optimizations under low and high memory pressure.}
|
The effect of \yad object-persistence optimizations under low and high memory pressure.}
|
||||||
\vspace{-12pt}
|
\vspace{-12pt}
|
||||||
|
@ -1157,7 +1157,7 @@ produce, not the performance of our own highly tuned implementation.
|
||||||
Both Berkeley DB and \yad can service concurrent calls to commit with
|
Both Berkeley DB and \yad can service concurrent calls to commit with
|
||||||
a single synchronous I/O.
|
a single synchronous I/O.
|
||||||
\yad scaled quite well, delivering over 6000 transactions per
|
\yad scaled quite well, delivering over 6000 transactions per
|
||||||
second,%\endnote{The concurrency test was run without lock managers, and the
|
second, %\endnote{The concurrency test was run without lock managers, and the
|
||||||
% transactions obeyed the A, C, and D properties. Since each
|
% transactions obeyed the A, C, and D properties. Since each
|
||||||
% transaction performed exactly one hash table write and no reads, they also
|
% transaction performed exactly one hash table write and no reads, they also
|
||||||
% obeyed I (isolation) in a trivial sense.}
|
% obeyed I (isolation) in a trivial sense.}
|
||||||
|
@ -1275,7 +1275,7 @@ the implementation is encouraging.
|
||||||
|
|
||||||
\label{sec:logging}
|
\label{sec:logging}
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
\graphdbg{\includegraphics[width=1\columnwidth]{figs/graph-traversal}}
|
\graphdbg{\includegraphics[width=1\columnwidth]{figs/graph-traversal.pdf}}
|
||||||
%\vspace{-12pt}
|
%\vspace{-12pt}
|
||||||
\caption{\label{fig:multiplexor} Locality-based request reordering.
|
\caption{\label{fig:multiplexor} Locality-based request reordering.
|
||||||
Requests are partitioned into queues. Queue are handled
|
Requests are partitioned into queues. Queue are handled
|
||||||
|
@ -1362,7 +1362,7 @@ the naive traversal.
|
||||||
\begin{figure}[t]
|
\begin{figure}[t]
|
||||||
\graphdbg{\includegraphics[%
|
\graphdbg{\includegraphics[%
|
||||||
viewport=-13bp 19bp 600bp 280bp,
|
viewport=-13bp 19bp 600bp 280bp,
|
||||||
width=1\columnwidth]{figs/oo7}}
|
width=1\columnwidth]{figs/oo7.pdf}}
|
||||||
%\vspace{-12pt}
|
%\vspace{-12pt}
|
||||||
\caption{\label{fig:oo7} OO7 benchmark style graph traversal. The optimization performs well due to the presence of non-local nodes.}
|
\caption{\label{fig:oo7} OO7 benchmark style graph traversal. The optimization performs well due to the presence of non-local nodes.}
|
||||||
%\vspace{-12pt}
|
%\vspace{-12pt}
|
||||||
|
@ -1372,7 +1372,7 @@ the naive traversal.
|
||||||
\graphdbg{\includegraphics[%
|
\graphdbg{\includegraphics[%
|
||||||
viewport=-10bp 10bp 525bp 346bp,
|
viewport=-10bp 10bp 525bp 346bp,
|
||||||
clip,
|
clip,
|
||||||
width=1\columnwidth]{figs/trans-closure-hotset}}
|
width=1\columnwidth]{figs/trans-closure-hotset.pdf}}
|
||||||
%\vspace{-12pt}
|
%\vspace{-12pt}
|
||||||
\caption{\label{fig:hotGraph} Hot-set based graph traversal for random
|
\caption{\label{fig:hotGraph} Hot-set based graph traversal for random
|
||||||
graphs with out-degrees of 3 and 9. The multiplexer
|
graphs with out-degrees of 3 and 9. The multiplexer
|
||||||
|
@ -1445,14 +1445,14 @@ could address. However, it is unclear whether a single interface or
|
||||||
conceptual mapping would meet their needs. Based on experiences with
|
conceptual mapping would meet their needs. Based on experiences with
|
||||||
their system, the authors of StreamBase argue that ``one size fits
|
their system, the authors of StreamBase argue that ``one size fits
|
||||||
all'' database engines are no longer appropriate. Instead, they argue that
|
all'' database engines are no longer appropriate. Instead, they argue that
|
||||||
the market will ``fracture into a collection of independent ... engines''~\cite{oneSizeFitsAll}. This is in contrast to the RISC
|
the market will ``fracture into a collection of independent...engines''~\cite{oneSizeFitsAll}. This is in contrast to the RISC
|
||||||
approach, which attempts to build a database in terms of
|
approach, which attempts to build a database in terms of
|
||||||
interchangeable parts.
|
interchangeable parts.
|
||||||
|
|
||||||
We agree with the motivations behind RISC databases and StreamBase,
|
We agree with the motivations behind RISC databases and StreamBase,
|
||||||
and believe they complement each other and \yad well. However, or
|
and believe they complement each other and \yad well. However, our
|
||||||
goal differs from these systems; we want to support applications that
|
goal differs from these systems; we want to support applications that
|
||||||
are a poor fit for database systems. However, as \yad matures we we
|
are a poor fit for database systems. As \yad matures we
|
||||||
hope that it will enable a wide range of transactional systems,
|
hope that it will enable a wide range of transactional systems,
|
||||||
including improved DBMSs.
|
including improved DBMSs.
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue