diff options
Diffstat (limited to 'content/implementation.tex')
| -rw-r--r-- | content/implementation.tex | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/content/implementation.tex b/content/implementation.tex index 424103c..86cb72d 100644 --- a/content/implementation.tex +++ b/content/implementation.tex @@ -32,6 +32,30 @@ The \code{Schema Registry} is a important component that allows the storage of d With \code{Schema Registry}, we ensure that the data stored in \code{PostgreSQL} tables and in \code{Redis} streams contains the exact same schema. Moreover, \code{Schema Registry} is compatible with versatile data interchange formats, such as \code{ProtoBuf}~\cite{Wikipedia:article/ProtoBuf}. +\code{Redis}, is a key value store that provides efficient store and retrieval operations~\cite{Wikipedia:article/Redis}. +In particular, \code{Redis} is capable of storing \emph{streams} -- append only logs which allow for fast and quick query of large volumes of data. +\code{Redis} is the industry leader in key value caching. +The only alternative to \code{Redis} is \code{memcached}~\cite{Wikipedia:article/Memcached}, which does not provide the capability to integrate with \code{Kafka}. + +\code{PostgreSQL} is a database management system, necessary to store large volumes of out-of-band data coming from the physical datacenter. +The \code{PostgreSQL} server provides a simple and straightforward interface to query the data via \code{psql}. +Importantly, to adhere to the single responsibility principle, \code{PostgreSQL} does not provide any \gls{ui}. +Additionally, there exist many integrations between \code{PostgreSQL} and other software, including \code{Kafka}. +The many alternatives to \code{PostgreSQL} are listed in~\cite{Wikipedia:article/Postgresql}. +An alternative used in previous work is \code{InfluxDB}~\cite{DBLP:conf/wosp/SumanCNTMI24}. + +Lastly, to enable predictive analytics we use a state-of-the-art discrete-event simulator, \code{OpenDC}~\cite{GitHub:software/OpenDC}. +\code{OpenDC} is a leading software package capable of modeling complex datacenter phenomena and workloads (\eg failures, workflows, machine learning). +For a specific overview of advantages of \code{OpenDC} and a thorough comparison with other alternatives, see \Cref{tab:datacenter_simulator_comparison}. + +\begin{figure}[t] + \centering + \includegraphics[width=\linewidth]{images/flow_diagram.pdf} + \caption{The data flow within \gls{my_system} (work under progress).} + \label{fig:flow_diagram} +\end{figure} + \section{Data Flow}\label{ss:data_flow} -\section{Code Writing}\label{ss:programming} + +\section{Programming Effort}\label{ss:programming} |
