mirror of
https://git.deuxfleurs.fr/Deuxfleurs/garage.git
synced 2024-12-27 17:40:36 +00:00
99 lines
No EOL
2.8 KiB
TeX
99 lines
No EOL
2.8 KiB
TeX
\section{Introduction}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\begin{frame}{A very casual motivation}
|
|
|
|
|
|
\begin{center}
|
|
\Large
|
|
I want to host \textbf{resilient web services} with \textbf{acceptable performance} on commodity hardware behind \textbf{household networks}.
|
|
\end{center}
|
|
\vfill
|
|
|
|
\begin{block}{Keywords}
|
|
\begin{columns}
|
|
\column{.5\columnwidth}
|
|
\begin{itemize}
|
|
\item Decentralised networks
|
|
\item Edge computing
|
|
\end{itemize}
|
|
\column{.5\columnwidth}
|
|
\begin{itemize}
|
|
\item Distributed storage
|
|
\item Privacy
|
|
\end{itemize}
|
|
\end{columns}
|
|
\end{block}
|
|
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\begin{frame}{Context}
|
|
|
|
\textbf{Resilience}: Ability to recover quickly from failures and changes.
|
|
\vspace{1ex}
|
|
|
|
Only achievable through distribution of the hosted applications across several physical locations.
|
|
\vfill
|
|
|
|
|
|
\begin{block}{Application = \textbf{computations} on \textbf{data}}
|
|
\begin{itemize}
|
|
\item \textbf{Computation}: Stateless; easy to distribute \& orchestrate.
|
|
% where it is performed does not matter as long as the application's state is accessible R/W
|
|
%Computation units are "easy" to distribute and orchestrate.
|
|
|
|
\item \textbf{Data}: Stateful; hard to distribute \& full of trade-offs.
|
|
\end{itemize}
|
|
\end{block}
|
|
|
|
\end{frame}
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\begin{frame}{Concurrent writes example}{How to lose vaccines}
|
|
|
|
\centering
|
|
|
|
\includegraphics[width=.5\columnwidth]{figures/conflict_problem.pdf}
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\begin{frame}{The problem}
|
|
|
|
% \textbf{Path dependency}: existing data stores are built for data centres.
|
|
|
|
% $\implies$ They assume good inter-node connectivity.
|
|
% \vfill
|
|
|
|
\begin{center}
|
|
\Large
|
|
Can we design an available data store tailored for adverse network conditions?
|
|
\end{center}
|
|
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% Maybe more framing of the context. What kind of data storage? Object vs Block vs what?
|
|
% \begin{frame}{``Stateless'', ``serverless'', and the elephant in the room}
|
|
|
|
% It seems easy to deploy \& administer web services nowadays ...
|
|
|
|
% Because the inherent complexity is shadowed by proprietary ``cloud'' solutions.
|
|
|
|
% The IT crowd can gloss over ``statelessness'' \emph{ad nauseam} ...
|
|
|
|
% But storing \emph{state} remains an open research problem.
|
|
|
|
% Data storage is either:
|
|
|
|
% \begin{itemize}
|
|
% \item A single point of failure;
|
|
% \item Delegated to proprietary solutions;
|
|
% \item Pain.
|
|
% \end{itemize}
|
|
|
|
% Today, we will review networked storage's history, and discuss open research questions.
|
|
|
|
% \end{frame} |