Как хранятся айсберг таблицы

На картинке у нас есть таблица под названием "warehouse". Для нее создаются 2 папки: data + metadata. И всего есть 4 типа файликов

🤩 Data Files

Это сами данные в форматах parquet/orc/avro

🤩 metadata.json

Неполный список меты:

  • путь к таблице
  • время обновления
  • схема данных
  • версии
  • специфичные параметры айсберга

🤩 Manifest File (404eff92-...m0.avro)

Инфа про файлы с данными: пути к ним, количество записей, статистики

🤩 Manifest List (snap-....avro)

В айсбергах есть снепшот - это консистентное состояние таблицы в определенный момент времени. Снепшот знает, какие файлики ему надо выбрать, чтобы получить таблицу на сегодня/вчера/минуту назад. Поэтому по id снепшота можно вернуться к предыдущим состояниям

Так вот Manifest List - это список манифест-файлов, которые относятся к конкретному снепшоту. Этот файл контролирует добавление, обновление, удаление данных и т.п.

🤩🤩🤩🤩🤩🤩

Хотела сюда вставить картинки со структурой всех файлов, но вместе они выглядели некрасиво. Поэтому лучше сделаю отдельные посты с более детальным разбором)

Как хранятся айсберг таблицы
На картинке у нас есть таблица под названием "warehouse". Для нее создаются 2 папки: data + metadata | Сетка — социальная сеть от hh.ru