Перейти к содержимому

Что такое 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