Улучшаемые навыки
Trino
инженерия данных
Apache Iceberg
архитектура озера данных
федеративные запросы
распределенный SQL
S3
PostgreSQL
ClickHouse
Kafka
Оптимизация SQL
Наблюдаемость
Инструменты
Trino
Чему вы научитесь
01
Проектировать архитектуру аналитического доступа с федеративными запросами и определять, когда федерация оправдана.
02
Развёртывать и настраивать кластер Trino, каталоги и коннекторы к источникам.
03
Работать с Apache Iceberg как центральным слоем озера данных: создавать таблицы, записывать и изменять данные, использовать снимки, обращаться к предыдущим состояниям, изменять схему и секционирование.
04
Читать EXPLAIN / EXPLAIN ANALYZE и диагностировать проталкивание вычислений в источник, стратегию соединений, отсечение секций, статистику и сетевые обмены.
05
Подключать PostgreSQL/Greenplum, ClickHouse, Kafka, S3/HDFS и другие источники через коннекторы Trino.
06
Оптимизировать сложные SQL- и федеративные запросы, выбирать между Trino, PostgreSQL/Greenplum, ClickHouse, Spark SQL и Flink.
07
Интегрировать Trino с DBeaver и Superset, изолировать BI-нагрузку.
08
Эксплуатировать и мониторить Trino: управление памятью, группы ресурсов, сброс промежуточных данных на диск, повторные попытки и отказоустойчивое выполнение, безопасность, веб-интерфейс, JMX, Prometheus/Grafana.
Программа курса
01
Trino как распределенный SQL-движок и слой федеративного доступа
Архитектура Trino: координатор, рабочие узлы, каталоги и модули подключения; жизненный цикл запроса.
Модель выполнения: стадии, задачи, фрагменты данных и сетевые обмены; что выполняет Trino, а что передает источнику.
Развертывание стенда в Docker Compose; подключение DBeaver.
PostgreSQL/Pangolin и ClickHouse: типы данных, передача вычислений источнику, ограничения модулей подключения.
Первый федеративный запрос и чтение EXPLAIN.
Сравнение Trino с PostgreSQL/Pangolin, Greenplum и ClickHouse по классам задач.
02
Озеро данных на Trino и Apache Iceberg
Apache Iceberg: метаданные, снимки, манифесты, скрытое секционирование.
REST-каталог; обзор альтернативных реализаций каталогов.
S3-совместимое хранилище: MinIO и Yandex Object Storage; место HDFS и отличия объектного хранилища.
CREATE TABLE, CTAS, INSERT, UPDATE, DELETE, MERGE.
Изменение схемы и секционирования, доступ к состоянию на момент снимка, служебные таблицы метаданных.
Статистика, размер файлов, проблема множества мелких файлов, уплотнение и обслуживание; совместная работа с Spark.
03
Федеративные запросы и глубокая оптимизация
Передача фильтрации, выбора столбцов и агрегирования источнику; отсечение секций; статистика и стоимостной оптимизатор.
Порядок соединений, соединение с рассылкой малой таблицы и соединение с перераспределением по ключу, динамическая фильтрация, сетевые обмены, перекос данных, память и выгрузка на диск.
EXPLAIN ANALYZE и поиск узкого места в федеративном запросе Apache Iceberg + PostgreSQL/Pangolin + ClickHouse.
Федерация или материализация данных, либо выполнение непосредственно в исходной системе.
Kafka: отображение сообщений на таблицы, схемы данных, временные метки.
Trino, Spark SQL и Flink: интерактивные и федеративные запросы, пакетная и потоковая обработка.
Выполнение на уровне операторов, конвейеры обработки, внутреннее устройство сетевых обменов и модели стоимости.
04
Trino в промышленной эксплуатации: BI, безопасность и наблюдаемость
Промышленная топология; модель памяти JVM, параллельность, группы ресурсов и ограничения.
Выгрузка промежуточных данных на диск, повторные попытки, отказоустойчивое выполнение, диспетчер сетевых обменов, отказ рабочего узла.
TLS, проверка подлинности, разграничение доступа, секреты и аудит.
DBeaver и Superset; изоляция BI-нагрузки и защита от неконтролируемых запросов.
Веб-интерфейс, журналы, JMX, Prometheus/Grafana.
Лабораторная по наблюдаемости: диагностика нагрузки или сбоя по плану, статистике выполнения, метрикам и журналам.
Итоговый кейс по архитектуре и оптимизации; тестирование.
05
Итого: 16 ак. ч.; теория — 7 ак. ч. (44%), практика — 9 ак. ч. (56%).
Для кого
Техлид
Data Engineer
Data Scientist
Предварительная подготовка
Уверенное владение SQL; опыт хотя бы с одной реляционной или аналитической СУБД; базовое понимание хранилищ данных и ETL/ELT; базовые навыки работы в командной строке Linux; желателен опыт Docker. Предварительные знания Trino и Apache Iceberg не требуются.
Расписание курсов
Курс проводят
Брейман Александр
Эксперт в области разработки и архитектуры ПО
О тренере
Александр занимается разработкой учебных программ, чтением лекций, проведением семинаров, практических и лабораторных работ. Под его руководством уже не один десяток специалистов успешно защитили выпускные квалификационные работы бакалавра и магистерские диссертации.
Среди его кейсов работа в ЗАО «ТИТАН МЕТА», Московском государственном университете приборостроения и информатики, Национальном исследовательском университете «Высшая школа экономики» и УЦ IBS Training.
Александр – кандидат технических наук, доцент. С 1991 г. занимается разработкой информационных и коммуникационных систем, за это время прошел путь от программиста до начальника отдела информационных систем.
С 1994 г. преподает дисциплины, связанные с управлением данными, проектированием информационных систем и разработкой программного обеспечения.
С 2014 г. Александр является штатным экспертом УЦ IBS Training по направлению «Разработка и архитектура ПО, СУБД Oracle», где занимается проведением тренингов, разработкой тренинговых программ и развитием данного направления. Курсы, сертификаты, членство в профессиональных организациях:
2009 г. — повышение квалификации в Московском государственном университете приборостроения и информатики по программе «Информационная компетентность в профессиональной деятельности преподавателя вуза».
2011 г. — повышение квалификации в Информационно-Вычислительном Центре Московского энергетического института (технического университета) по программе «Современные технологии построения баз данных на примере Microsoft SQL Server 2008. Web-приложения и современные средства разработки. Современные технологии построения компьютерных сетей с использованием Microsoft Windows Server 2008 R2».
2024 г. — Сертифицированный тренер PostgreSQL по курсу DBA1 «Администрирование PostgreSQL 13. Базовый уровень».
Курсы и сертификаты
Александр является членом организаций:
- IEEE, IEEE Computer Society (Institute of Electrical and Electronics Engineers / Институт инженеров электротехники и электроники).
- ACM, ACM SIGMOD (Association for Computing Machinery / Ассоциация вычислительной техники).