TGStat
TGStat
Qidiruv uchun matnni kiriting
Ilg‘or kanal qidiruvi
  • flag Uzbek
    Sayt tili
    flag Russian flag English flag Uzbek
  • Saytga kirish
  • Katalog
    Kanal va guruhlar katalogi Hududiy to‘plamlar Tematik to‘plamlar Платные каналы Kanallar qidiruvi
    Kanal/guruh qo‘shish
  • Reytinglar
    Kanallar reytingi Guruhlar reytingi Postlar reytingi
    Brendlar va shaxslar reytingi
  • Analitika
  • Postlarda qidiruv
  • Telegram'ni kuzatish
  • Targ‘ibot
    Yandex Business orqali reklama TGStat Agency orqali kanallarda reklama TGStat.ru saytida reklama
Айти-Пингвин | Дата инженер

18 Jul 2025, 10:03

Telegram'da ochish Ulashish Shikoyat qilish

Prev Next
Продолжим говорить об ACID

Раскроем буковку🔤:

Атомарность гарантирует, что транзакция, состоящая из нескольких операций, выполняется как единая и неделимая единица работы: она либо полностью завершается успешно (фиксируется), либо полностью завершается неудачей (откатывается).

Если какая-либо часть транзакции завершается неудачей, вся транзакция откатывается, и база данных восстанавливается в том же состоянии, в котором она была до начала транзакции.

Как базы данных реализуют атомарность

Базы данных используют два ключевых механизма для обеспечения атомарности.

1️⃣ Журналы транзакций (журналы предварительной записи - Write-Ahead Logs, он же WAL)
Каждая операция записывается в журнал предварительной записи, прежде чем она будет применена к фактической таблице базы данных.

После того как запись WAL безопасно помещена на диск, база данных приступает к изменению страниц в памяти, содержащих строки для учетной записи A и учетной записи B.

Когда операции увенчаются успехом:

• База данных отмечает идентификатор транзакции 12345 как зафиксированный в журнале транзакций.

• Недавно обновленные балансы для A и B в конечном итоге будут сброшены из памяти в соответствующие файлы данных на диске.

❗️Если база данных выходит из строя после записи в журнал, но до полного обновления файлов данных, WAL предоставляет способ восстановления:

• Контрольные точки (checkpoints) играют ключевую роль, поскольку определяют, с какого места в WAL начинается восстановление.

• СУБД сканирует WAL начиная с последней контрольной точки и воспроизводит все операции, которые были зафиксированы в журнале, но еще не записаны в файлы данных. Таким образом, база данных приводит свои данные в согласованное состояние (применяя все операции, которые были успешно закоммичены до сбоя).

✅СУБД повторно применяет операции (например, UPDATE) , чтобы гарантировать правильность окончательных балансов в файлах данных.

❌Если транзакция не была зафиксирована или была помечена как «выполняющаяся» на момент сбоя,то СУБД не применяет эти изменения.

2️⃣Протоколы фиксации/отката
Базы данных предоставляют такие команды, как BEGIN TRANSACTION, COMMIT и ROLLBACK

Любые изменения, внесенные между BEGIN TRANSACTION и COMMIT
считаются «выполняемыми» и не будут применены окончательно, пока транзакция не будет успешно зафиксирована.

Если какой-либо шаг завершается неудачей или вы явно указываете ROLLBACK, все изменения с момента начала транзакции отменяются.
➖➖➖➖➖➖➖➖➖➖➖➖

Если интересна БАЗА, то ставим реакции 😊⬇️

it пингвин | data engineer 🐧

#Вопросы_с_собесов #архитектура #acid

1.3k 1 27 11 57
Katalog
Kanal va guruhlar katalogi Kanallar to‘plamlari Kanallar qidiruvi Kanal/guruh qo‘shish
Reytinglar
Telegram-kanallar reytingi Telegram-guruhlar reytingi Postlar reytingi Brendlar va shaxslar reytingi
API
Statistika API'si Postlar qidiruvi API'si API Callback
Kanallarimiz
@TGStat @TGStat_Chat @telepulse @TGStatAPI
O‘qish
Академия TGStat Telegram tadqiqoti 2019 Telegram tadqiqoti 2021 Telegram tadqiqoti 2023
Kontaktlar
Справочный центр Qo‘llab-quvvatlash Email Vakansiyalar
Har xil narsalar
Foydalanuvchi shartnomasi Maxfiylik siyosati Ommaviy oferta
Botlarimiz
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot