Что происходит на уровне базы данных во время выполнения транзакции?
Транзакция PostgreSQL: снимки MVCC, версии строк, блокировки, журнал WAL и различие логической фиксации и записи страниц данных.
Читать ответПодготовка к интервью
24 вопроса с ответами по теме «Транзакции и ACID в базах данных»
Что проверяют на интервью
Подборка о том, где начинаются и заканчиваются гарантии транзакции. Базовые свойства ACID и SQL-команды дополнены вопросами о внутреннем устройстве PostgreSQL, восстановлении после сбоев, конкурентных изменениях и взаимодействии БД с внешними системами.
Каталог
Транзакция PostgreSQL: снимки MVCC, версии строк, блокировки, журнал WAL и различие логической фиксации и записи страниц данных.
Читать ответуправление конкурентным доступом (Concurrency Control) уровни изоляции (Read Uncommitted → Serializable) блокировки (Locking): shared и exclusive мультиверсионность (MVCC) — хранение версий данных для чтения…
Читать ответТранзакция представляет собой группу операций, выполняемых как единое целое. Основные команды транзакций: BEGIN TRANSACTION — запускает транзакцию. COMMIT — сохраняет внесённые изменения. ROLLBACK — отменяет изменения…
Читать ответКонкуренция транзакций, финансовые системы Организовать конкурентный контроль доступа к балансу Использовать атомарные операции либо транзакции с подходящим уровнем изоляции Доступны два подхода: оптимистичная…
Читать ответПринципы согласованности БД помимо ACID: CAP и BASE ACID описывает классические гарантии транзакций: атомарность, согласованность, изоляцию и долговечность CAP (Brewer's theorem) рассматривает три свойства:…
Читать ответОткат транзакций в Postgres и MS SQL: версионность или физические операции? В PostgreSQL ROLLBACK основан на механизме MVCC (многоверсионной конкуренции) MVCC сохраняет предыдущие версии строк, чтобы обеспечить чтение…
Читать ответТранзакция представляет собой единый логический набор операций, гарантирующий атомарность и согласованность данных. Batch-insert выполняет массовую вставку записей с помощью одного SQL-запроса, повышая…
Читать ответТранзакция останется в состоянии ожидающих изменений (pending) Выполненные изменения будут храниться временно и не попадут в БД окончательно После закрытия сессии или выполнения ROLLBACK изменения будут отменены Если…
Читать ответБлокировки сохраняются до завершения транзакции Транзакция может находиться в состоянии pending или in progress Остальные транзакции ждут освобождения ресурсов При откате транзакции блокировки снимаются После коммита…
Читать ответDurability (D в ACID): что это и как обеспечивается ACID — совокупность свойств, необходимых для надежного выполнения транзакций в БД Durability гарантирует сохранность изменений после подтверждения транзакции Даже…
Читать ответЧто представляет собой распределённая транзакция и в чём её сложности? область: обеспечение согласованности данных в распределённых системах распределённая транзакция — это операция, выполняемая сразу с несколькими…
Читать ответЧто представляет собой транзакция в базе данных и что означает ACID транзакция — это логически неделимая единица операций с БД она либо завершается целиком, либо не выполняется вообще (атомарность) после завершения…
Читать ответ