вк
← Все кейсы

ПЛАТФОРМА И ВНЕДРЕНИЕ

Собственная S3-платформа в масштабе Ozon

Сохранить хранение в Ceph, заменить индекс и постепенно перевести пользователей на Lusca.

100%объектного хранения переведено

Не переписывать всё

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

Моя ответственность

Организовал запуск и внедрение Lusca. Обеспечил миграцию индекса для десятков петабайт данных и миллиардов объектов. Мой вклад — управление запуском и массовым внедрением. Архитектура, разработка и техническая реализация — результат работы команды.

Переход через S3 Front

Для постепенной миграции команда создала временную прокси S3 Front. Она работала с двумя бакетами: primary и fallback. Новые записи направлялись в primary. Если нужного объекта там ещё не было, чтение обращалось к старому fallback. Это позволяло продолжать обслуживание запросов и переносить данные по частям.

Цена решения

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

Внедрение и результат

На Lusca переведено 100% объектного хранения Ozon. Масштаб миграции — десятки петабайт данных и миллиарды объектов.

Техническая статья команды Ozon Tech ↗

Выступление «Собственная реализация S3 поверх Ceph» ↗

Скачать резюме Виктора Корейши ↓

Есть похожая задача?

Обсудить в Telegram ↗
guest@koreysha.ru: ~

Добро пожаловать в архив Виктора Корейши. Расшифровки, подкасты и истории — из командной строки. Начните с ls или cat README.txt. Список команд: help. Хотите связаться? cat contact.txt — контакты и с чего начать. Можно и по-быстрому: tail contact.txt. Для любопытных: man viktor · git log --oneline life · roll 2d20.