повреждение файла или усечение при полной перезагрузке - PullRequest
1 голос
/ 03 мая 2019

При использовании ExcerptAppender поверх Chronicle Queue (добавление только журнала) гарантируется, что в случае потери питания может быть обрезан только конец файла, т. Е. Все промежуточные записи не повреждены? Если да, то на какую реализацию / файловую систему / поведение ОС это зависит?

Я заинтересован в Linux / x64. Так как это над mmap, я понимаю, что порядок очистки страниц из кеша страниц не определен, а также диск может переупорядочить записи. Это должно быть гарантировано только для SSD или конкретной файловой системы?

1 Ответ

1 голос
/ 03 мая 2019

Очередь зависит от ОС, которая асинхронно сбрасывает данные на диск.ОС обычно обеспечивает передачу данных на диск в течение 30 секунд по умолчанию, однако записанные страницы могут быть в любом порядке, поэтому, хотя может быть записано 99% из последних 30 секунд, существует вероятность того, что все последние 30 секунд будут нечитаемыми.Эта временная граница не зависит от выбора диска, скорее от конфигурации ОС.

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

Если вам нужна надежная запись на диск, мы рекомендуем использовать репликацию на 2-й или 3-й компьютер, чтобы в случае смерти компьютера или недоступности всего центра обработки данных можно было продолжить работу.При этом используется Chronicle Queue Enterprise .

...