Система распределенного, масштабируемого и высоконадежного хранения данных для виртуальных машин (и не только)

Доклад принят в Программу конференции
Кирилл Коротаев (Parallels)Кирилл Коротаев

Каждый уважающий себя программист хоть раз в жизни хотел написать свою систему хранения данных, но не у каждого был шанс. В рамках этого доклада мы расскажем о том, почему нам потребовалось написать свою распределенную систему хранения данных, а существующие решения не подошли. Покажем, почему это смелое и нетривиальное решение и как, все-таки решившись на такое, избежать шишек и достичь подобной цели. Будем говорить много умных слов, таких как "Paxos", "Репликация" и "Consistency", а также покажем, как из них можно построить продукт.

С проблемой хранения и  обработки данных сталкиваются многие из нас при написании приложений, и, в частности, масштабируемых веб-приложений. В докладе показывается, что требования к системе хранения данных для виртуальных машин, исполняющихся поверх такого хранилища, выше, чем к обычному хранилищу объектов (object storage), например, Amazon S3, которые часто используются для веб. Мы покажем, как выполнить эти требования и как можно добиться strong consistency свойственного обычным блочным устройствам, не потеряв при этом в масштабируемости и производительности.

Дополнительно поделимся ценным опытом, приобретенным при создании и тестировании такого хранилища данных.

 

Целевая аудитория

Программисты, архитекторы масштабируемых веб-приложений и систем хранения данных, системные администраторы.