TGViewer
DataДжунгли🌳 DataДжунгли🌳 @data_jungle · 286 subscribers
Post #119 189
🗂️ Война каталогов Iceberg: Glue vs Polaris vs Unity vs Nessie - кто держит указатель
#dj_architecture

В посте про Iceberg я закончил вопросом «на каком каталоге сидите?». Ответов от вас не последовало ибо вы походу и не знает что это 🙂
🦖 Быстрое напоминание
Iceberg - это метаданные поверх обычных Parquet. Любая запись = новый metadata.json + атомарная подмена указателя на текущий. Так вот тот, кто хранит этот указатель и атомарно его переключает, и есть каталог. Без него нет ни ACID, ни single source of truth: два движка просто затрут друг друга.

🔑 Почему всё крутится вокруг REST-каталога
Ключевая вещь последних лет - Iceberg REST Catalog spec. Это один HTTP-контракт: движок пишет REST-клиент один раз, каталог — REST-сервер один раз, и дальше все со всеми.
Раньше под каждую пару движок ↔ каталог пилили отдельную интеграцию. Теперь нет. Вот это и есть настоящая смерть vendor lock-in - но уже на уровне метаданных, а не файлов.

⚔️ Игроки (честно, с их дырами)
🟢 Apache Polaris - дорос до top-level проекта Apache, де-факто community-стандарт REST-каталога. Open source + managed-вариант от Snowflake.
🟡 AWS Glue - родной для экосистемы AWS, но REST-полнота хромает (нет UpdateTable, пробелы в v3).
🟢 AWS S3 Tables - Iceberg как first-class ресурс прямо в S3: v3, автокомпакция, высокий tx-rate. По сути managed-каталог из коробки для тех, кто на AWS.
🟡 Unity Catalog (OSS) — Databricks открыли исходники, но он Delta-first: поддержка Iceberg догоняет, gap до managed-версии реальный. Логичен, если живёшь в Databricks.
🔵 Nessie - git-like ветки и теги для метаданных: эксперимент на ветке, мерж как в git. Data CI/CD. Минус - нужен внешний слой авторизации.
🔵 Lakekeeper - лёгкий бинарь на Rust, сильная авторизация (OpenFGA/OPA), k8s-native. Молодой, но интересный, если своё облако и жёсткий RBAC.
⚫ Hive Metastore - легаси на Thrift. Не выбор для нового, а то, с чего мигрируют в день, когда переросли.

Честно я сам половину слов не знаю накопал с помощью ИИ в интернетах для обощревания просто.

🛠 Что это значит для DE

Каталог - это не служебная деталь, а точка governance: кто видит таблицу, кто пишет, как разрулить конкурентную запись.
Выбор по-простому:
весь в AWS без Databricks → S3 Tables / Glue;
хочешь вендор-нейтральный стандарт → Polaris;
нужен git-workflow на данных → Nessie;
своё k8s + жёсткий доступ → Lakekeeper;
в Databricks → Unity.

Правило простое: данные держи в открытом формате (Iceberg на S3), а каталог выбирай так, чтобы в любой момент переключить движок и не переезжать. Lock-in теперь прячется именно в каталоге, а не в формате.

🔮 Мостик к будущему что мне действительно нравится.
Формат-война кончилась, и весь фронт сместился на каталог. Именно он теперь решает не только кто читает таблицу, но и governance для волны ИИ-агентов, которые сами ходят в данные. Каталог = кто и что имеет право сделать с данными: хоть человек, хоть агент.

На каком каталоге сидите в проде — и почему ушли (или наоборот не уходите) с Glue/Hive? 👇

#data_engineering #iceberg #lakehouse #catalog #DataJungle
  • 🔥 1
More from @data_jungle
  1. Sep 29, 2026Мы уже проводим не первое интервью кандидатов на работе и вот что я могу посоветовать вам…
  2. Sep 11, 2026Неужели литкод это начало конца ? Google сменил стратегию интервью:) Что думаете обсудим ?
  3. Sep 1, 2026Всем привет 👋 Очень советую посмотреть это видео на ютубчике. Всегда с большим интересом…
  4. Aug 7, 2026🔍 Как читать план запроса: EXPLAIN, оценки и почему оптимизатор врёт #SQLWednesday В пост…
  5. Aug 3, 2026🧱 Parquet под капотом: почему «размер файла имеет значение» Мы шли сверху вниз: разделили…
  6. Jul 31, 2026🏝️ Gaps & Islands: как из потока событий собрать сессии одним оконным трюком #SQLWednesda…
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 →