Итак, вы решили надежно записывать данные на диск Базы данных и системы хранения
Начинал в бэкенд-разработке, делал бэкенд для игр и решений в области безопасности (антифрод, анализ угроз). Перешел в разработку СУБД, участвовал в разработке подсистемы хранения проекта Neon, заменяющего уровень хранения PostgreSQL на распределенный (Оpen Source-аналог Amazon Aurora). Сейчас занимается разработкой распределенной СУБД Picodata, основанной на экосистеме Tarantool.
Тезисы
Базы данных очень часто оценивают по скорости обработки запросов, однако надежность хранения данных играет не менее важную роль.
В первой части доклада рассмотрим с какими особенностями поведения операционной системы приходится сталкиваться для обеспечения надежного хранения данных. Разберем, почему нельзя ретраить fsync, как к этому пришли разработчики PostgreSQL (спойлер: было потеряно какое-то количество данных, и сломано очень много копий в спорах с разработчиками ядра Linux).
Во второй части доклада посмотрим на способы тестирования приложений на наличие ошибок с корректной записью данных на диск. Рассмотрим практики, которые нам доступны уже сейчас для тестирования приложений на наличие таких проблем. Одним глазом посмотрим на недавние научные работы в области методов верификации подходящих для решения задачи и на перспективы внедрения верифицированных файловых систем.
