Встречается на собеседованиях • сегодня

Что такое принцип консистентности

Принцип консистентности (согласованности) означает, что система должна поддерживать данные в непротиворечивом состоянии после любых операций. Это ключевое требование ACID в базах данных.

Пример: если транзакция переводит 100$ с аккаунта A на B, система должна гарантировать, что либо оба изменения (списание и зачисление) выполнятся, либо ни одно из них. Не допускается ситуация, когда деньги списались, но не зачислились.

java
// Пример с JDBC
try (Connection conn = dataSource.getConnection()) {
    conn.setAutoCommit(false); // Отключаем авто-коммит
    
    // Списание
    PreparedStatement stmt1 = conn.prepareStatement(
        "UPDATE accounts SET balance = balance - 100 WHERE id = ?");
    stmt1.setInt(1, accountA);
    stmt1.executeUpdate();
    
    // Зачисление
    PreparedStatement stmt2 = conn.prepareStatement(
        "UPDATE accounts SET balance = balance + 100 WHERE id = ?");
    stmt2.setInt(1, accountB);
    stmt2.executeUpdate();
    
    conn.commit(); // Фиксируем изменения
} catch (SQLException e) {
    conn.rollback(); // Откатываем при ошибке
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы