Storage
Сервисы Яндекса оперируют эксабайтами данных, обращаются к ним чаще
миллиона раз в секунду и генерируют терабиты трафика.
Мы создаём и развиваем общую инфраструктуру хранения данных, на которой
команды Яндекса и пользователи Yandex Cloud строят свои продукты. Клиентов
становится всё больше, и мы должны обеспечить их надёжную и стабильную
работу.
Ключевые характеристики
-
Триллионы файлов
-
Более 2 эксабайт данных
-
Сотни гигабит в секунду входящей и исходящей нагрузки
-
Более 1 000 000 запросов к данным в секунду
-
Более 300 000 дисков
-
Данные геораспределены по нескольким дата-центрам
Чем мы занимаемся
-
Единое хранилище данных (MDS)
Технологическая основа нашей инфраструктуры, высокодоступное, надёжное и
горизонтально масштабируемое хранилище -
Общеяндексовое хранилище изображений (Avatars)
Сервис хранения, передачи, обработки и оптимизации изображений в различных
форматах -
Yandex Cloud Object Storage
Универсальное масштабируемое облачное объектное хранилище с S3-совместимым интерфейсом -
Yandex Cloud CDN
Сервис для организации сети распространения контента конечным пользователям по всему миру
Какие задачи мы решаем
Надёжность и масштабируемость
Объём хранимых данных постоянно растёт, причем с экспоненциальной
скоростью.
Наша система должна поддерживать этот рост — уметь масштабироваться на
100 000 хостов без потери качества, а это влечёт существенные изменения как в
архитектуре системы, так и в Ops-подходах.
Чем больше система, тем сложнее за ней следить и поддерживать в рабочем
состоянии 24x7x365. К тому же на таких масштабах непредвиденные
аппаратные и программные ошибки, всплески нагрузки случаются так часто, что
становятся нормой.
Мы стремимся к автоматизации всех процессов — от релизного цикла (CI/CD) до
развёртывания всей системы в совершенно новом окружении, от восстановления
битых секторов и замены сбойных дисков до проведения учений по Disaster
Recovery.
Оптимизация
Мы стремимся выжать максимум из "железа" и ПО, поэтому постоянно ищем узкие места и оптимизируем их. Это позволяет ускорить работу системы для пользователей, эффективнее потреблять вычислительные ресурсы и удешевить хранение данных.
Достичь этого нам помогают:
- эффективные структуры данных и алгоритмы;
- перевод отдельных компонентов на актуальный стек;
- новые алгоритмы компрессии к различным типам данных;
- новые схемы хранения и репликации данных.
Удобство использования
Помимо выполнения основной функции, хранилище данных должно быть
удобным: не менять привычки пользователей в работе с данными, не требовать
существенной доработки или переписывания их инструментов.
Для удобства пользователей мы:
- реализуем и развиваем протоколы работы с хранилищем от S3 API до NFS/(S)FTP и FUSE;
- по запросу реализуем фичи и целые сервисы, которые позволяют пользователям и бизнесу проще и эффективнее решать задачи.
Технологии
Многие готовые опенсорсные решения плохо справляются с нашими задачами в
условиях гигантских объёмов и нагрузок, поэтому большинство компонентов в
наших сервисах собственной разработки.
В основном мы пишем на Go — он отлично подходит для выстраивания
бизнес-логики задач, прост и имеет встроенную асинхронность. Здорово, если
вы знаете Go, а если нет — не беда. Мы легко научим и поможем набраться
экспертного опыта.
Отдельные компоненты разрабатываем на C++ и Python, где они эффективнее.
В качестве баз для метаданных используем в основном PostgreSQL — уже
накопили свой опыт, обращаемся к помощи коллег из Managed Databases.
Рассказываем о себе
Выступления
Object Storage: анонсы — Михаил Костин
Yandex Object Storage сценарии использования, масшабируемость и оптимизация производительности
На пути к эксабайту — Антон Кортунов
Beyond Object Storage: СDN и новые возможности объектного хранилища
Yandex Cloud Backup: сохранить всё!
Статьи
Коды избыточности: простыми словами о том, как надёжно и дёшево хранить данные
YARL: как Яндекс построил распределённый Rate Limiter с нулевым влиянием на время ответа сервисов
Как применение кодов избыточности в SDS помогает Яндексу дёшево и надёжно хранить данные
Опенсорсные проекты
yandex-cloud/geesefs: Finally, a good FUSE FS implementation over S3
Больше, чем работа
В команде есть:
- потомственный пивовар;
- хакеры-победители яндексового хакатона Capture The Flag;
- дрифтер и гонщики на великах;
- неформальная атмосфера, юмор категории B и C.