From 238f2653634f263705cece7b89b426ff62335228 Mon Sep 17 00:00:00 2001 From: Arity-T Date: Fri, 8 Nov 2024 16:24:55 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B2=D0=B0=D1=8F=20=D1=82?= =?UTF-8?q?=D0=B0=D0=B1=D0=BB=D0=B8=D1=86=D0=B0=20=D1=81=20=D1=82=D1=80?= =?UTF-8?q?=D0=B0=D0=BD=D0=B7=D0=B0=D0=BA=D1=86=D0=B8=D1=8F=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- report/img/transaction1_1.png | Bin 0 -> 15608 bytes report/img/transaction1_2.png | Bin 0 -> 10573 bytes report/img/transaction1_3.png | Bin 0 -> 8641 bytes report/report.tex | 79 ++++++++++++++++++++++++++++++++++ 4 files changed, 79 insertions(+) create mode 100644 report/img/transaction1_1.png create mode 100644 report/img/transaction1_2.png create mode 100644 report/img/transaction1_3.png diff --git a/report/img/transaction1_1.png b/report/img/transaction1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..40f9fda51369df42af6c44d03b3d47275e7dd0f1 GIT binary patch literal 15608 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
  • &TH*ZAzQS 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 YME#5(L|=kb0Cz#E%34b0k1ay}4-GF;djJ3c literal 0 HcmV?d00001 diff --git a/report/img/transaction1_3.png b/report/img/transaction1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..2cad73e6b330fa45e1541b150fbe50b9ae1200a7 GIT binary patch literal 8641 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 literal 0 HcmV?d00001 diff --git a/report/report.tex b/report/report.tex index e531b42..8d46860 100644 --- a/report/report.tex +++ b/report/report.tex @@ -671,4 +671,83 @@ $$; \end{lstlisting} +\subsection{Работа 5: Транзакционная модель} +\textbf{Задача:} Выбрать определённый уровень изоляции транзакций и продемонстрировать наличие или отсутствие артефактов: <<Грязное чтение>>, <<Неповторяемое чтение>> и <<Фантомы>>. + +Уровень изоляции \texttt{Read Commited} был задан при помощи команды + +\texttt{SET TRANSACTION ISOLATION LEVEL READ COMMITTED;} + +На этом уровне изоляции исключается артефакт <<Грязное чтение>>, однако сохраняются артефакты <<Неповторяемое чтение>> и <<Фантомы>>. + +В таблице~\ref{tbl:bad_read} представлены транзакции, на примере которых демонстрируется отсутствие артефакта <<Грязное чтение>>. + +\begin{table}[h!] + \centering + % \addtocounter{table}{-1} + \caption{Транзакции для демонстрации отсутствия артефакта <<Грязное чтение>>.} + \label{tbl:bad_read} + \footnotesize + \begin{tabularx}{\textwidth}{|c|X|X|} + \hline + t & Транзакция 1 & Транзакция 2 \\ + \hline + + \multirow{3}{*}{} & \multicolumn{2}{c|}{ + \specialcell{ + В первой транзакции обновляется запись в таблице \texttt{judge}. В момент после обновления \\ + вторая транзакция читает эту же запись из \texttt{judge}, однако в связи с отсутствием артефакта \\ <<Грязное чтение>> она видит исходную таблицу до обновлений первой транзакции. + } + }\\ + \cline{2-3} + + & \multicolumn{2}{c|}{Тут что-то ещё. }\\ + \cline{2-3} + + & \specialcell{Запуск транзакции 1 \\ \texttt{begin;}} & \specialcell{Запуск транзакции 2 \\ \texttt{begin;}}\\ + \hline + + $t_1$ & + \specialcell{ + Изменение имени судьи с \texttt{id\_judge = 201}\\ \\ + % \texttt{select id\_judge, name from judge}\\ + % \texttt{where id\_judge = 201;}\\ + \texttt{update judge set name = 'Софа'}\\ + \texttt{where id\_judge = 201;}\\ + % \texttt{select id\_judge, name from judge}\\ + % \texttt{where id\_judge = 201;}\\ + } + \includegraphics[width=1\linewidth]{img/transaction1_2.png} + & + \\ + \hline + + $t_2$ & + & + \specialcell{ + Получение имени судьи с \texttt{id\_judge = 201} \\ + и завершение транзакции\\ \\ + \texttt{select id\_judge, name from judge}\\ + \texttt{where id\_judge = 201;}\\ + \texttt{commit;}\\ + } + \includegraphics[width=1\linewidth]{img/transaction1_2.png} + \\ + \hline + + $t_3$ & + \specialcell{ + Отмена внесённых изменений транзакцией 1 \\ + \texttt{rollback;} \\ + % \texttt{select id\_judge, name from judge}\\ + % \texttt{where id\_judge = 201;}\\ + } + \includegraphics[width=1\linewidth]{img/transaction1_3.png} + & + \\ + \hline + \end{tabularx} +\end{table} + + \end{document} \ No newline at end of file