mirror of
https://github.com/janishutz/eth-summaries.git
synced 2026-09-10 19:15:25 +02:00
[DMDB] Fix more errors
This commit is contained in:
Binary file not shown.
+1
-1
@@ -33,7 +33,7 @@ The following rules were discussed in the lectures:
|
|||||||
\item Natural join operations are associative, so are theta joins (with restrictions)
|
\item Natural join operations are associative, so are theta joins (with restrictions)
|
||||||
\[
|
\[
|
||||||
(E_1 \bowtie E_2) \bowtie E_3 = E_1 \bowtie (E_2 \bowtie E_3)
|
(E_1 \bowtie E_2) \bowtie E_3 = E_1 \bowtie (E_2 \bowtie E_3)
|
||||||
\qquad (E_1 \bowtie_{\theta_1} E_2) \bowtie_{\theta_2 \land \theta_3} = E_1 \bowtie_{\theta_1 \land \theta_3} (E_2 \bowtie_{\theta_2} E_3)
|
\qquad (E_1 \bowtie_{\theta_1} E_2) \bowtie_{\theta_2 \land \theta_3} E_3 = E_1 \bowtie_{\theta_1 \land \theta_3} (E_2 \bowtie_{\theta_2} E_3)
|
||||||
\]
|
\]
|
||||||
This allows for joins to be performed in different orders, allowing us to do the most selective first (fewer rows)
|
This allows for joins to be performed in different orders, allowing us to do the most selective first (fewer rows)
|
||||||
\item Pushdown selection:
|
\item Pushdown selection:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Adaptive Radix Trees (ARTs) are mainly used to ensure primary key constraints and to speed up point and highly selective queries (selectivity <0.1\%).
|
Adaptive Radix Trees (ARTs) are mainly used to ensure primary key constraints and to speed up point and highly selective queries (selectivity $<0.1\%$).
|
||||||
It can also be manually created using \texttt{CREATE INDEX} and are automatically created for columns with a \texttt{UNIQUE} or \texttt{PRIMARY KEY} constraint.
|
It can also be manually created using \texttt{CREATE INDEX} and are automatically created for columns with a \texttt{UNIQUE} or \texttt{PRIMARY KEY} constraint.
|
||||||
|
|
||||||
The above applies to DuckDB, which is often similar to Postgres.
|
The above applies to DuckDB, which is often similar to Postgres.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
\subsection{Query Processing}
|
\subsection{Query Processing}
|
||||||
\subsubsection{Sorting}
|
\subsubsection{Sorting}
|
||||||
Given $B$ frames of memory and $N$ records, we ahve
|
Given $B$ frames of memory and $N$ records, we have (typically I/Os in pages to be read)
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \bi{Merge Sort}: $2N \cdot P$, with $P = (1 + \ceil{\log_{B - 1}\ceil{N \div B}})$ the number of passes.
|
\item \bi{Merge Sort}: $2N \cdot P$, with $P = (1 + \ceil{\log_{B - 1}\ceil{N \div B}})$ the number of passes.
|
||||||
After the first pass, $\ceil{N \div B}$ number of sorted runs were created (typically)
|
After the first pass, $\ceil{N \div B}$ number of sorted runs were created (typically)
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ The following things are typically important to know very well (not exhaustive)
|
|||||||
\item Conflict Serializability
|
\item Conflict Serializability
|
||||||
\item Core concepts of Vector Search
|
\item Core concepts of 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))
|
||||||
|
\item 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