Что такое Trino? Trino для начинающих — простыми словами!
The Data and AI Guy
0:00 / 0:00
Что такое Trino? Trino для начинающих — простыми словами!
1 383 просмотра · 6 дней назад
The Data and AI Guy
30,1 тыс. подписчиков
1 383 просмотра · 6 дней назад
Один SQL-запрос, который объединяет таблицу Postgres с папкой файлов Parquet в объектном хранилище, без конвейера обработки, без копирования и без хранилища данных. Движок, отвечающий на запрос, не владеет данными. Этот движок — Trino.
Это объяснение для начинающих о Trino: распределенном движке SQL-запросов без собственного хранилища. Я расскажу, почему Facebook создал оригинальный Presto в 2012 году (каждый межсистемный запрос сопровождался двухнедельным конвейером обработки), как на запрос фактически отвечает координатор, рабочие процессы и коннекторы, зарегистрированные как каталоги, и почему для файловых источников требуется REST-каталог Hive Metastore, Glue или Iceberg, прежде чем Trino сможет увидеть хотя бы одну таблицу. Затем часть, определяющая скорость ваших запросов или скорость передачи целых таблиц по сети: перенос предикатов и как использовать EXPLAIN для проверки того, сохранился ли ваш фильтр после передачи в коннектор. Наконец, реальный предел — это память: Trino работает с оперативной памятью и завершает запросы с ошибкой, если они не помещаются в память, куда Spark выгрузил бы данные на диск. Поэтому в заключение я расскажу, когда лучше использовать Trino, а когда Spark, Snowflake или BigQuery, об истории форков Presto и о том, где вы уже использовали Trino, даже не подозревая об этом (Starburst, Athena, Lakehouse SQL вместо Iceberg).
⏱️ Разделы
0:00 - Один запрос к Postgres и озеру данных
0:39 - Что рассматривается в этом видео
0:55 - Определение: SQL-движок без хранилища
1:32 - Зачем он существует: Facebook, Presto и налог на конвейер
2:28 - Координатор и рабочие процессы
3:01 - Коннекторы и каталоги
3:36 - Почему файловым источникам нужно метахранилище или каталог
4:17 - Trino не хранит состояние, которое вы бы пропустили
4:40 - Перенос предикатов: то, что делает его быстрым
5:23 - Когда перенос предикатов не удается и как EXPLAIN сообщает об этом
6:16 - Реальный предел: память и неудачные запросы
7:32 - Trino против Spark: кто ждет?
8:25 - Trino против Snowflake и BigQuery
8:57 - Trino против Presto: форк
9:28 - Где вы уже видели Trino: Starburst, Athena, Iceberg
10:08 - Краткий обзор
🔗 Ссылки
Trino: https://trino.io
Коннекторы Trino: https://trino.io/docs/current/connect...
Apache Iceberg: https://iceberg.apache.org
Starburst: https://www.starburst.io
Amazon Athena: https://aws.amazon.com/athena/
#Trino #Presto #distributedSQL #queryengine #dataengineering #datalake #lakehouse #ApacheIceberg #Starburst #AmazonAthena #ApacheSpark #Postgres #Parquet #predicatepushdown #federatedquery