Яндекс опубликовал исходный код YTsaurus

ЮЦаурус

YTsaurus — это распределенная платформа для хранения и обработки больших данных с поддержкой модели MapReduce.

Несколько дней тому назад Яндекс представил через один объявленный открытие исходного кода платформы YTsauru, который используется для распределенного хранения и обработки больших объемов данных, который поддерживает манипулирование данными с использованием парадигмы MapReduce, механизма запросов SQL, распределенной файловой системы и хранилища NoSQL в формате ключ-значение.

ЮЦаурус использовал на инфраструктуре Яндекса эффективно использовать вычислительную мощность суперкомпьютеров компании Платформа может масштабироваться до кластеров из более чем 10 000 узлов, охватывающих до миллиона процессоров и тысяч графических процессоров (для задач машинного обучения).

Изолированные контейнеры, работающие на физических серверах, могут использоваться в качестве единиц кластера. Хранилище может содержать эксабайты данных, расположенных на различных носителях, таких как жесткие диски, твердотельные накопители, NVME и ОЗУ.

Кластер поддерживает динамическое добавление и удаление узлов, избыточность (отсутствие единой точки отказа), автоматическую репликацию, активные обновления программного обеспечения кластера и автоматическое восстановление избыточности в случае отказа узла.

Поддерживаются три типа кластеров: вычислительные кластеры (для массивно-параллельной обработки больших данных с использованием операций MapReduce), кластеры для сводных таблиц и хранилища ключей и значений, а также географически распределенные кластеры.

Платформенный сервис может предоставить средства для хранения и обработки данных для десятков тысяч пользователей. Типичные приложения YTsaurus в Яндексе включают в себя хранение информации о пользователях рекламной сети, обучение моделей машинного обучения, формирование поискового индекса и построение хранилища данных для таких сервисов, как Яндекс Такси, Еда, Лавка и доставки.

Из основных вариантов использования упоминаются:

  • Пакетная обработка: MapReduce и SPYT (Apache Spark как вычислительный движок данных в YTsaurus) для обработки структурированных и частично структурированных данных: записей или финансовых транзакций.
  • Специальный анализ: Быстрые запросы через CHYT (группа серверов ClickHouse на вычислительных узлах YTsaurus) без копирования данных в отдельную систему аналитики. ODBC и JDBC с возможностью подключения BI для визуализации.
  • OLTP-задачи: Транзакционная работа в режиме реального времени с хранилищем «ключ-значение»: например, хранилище профилей пользователей, показ рекламы или обработка потоков.
  • Машинное обучение: Управляйте кластерами GPU для обучения моделей с миллиардами параметров.
  • Хранение метаинформации: Транзакционное хранение метаинформации и надежное обслуживание распределенных блокировок.
  • Создание хранилищ данных и ETL для многоуровневой обработки данных с использованием типовых инструментов: Apache Spark, SQL, MapReduce.

При этом со стороны основных элементов архитектуры упоминаются следующие:

  • Распределенная файловая система и отказоустойчивое древовидное хранилище метаинформации Cypress.
  • Планировщик для распределенных вычислений с поддержкой модели MapReduce, а также расширенными базовыми операциями.
  • Горизонтальная масштабируемость ИТ-операций.
  • Изоляция вычислительных ресурсов и возможность распределения определенных вычислительных ресурсов (CPU, GPU, RAM) в разных пропорциях.
  • Сводные таблицы для создания хранилища OLTP, поддержка хранилища на основе MVCC, транзакций, возможность удаления данных после истечения срока действия и очереди сообщений для потоковой обработки данных через сводные таблицы.
  • API и библиотеки для языков программирования C++, Python, Java, Go.
  • Веб-интерфейс для пользователей и администраторов, поддерживающий навигацию по древовидному хранилищу.

В конце концов если вам интересно узнать об этом больше, следует знать, что код проекта написан на языке C/C++ и открыт под лицензией Apache 2.0. Вы можете уточнить подробности в по следующей ссылке.

El Репозиторий GitHub содержит серверный код для YTsaurus, среду развертывания, используемую k8s, веб-интерфейс к системе и клиентские SDK для популярных языков программирования, таких как C++, Java, Go и Python. 


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.