Cloud Iceberg Metastore в архитектуре Data Lakehouse
Cloud Iceberg Metastore — каталог данных DLH, определяющий представление структуры объектов и правила (интерфейсы) доступа к данным S3-хранилища, для организации взаимодействия хранилища с внешними сервисами. Является предпочтительным вариантом для использования в DLH, так как за счет открытого формата таблиц обеспечивает высокопроизводительное чтение огромных объемов данных из хранилища через сложные аналитические SQL-запросы.
Компонент выполняет следующие функции:
- Каталогизирует объекты S3-хранилища.
- Содержит схему, структуру таблиц и расположение наборов данных в хранилище DLH.
- Формирует представление объектов DLH в виде наборов данных, включая информацию об их местонахождении и структуре по столбцам, именам, типам данных и пр.
- Определяет структуру, аналогичную реляционным базам данных, поверх файлового хранилища для возможности совместного унифицированного использования объектов S3-хранилища несколькими приложениями.
- Обеспечивает согласованные результаты обработки данных между различными приложениями и упрощает управление данными.
- Содержит полную историю операций с таблицами, включая изменения схемы данных и самих объектов, а также функции сериализуемой изоляции, перемещения во времени на основе моментальных снимков и предсказуемой эволюции схемы.
- Позволяет внешним приложениям напрямую работать с таблицами в хранилище DLH, что снижает затраты на обработку за счет использования преимуществ архитектуры DLH и значительно повышает скорость вычислений, поскольку все приложения могут работать с наборами данных сразу на месте без их переноса между несколькими отдельными и закрытыми системами.
- Обеспечивает возможность изменения существующих данных, включая операции обновления и удаления.
- Гарантирует безопасность параллельной записи в один и тот же набор данных без риска потери данных.
- Позволяет избежать деградации при выполнении SQL-запросов в условиях роста объема данных в S3-хранилище.