TGViewer
Data Engineering Digest Data Engineering Digest @dataengineeringdigest · 1.17K subscribers
Post #14 1.72K
Владимир Озеров — Как работает Apache Iceberg на примере Trino

https://www.youtube.com/watch?v=hsCtWz8JDRc
или
https://vkvideo.ru/video-147464741_456239437

Сложность: 2/3 (Очень сложно, но очень понятно)

Кому будет интересно:
Будущее (а может уже и настоящее) совремнных Data Patform - Iceberg и Trino. Слышали про Iceberg и Trino и хотите понять, как они работают? Тогда обязательно к просмотру.

---

✨ Краткий пересказ и выводы по докладу ✨

Владимир Озеров, руководитель компании Querify Labs, подробно разобрал, как работает Apache Iceberg, и показал его интеграцию с Trino.

---

🔍 Основные тезисы:

1️⃣ История и значение Iceberg:
- Iceberg был создан для решения проблем атомарных обновлений и консистентности данных в дата-лейках. Изначально разработан Netflix для работы с большими объемами данных.

2️⃣ Основные концепции Iceberg:
- Iceberg моделирует транзакции поверх таблиц в дата-лейках.
- Использует файлы данных и метаданные для обеспечения консистентности.
- Основан на журнале изменений, аналогично PostgreSQL и Kafka.

3️⃣ Метаданные и транзакции:
- Метаданные описывают файлы и их консистентные состояния.
- Iceberg поддерживает транзакции только в рамках одной таблицы. Поддержка транзакций между таблицами пока не реализована, но обсуждается.

4️⃣ Снапшоты и бранчи:
- Снапшоты организованы в линейные истории, называемые бранчами.
- Возможность создания дополнительных бранчей и их протегирования.
- Снапшоты описывают все файлы данных, необходимые для получения консистентного слепка.

5️⃣ Метаданные и их структура:
- Метаданные в Iceberg разбиты на четыре типа файлов:
- Metadata
- Manifest list (avro)
- Manifest (json)
- Статистики (Puffin)

6️⃣ Атомарная запись и публикация данных:
- Атомарная запись данных позволяет избежать проблем с консистенцией.
- Возможен атомарный апдейт, что устраняет проблемы с Eventual Consistency.

7️⃣ Каталоги и их реализация:
- Каталоги в Iceberg хранят информацию о схемах и таблицах. Самые популярные:
- HMS (Hive Metastore) — самый популярный вариант.
- REST-каталог рассматривается как будущее.

8️⃣ Работа с данными в Iceberg:
- Подходы к удалению записей: Copy-on-Write и Merge-on-Read.
- Merge-on-Read позволяет быстро читать данные, но замедляет запись.

9️⃣ Партишин-трансформ:
- Партишин-трансформ — это функция, которая принимает одну или несколько колонок и возвращает значение для ключа партии.
- В отличие от Hive, где каждая колонка позиционирования была реальной, в Iceberg это виртуальные таблицы.

🔟 Технические аспекты Iceberg:
- Iceberg — это библиотека, которая не запускает процессы, а предоставляет методы для работы с метаданными.
- Iceberg не поддерживает материализованные представления, но Trino позволяет строить их поверх Iceberg.
- Для работы с Iceberg необходимо реализовать два ключевых интерфейса:
- Интерфейс для общения с хранилищем.
- Интерфейс для атомарной публикации изменений метаданных (каталог).

---

💡 Выводы:

Iceberg — мощный инструмент для аналитики:
- Предоставляет транзакционность и консистентность данных в дата-лейках.
- Подходит для работы с большими объемами данных и сложными аналитическими запросами. Не подходит для OLTP
- Trino использует Iceberg для атомарной публикации изменений метаданных и статистики.
- Trino поддерживает чтение, запись, дата-скипинг, предикат пуш-дауны, партишинг и тайм-тревел.

📌 Итог:

Доклад Владимира Озерова — это глубокий dive в Apache Iceberg, который помогает понять, как этот инструмент обеспечивает транзакционность и консистентность данных в аналитических системах. Интеграция с Trino делает Iceberg еще более мощным инструментом для работы с большими данными.
YouTube Владимир Озеров — Как работает Apache Iceberg на примере Trino Подробнее о конференции SmartData: https://jrg.su/aTWU2K — — Скачать презентацию с сайта SmartData — https://jrg.su/pSa4pt Apache Iceberg — популярный табличный формат для построения современных lakehouse-платформ. В докладе детально рассмотрели архитектуру…
  • 🔥 9
More from @dataengineeringdigest
  1. Oct 10, 2026✨ Сергей Харитонов — Физиология лидерства: как тимлиду оставаться в ресурсе Сложность: 1/3…
  2. Oct 1, 20265 октября начнется 19-й поток программы Data Engineer от Newprolab Программа для junior- и…
  3. Oct 1, 2026Прошу простить, уже долгое время не могу выделить время на полноценный пост о интересных д…
  4. Sep 23, 20265 октября начнется 19-й поток программы Data Engineer от Newprolab Программа для junior- и…
  5. Sep 6, 2026Ещё один доклад из которого не получился пост по причине того, что админ очень не любит sp…
  6. Sep 5, 2026photo post
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →