Оптимизация стоимости хранения данных в объектном хранилище, или Когда больше == меньше

Базы данных и системы хранения

Доклад принят в программу конференции

Тезисы

Объектное хранилище Dispersed Object Store (DOS) родилось в недрах корпоративной почтовой системы Mailion. Для корпоративной переписки характерно большое количество частично или полностью совпадающих писем. Дедупликация писем и их фрагментов на уровне объектного хранилища позволяет многократно снизить потребление дискового пространства и IO. При этом в DOS реализована не только дедупликация, но и другие механизмы, снижающие избыточность данных (чанкинг и компрессия). Оборотной стороной этих механизмов является рост накладных расходов: увеличивается количество метаданных, хранящихся на SSD, растёт утилизация CPU. Встаёт вопрос определения оптимального баланса аппаратных ресурсов. Что выгоднее — включить максимальный уровень сжатия и дедупликации данных, чтобы сэкономить диски, но при этом потратиться на топовый CPU, или отключить все вычислительно сложные оптимизации, но расплатиться за это покупкой большого количества медленных дисков?

Ответить на этот вопрос не так просто: разные аппаратные ресурсы компьютера имеют разную цену, в то же время алгоритмы дедупликации и компрессии обладают большим объёмом настроек, сложным образом определяющих финальную стоимость хранения данных. Мы воспользовались методами black-box-оптимизации, чтобы определить комбинацию параметров, соответствующую минимальной стоимости хранения. В зависимости от значения параметров она может изменяться в диапазоне от $70 до $600 за отказоустойчивое хранение 1 Тб записанной информации. При этом стоимость максимизируется как раз при тех настройках, которые интуитивно кажутся более логичными и правильными.

В ходе доклада мы рассмотрим:
* архитектуру современного объектного хранилища;
* реализацию алгоритмов дедупликации и компрессии данных;
* методы оптимизации, подходящие для исследования эффективности крупномасштабных программных систем;
* практический пример оптимизации стоимости хранения данных в объектном хранилище DOS.

Работает в IT-индустрии около 10 лет, пишет на Go, Python и С++, длительное время занимался DevOps. Увлекается распределёнными системами и базами данных.

МойОфис

Широко известные продукты компании — редакторы офисных форматов и платформа для организации облачного сервиса хранения и совместного редактирования документов. В настоящее время активно развивается новая линейка корпоративных продуктов, в состав которой входит корпоративная почтовая система Mailion.

Видео