digital-garden/_inbox/Транзакция БД.md

34 lines
2.1 KiB
Markdown
Raw Normal View History

2024-06-13 21:01:37 +03:00
---
aliases:
- транзакция
- транзакции
tags:
- зрелость/🌱
date:
- - 2024-05-28
zero-link:
- "[[00 Базы Данных]]"
parents:
linked:
---
2024-06-19 21:06:59 +03:00
Транзакция - способ группировки приложением нескольких операций в одну логическую единицу, которая либо выполняется вся, либо не выполняется вовсе (прерывание и откат).
2024-06-19 19:28:52 +03:00
2024-06-19 21:06:59 +03:00
Для реализации обычно используется [Журнал БД](Журнал%20БД.md). Обычно у транзакции есть идентификатор.
2024-06-13 21:01:37 +03:00
**Как происходит commit транзакции:**
- Подготовка транзакции в движке БД
- Запись транзакции в лог
- Завершение транзакции в движке БД
2024-06-19 20:08:52 +03:00
- Возврат результата клиенту
**Свойства транзакций БД:**
![Свойства транзакции БД (ACID)](Свойства%20транзакции%20БД%20(ACID).md)
**Проблемы при параллельном выполнении нескольких транзакций:**
![Проблемы при параллельном выполнении нескольких транзакций](Проблемы%20при%20параллельном%20выполнении%20нескольких%20транзакций.md)
**Уровни изоляций транзакций БД:**
![Уровни изоляций транзакций БД](Уровни%20изоляций%20транзакций%20БД.md)
2024-06-20 19:27:42 +03:00
## Дополнительные материалы
- [Транзакции. Восстановление. Классический алгоритм — Викиконспекты](https://neerc.ifmo.ru/wiki/index.php?title=%D0%A2%D1%80%D0%B0%D0%BD%D0%B7%D0%B0%D0%BA%D1%86%D0%B8%D0%B8._%D0%92%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5._%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC)