Cloud Trino в архитектуре Data Lakehouse
Cloud Trino – это массивно-параллельный аналитический SQL-движок для обработки больших объемов данных из разных источников. Он позволяет:
- выполнять SQL-запросы на чтение параллельно из нескольких источников и хранилищ;
- организовывать ETL- и ELT-пайплайны без использования специализированных сервисов в архитектуре DLH.
Cloud Trino позволяет переносить аналитическую нагрузку из дорогих в обслуживании и трудно масштабируемых корпоративных хранилищ (например, на базе Greenplum) в более дешевые озера данных и DLH.
В архитектуре Data Lakehouse компонент выполняет следующие функции:
-
Запрос данных из источников по PULL-модели (для простых сценариев).
-
Выполнение через API Apache Iceberg операций чтения и записи данных в объектном S3-хранилище.
-
Балансировка входящего потока SQL-запросов от источников и потребителей в DLH.
-
Публикация информации об источниках и структуре данных DLH во внешнем каталоге метаданных для управления данными и отслеживания их происхождения.
-
Предоставление данных по запросам внешних сервисов напрямую из S3-хранилища для формирования отчетов, BI-аналитики, машинного обучения.
-
Взаимодействие со специализированными аналитическими СУБД (например, ClickHouse, PostgreSQL) для выполнения аналитики реального времени.
-
Многофазная оптимизация плана запроса — формирование фиксированной последовательности действий при выполнении SQL-запроса:
- применение фильтров;
- выбор оптимального порядка с помощью
JOIN; - замена в запросе таблиц на представление (
VIEW); - выполнение операций трансформации данных.