| Поддерживаемые хранилища | | |
| AWS S3 | ✅ | Через icebergS3() или псевдоним iceberg() |
| GCS | ✅ | Через icebergS3() или псевдоним iceberg() |
| Azure Blob Storage | ✅ | Через icebergAzure() |
| HDFS | ⚠️ | Через icebergHDFS(). Устарело. |
| Local filesystem | ✅ | Через icebergLocal() |
| Методы доступа | | |
| Табличная функция | ✅ | icebergS3() в вариантах для каждого типа хранилища |
| Движок таблицы | ✅ | IcebergS3 в вариантах для каждого типа хранилища |
| Распределённое чтение в кластере | ✅ | icebergS3Cluster, icebergAzureCluster, icebergHDFSCluster |
| Именованные коллекции | ✅ | Определение именованной коллекции |
| | |
| Возможности чтения | | |
| Поддержка чтения | ✅ | Полная поддержка SELECT со всеми функциями ClickHouse SQL |
| Отсечение партиций | ✅ | См. Отсечение партиций. |
| Скрытое партиционирование | ✅ | Поддерживается партиционирование Iceberg на основе преобразований |
| Эволюция партиций | ✅ | Поддерживается чтение таблиц с изменяющимися со временем спецификациями партиций |
| Эволюция схемы | ✅ | Добавление, удаление и изменение порядка столбцов. См. Эволюция схемы. |
| Повышение / расширение типов | ✅ | int → long, float → double, decimal(P,S) → decimal(P',S), где P’ > P. См. Эволюция схемы. |
| Путешествие во времени / снимки | ✅ | Через настройки iceberg_timestamp_ms или iceberg_snapshot_id. См. Путешествие во времени. |
| Удаления по позиции | ✅ | См. Обработка удалённых строк. |
| Удаления по равенству | ✅ | Только для движка таблицы, начиная с v25.8+. См. Обработка удалённых строк. |
| Merge-on-read | ⚠️ | Экспериментальная возможность. Поддерживается для операций удаления. |
| Версии формата | ⚠️ | Поддерживаются v1 и v2. V3 не поддерживается. |
| Статистика столбцов | ✅ | |
| Bloom-фильтры / файлы puffin | ❌ | Индексы bloom-фильтров в файлах puffin не поддерживаются |
| Виртуальные столбцы | ✅ | _path, _file, _size, _time, _etag. См. Виртуальные столбцы. |
| | |
| Возможности записи | | |
| Создание таблицы | ✅ | Экспериментальная возможность. Требуется allow_insert_into_iceberg = 1. Начиная с v25.7+. См. Создание таблицы. |
| INSERT | ✅ | Бета с 26.2. Требуется allow_insert_into_iceberg = 1. См. Вставка данных. |
| DELETE | ✅ | Экспериментально. Требуется allow_insert_into_iceberg = 1. Через ALTER TABLE ... DELETE WHERE. См. Удаление данных. |
| ALTER TABLE (изменения схемы) | ✅ | Экспериментально. Требуется allow_insert_into_iceberg = 1. Добавление, удаление, изменение и переименование столбцов. См. Эволюция схемы. |
| Compaction | ⚠️ | Экспериментально. Требуется allow_experimental_iceberg_compaction = 1. Объединяет файлы позиционного удаления с файлами данных. См. Компакция. Другие операции компакции Iceberg не поддерживаются. |
| UPDATE / MERGE | ❌ | Не поддерживается. См. Compaction. |
| Copy-on-write | ❌ | Не поддерживается |
| Удаление устаревших снимков | ❌ | Не поддерживается |
| Удаление осиротевших файлов | ❌ | Не поддерживается |
| Запись в партиции | ✅ | Поддерживается. |
| Изменение партиций | ❌ | Изменение схемы партиционирования из ClickHouse не поддерживается. ClickHouse может записывать в таблицы Iceberg с изменённой схемой партиционирования. |
| | |
| Метаданные | | |
| Ветвление и тегирование | ❌ | Ссылки на ветки/теги Iceberg не поддерживаются |
| Определение файла метаданных | ✅ | Поддерживается определение файла метаданных через каталоги, простое перечисление каталога, использование ‘version-hint’ и указание конкретного пути. Настраивается через iceberg_metadata_file_path и iceberg_metadata_table_uuid. См. Определение файла метаданных. |
| Кэширование данных | ✅ | Тот же механизм, что и в движках хранения S3/Azure/HDFS. См. Кэш данных. |
| Кэширование метаданных | ✅ | Manifest-файлы и файлы метаданных кэшируются в памяти. По умолчанию включено через use_iceberg_metadata_files_cache. См. Кэш метаданных. |