Uber децентрализовал своё хранилище данных, переработав архитектуру Hive. Теперь платформа поддерживает более 16 тыс. наборов данных объемом свыше 10 Петабайт, обеспечивая аналитические задачи без простоев, что критично для бизнеса.
Предыстория и рынок
Ранее вся информация хранилась в монолитной системе, что создавало риски сбоев и затрудняло управление данными. В условиях конкуренции на рынке технологий, где устойчивость и скорость обработки данных становятся решающими факторами, переоснащение является своевременным шагом.
Технические детали перехода
Процесс миграции осуществляется с помощью указателей на новые места хранения в Hadoop Distributed File System (HDFS), что позволяет избежать дублирования данных. Существенной частью системы стало обновление указателей в Hive Metastore, что, по словам инженера Uber Виджайанта Сони, гарантирует «незаметное функционирование для критически важных задач».
Для успешного выполнения миграции разработаны четыре основных компонента: Migrator для начального перемещения наборов данных, Real-time и Batch Synchronizers для синхронизации метаданных, а также Recovery Orchestrator для отслеживания резервных копий указателей. В ходе миграции было перемещено тысячи наборов данных, выполнено более 7 миллионов синхронизаций метаданных и освобождено более 1 ПБ пространства в HDFS.
Выводы для разработчиков
Переход на децентрализованную архитектуру позволяет командам работать более автономно, улучшая наблюдаемость и соблюдение стандартов. Ситуация также демонстрирует важность эффективного управления данными в организациях, особенно для тех, кто использует многообразие наборов данных в своих бизнес-процессах. Для российских разработчиков это сигнал о необходимости пересмотра своем подхода к архитектуре данных. В условиях активного роста объемов данных это может улучшить производительность и обеспечить гибкость в управлении ресурсами.
Следующий этап — непрерывное дополнение новых наборов данных без негативного влияния на существующие рабочие процессы и дальнейшее развитие децентрализованных решений в рамках компании.