mirror of
https://github.com/janishutz/eth-summaries.git
synced 2026-09-10 19:15:25 +02:00
[DMDB] Link relevant sections in checklist
This commit is contained in:
Binary file not shown.
@@ -1,5 +1,6 @@
|
|||||||
\newpage
|
\newpage
|
||||||
\subsection{Normal Forms}
|
\subsection{Normal Forms}
|
||||||
|
\label{sec:normal-forms}
|
||||||
\inlinedefinition[Normal forms] describe the properties of concrete schemas based on functional dependencies in terms of data redundancy and data integrity.
|
\inlinedefinition[Normal forms] describe the properties of concrete schemas based on functional dependencies in terms of data redundancy and data integrity.
|
||||||
|
|
||||||
For each of the normal forms, we need to be able to decide (for $R$ the relation and $F$ the functional dependencies of it):
|
For each of the normal forms, we need to be able to decide (for $R$ the relation and $F$ the functional dependencies of it):
|
||||||
|
|||||||
+1
@@ -1,4 +1,5 @@
|
|||||||
\paragraph{Rewriting Rules}
|
\paragraph{Rewriting Rules}
|
||||||
|
\label{sec:rewriting-rules}
|
||||||
Given a logical plan as above, there are multiple ways in which we can construct a physical plan.
|
Given a logical plan as above, there are multiple ways in which we can construct a physical plan.
|
||||||
We can use different join orders, decide when selection happens and specific implementations of operators.
|
We can use different join orders, decide when selection happens and specific implementations of operators.
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
\newcommand\cost[1]{\shade{orange}{#1}}
|
\newcommand\cost[1]{\shade{orange}{#1}}
|
||||||
|
\label{sec:query-processing}
|
||||||
\section{Query Processing}
|
\section{Query Processing}
|
||||||
In this section, knowing the time complexities by heart is very important for the exam.
|
In this section, knowing the time complexities by heart is very important for the exam.
|
||||||
They are highlighted \cost{like this}.
|
They are highlighted \cost{like this}.
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ Databases typically log transactions by keeping before and after images of their
|
|||||||
|
|
||||||
|
|
||||||
\subsubsection{Recovery on histories}
|
\subsubsection{Recovery on histories}
|
||||||
|
\label{sec:recovery-of-histories}
|
||||||
\begin{examdetails}
|
\begin{examdetails}
|
||||||
They like to ask about these, so be sure to understand this properly. Same goes for Conflict Serializability for histories (see \ref{sec:tm-history})
|
They like to ask about these, so be sure to understand this properly. Same goes for Conflict Serializability for histories (see \ref{sec:tm-history})
|
||||||
\end{examdetails}
|
\end{examdetails}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ It may or may not require both, one or none of UNDO and REDO.
|
|||||||
\item \bi{Steal Policy}: An uncommitted transaction is allowed to overwrite the changes of a committed transaction in persistent storage.
|
\item \bi{Steal Policy}: An uncommitted transaction is allowed to overwrite the changes of a committed transaction in persistent storage.
|
||||||
This logically means that we need to be able to undo transactions.
|
This logically means that we need to be able to undo transactions.
|
||||||
\item \bi{Force Policy}: All changes made by a transaction must be in persistent storage before the transaction commits.
|
\item \bi{Force Policy}: All changes made by a transaction must be in persistent storage before the transaction commits.
|
||||||
This requires flushing all blocks with updates from the transaction and if not in-place, it will require being able to redo the transaction.
|
This requires flushing all blocks with updates from the transaction and if not in-place (called \bi{No-Force}), it will require being able to redo the transaction.
|
||||||
\item \bi{Steal/No-Force}: UNDO/REDO, is the most common approach
|
\item \bi{Steal/No-Force}: UNDO/REDO, is the most common approach
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
If for updates tuples are locked, blocks may still be updatable.
|
If for updates tuples are locked, blocks may still be updatable.
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
\section{Vector Search}
|
\section{Vector Search}
|
||||||
|
\label{sec:vector-search}
|
||||||
\input{parts/06_vector-search/00_intro-trees-clustering.tex}
|
\input{parts/06_vector-search/00_intro-trees-clustering.tex}
|
||||||
\input{parts/06_vector-search/01_hsnw-index.tex}
|
\input{parts/06_vector-search/01_hsnw-index.tex}
|
||||||
\input{parts/06_vector-search/02_hash-index.tex}
|
\input{parts/06_vector-search/02_hash-index.tex}
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
\subsection{Checklist}
|
\subsection{Checklist}
|
||||||
The following things are typically important to know very well (not exhaustive)
|
The following things are typically important to know very well (not exhaustive)
|
||||||
\begin{todolist}
|
\begin{todolist}
|
||||||
\item SQL (syntax, some concepts, such as using \texttt{WITH} statements often to make the task more approachable)
|
\item SQL (syntax, some concepts, such as using \texttt{WITH} statements often to make the task more approachable), see Section~\ref{sec:sql-basic-ops}
|
||||||
\item Functional Dependencies (including Candidate Keys, Super Keys, Closures and minimal covers)
|
\item Functional Dependencies (including Candidate Keys, Super Keys, Closures and minimal covers), see Section~\ref{sec:functional-dependency}
|
||||||
\item Normal Forms (and their Decomposition / Synthesis Algorithms)
|
\item Normal Forms (and their Decomposition / Synthesis Algorithms), see Section~\ref{sec:normal-forms}
|
||||||
\item Time complexities, I/Os and sorted runs for Query Processing
|
\item Time complexities, I/Os and sorted runs for Query Processing, see summarized above, or Section~\ref{sec:query-processing}
|
||||||
\item Concepts behind the query processing operators
|
\item Concepts behind the query processing operators, see Section~\ref{sec:query-processing}
|
||||||
\item Conflict Serializability
|
\item Conflict Serializability, see Section~\ref{sec:tm-history}
|
||||||
\item Core concepts of Vector Search
|
\item Core concepts of Vector Search, see Section~\ref{sec:vector-search}
|
||||||
\item Recoverability (both the normal techniques, plus Snapshot Isolation and 2-Phase Locking (and strict variant thereof))
|
\item Recoverability (both the normal techniques, plus Snapshot Isolation and 2-Phase Locking (and strict variant thereof)), see Section~\ref{sec:recovery-of-histories}
|
||||||
\item Rewriting rules
|
\item Rewriting rules, see Section~\ref{sec:rewriting-rules}
|
||||||
\end{todolist}
|
\end{todolist}
|
||||||
|
|
||||||
Note that since this course is taught (quite) poorly, there may be wrong questions or possibly even questions that are somewhat outside the scope of this course
|
Note that since this course is taught (quite) poorly, there may be wrong questions or possibly even questions that are somewhat outside the scope of this course
|
||||||
|
|||||||
Reference in New Issue
Block a user