Алексей Озерицкий Архитектура распределенного SQL-движка для аналитических запросов

Ближайшая конференция SmartData: #SmartData #DataEngineering #IT #conference #jugrugroup Сервис YQL предоставляет доступ к системам хранения и обработки данных с помощью SQL-диалекта. Изначально SQL-запросы исполнялись с помощью Map/Reduce операций в системе YTSaurus. Эта простая и надежная схема имеет ряд недостатков, которые привели к появлению собственного движка выполнения запросов внутри YQL. Движок делит запрос на стадии, а каждую стадию на задачи. Каждая задача выполняется на узле кластера. Задачи передают результаты вычислений друг другу по сети. Данный подход отличается от Map/Reduce-подхода, в котором данные между этапами передаются с помощью записи на диск. Из интересных возможностей движка стоит отметить кросскластерные запросы (например, можно делать запросы в которых одновременно присутствуют таблицы из кластеров ClickHouse и YTSaurus), возможность выполнения пользовательских функций на различных языках программирования. Движок доступен в виде open source-библиотеки в рамках проекта YDB Platform. Библиотека предоставляет примитивы для работы с AST-деревом запроса, вычислительные примитивы, а также набор микросервисов для запуска и управления задачами на кластере. На текущий момент библиотека работает в рамках трех инсталляций: внутренний YQL-сервис, YDB в Yandex Cloud и Yandex Query в Yandex Cloud. Скачать презентацию с сайта —
Back to Top