Базы данных, такие как Oracle, SQL Server и т.д., очень хороши при целостности данных. Если бы я захотел написать хранилище данных, которое, как я знал, либо сохранит некоторые данные, либо потерпит неудачу (то есть будет ACID), тогда я бы использовал базу данных, такую как MySQL под ним, как фактический магазин, потому что эти проблемы уже решены.
Однако, как выпускник non comp-sci, мне не интересно, как ACID работает на очень низком уровне. Я знаю, что Oracle, например, постоянно записывает данные в "онлайн-журналы повтора", а затем выполняет "фиксацию" в какой-то момент, когда приложение сигнализирует о совершении транзакции.
Это этап "фиксации", который я хочу увеличить вправо и понять. Это случай просто написать "еще один байт" на диск или перевернуть 0
на 1
, чтобы сказать, что данная строка успешно сохранена?