Встречается на собеседованиях • сегодня
Что такое D (долговечность) в принципах ACID
D (Durability) в ACID гарантирует, что после успешного завершения транзакции изменения останутся в системе даже при сбоях (например, отключении питания). Это достигается через механизмы записи в постоянное хранилище (диск) до подтверждения транзакции.
Пример с SQL-транзакцией:
sql
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;
UPDATE accounts SET balance = balance + 100 WHERE user_id = 2;
COMMIT; # Только после записи на дискВ Python (с SQLite):
python
import sqlite3
conn = sqlite3.connect('bank.db')
conn.execute("PRAGMA journal_mode=WAL") # Режим журналирования для долговечности
cursor = conn.cursor()
try:
cursor.execute("BEGIN")
cursor.execute("UPDATE accounts SET balance = balance - 100 WHERE user_id = 1")
cursor.execute("UPDATE accounts SET balance = balance + 100 WHERE user_id = 2")
conn.commit() # Фиксация с гарантией записи
except:
conn.rollback()Реализуется через write-ahead logging (WAL), fsync() или аналогичные механизмы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы