Почему аварийное восстановление намного проще для базы данных только для добавления?

В книге «Проектирование приложений, интенсивно использующих данные», говорится Concurrency and crash recovery are simpler if segment files are append-only or immutable. For crash recovery, you don't need to worry if a crash happened while a value was being overwritten, leaving you with part of old data and part of new data.

Однако я не понял «оставить вам часть старых данных и часть новых данных». Даже для базы данных только для добавления она будет иметь часть старых данных и часть новых данных, когда добавление новых данных будет прервано.

Поскольку журнал повторов может быть применен непосредственно к базе данных только для добавления. В традиционной базе данных применение журнала повторов может потребовать значительных ресурсов.

The Impaler 19.03.2022 22:34
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
0
1
15
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Базы данных сообщают, что «данные зафиксированы» после того, как данные записываются в журнал. В базах данных только с добавлением журнал является единственным местом для записи данных; нет других файлов данных для обновления, следовательно, нет сложности.

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

Impaler дал хорошее описание сложности с базами данных без добавления. Существует несколько структур данных, и для их синхронизации после сбоя необходим процесс.

Спасибо! Теперь я понимаю. Другие базы данных более сложны и имеют копии для некоторых данных.

Mark 28.03.2022 21:36

Другие вопросы по теме