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

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

СУБД: графовые, объектные и другие

#Электронная почта
#Оптимизация производительности
#Архитектура данных, потоки данных, версионирование
#Алгоритмы и их сравнение
#GO

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

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

Разработчики и системные инженеры, интересующиеся темой эффективного хранения больших объёмов неструктурированной информации и методами поиска оптимальной конфигурации сложного софта.

Тезисы

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

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

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

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

МойОфис

МойОфис — безопасные офисные решения для общения и работы с документами. Обеспечивают полный контроль над данными, соответствуют отраслевым стандартам безопасности, подходят для организаций любого размера, а также для домашнего использования. Работают на любом устройстве в любой точке мира. Состоят в реестре отечественного ПО.

Видео