diff --git a/2025-04-03-stack/assets/cassandra-data-model.jpg b/2025-04-03-stack/assets/cassandra-data-model.jpg new file mode 100644 index 0000000..b5f9884 Binary files /dev/null and b/2025-04-03-stack/assets/cassandra-data-model.jpg differ diff --git a/2025-04-03-stack/talk.tex b/2025-04-03-stack/talk.tex index 4182b5c..05fd885 100644 --- a/2025-04-03-stack/talk.tex +++ b/2025-04-03-stack/talk.tex @@ -493,6 +493,24 @@ Related work : OS scheduler, FaaS, théorie des files d'attente (mais ressources \end{frame} +\begin{frame} +\frametitle{Exemple avec Cassandra : base de données distribuée orientée colonne} + +SQL-like, mais expose le sharding à l'application pour avoir de bonnes +performances : + +\begin{itemize} +\item l'application définit un modèle de données (table et colonnes) comme en SQL +\item mais pas de ``join'' ou de foreign key (trop coûteux en distribué) +\item l'application choisit une \textbf{partition key} : garantie que toutes les entrées avec la même partition key seront stockées sur le même noeud +\item SELECT sur une valeur unique de partition key : optimisé (un seul noeud à contacter) +\item SELECT sur plusieurs valeurs de partition key : possible mais lent +\end{itemize} +\begin{center} + \includegraphics[width=.4\linewidth]{assets/cassandra-data-model.jpg} +\end{center} +\end{frame} + \begin{frame}{Une étude de cas encore expérimentale} \vfill