Перейти к основному содержимому
Перейти к основному содержимому

Матрица поддержки

Эта страница содержит сводные матрицы совместимости lakehouse-интеграций ClickHouse. В них перечислены доступные возможности для каждого формата lakehouse-таблиц, каталоги, к которым может подключаться ClickHouse, а также функции, поддерживаемые каждым каталогом.

Поддержка lakehouse-форматов

ClickHouse интегрируется с четырьмя lakehouse-форматами таблиц: Apache Iceberg, Delta Lake, Apache Hudi и Apache Paimon. Выберите формат ниже, чтобы просмотреть матрицу поддержки.

Условные обозначения: ✅ Поддерживается | ⚠️ Частично / экспериментально | ❌ Не поддерживается

ВозможностьСтатусПримечания
Хранилища
AWS S3Через icebergS3() или алиас iceberg()
GCSЧерез icebergS3() или псевдоним iceberg()
Azure Blob StorageЧерез icebergAzure()
HDFS⚠️Через icebergHDFS() (функция устарела).
Локальная файловая системаС помощью icebergLocal()
Методы доступа
Табличная функцияicebergS3() с вариантами для разных бэкендов
Движок таблицыIcebergS3 с вариантами для разных бэкендов
Распределённое чтение по кластеруicebergS3Cluster, icebergAzureCluster, icebergHDFSCluster
Именованные коллекцииОпределение именованной коллекции
Функции чтения
Поддержка чтенияПолная поддержка SELECT со всеми SQL‑функциями ClickHouse
Отсечение партицийСм. раздел Partition pruning.
Скрытое партиционированиеПоддерживается партиционирование, основанное на преобразованиях Iceberg
Эволюция партицийПоддерживается чтение таблиц со спецификациями партиций, меняющимися со временем
Эволюция схемыДобавление, удаление и изменение порядка столбцов. См. раздел Эволюция схемы.
Повышение / расширение типовintlong, floatdouble, decimal(P,S)decimal(P',S), где P' > P. См. Эволюция схемы.
Time travel / снимки состоянийЧерез параметры iceberg_timestamp_ms или iceberg_snapshot_id. См. раздел Путешествие во времени.
Удаления по позицииСм. раздел Обработка удалённых строк.
Удаление по условию равенстваТолько для табличного движка, начиная с версии v25.8+. См. Processing deleted rows.
Merge-on-read⚠️Экспериментально. Поддерживается для операций удаления.
Версии формата⚠️Поддерживаются версии v1 и v2. V3 не поддерживается.
Статистика столбцов
Фильтры Блума / файлы PuffinИндексы по фильтрам Блума в файлах Puffin не поддерживаются
Виртуальные столбцы_path, _file, _size, _time, _etag. См. виртуальные столбцы.
Возможности записи
Создание таблицЭкспериментально. Требует allow_insert_into_iceberg = 1. С версии 25.7 и выше. См. раздел Creating a table.
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. Добавление, удаление, изменение, переименование столбцов. См. раздел Эволюция схемы.
Компакция⚠️Экспериментально. Требуется allow_experimental_iceberg_compaction = 1. Объединяет файлы position delete с файлами data. См. Compaction. Другие операции компакции в Iceberg не поддерживаются.
UPDATE / MERGEНе поддерживается. См. раздел «Компакция».
Copy-on-writeНе поддерживается.
Удаление устаревших снимков (снапшотов)Не поддерживается.
Удаление осиротевших файловНе поддерживается.
Перезапись партицийПоддерживается.
Изменение партицийСмена схемы партиционирования из ClickHouse не поддерживается. ClickHouse может выполнять запись в таблицы Iceberg, в которых схема партиционирования уже изменена.
Метаданные
Ветвление и тегированиеСсылки на ветви и теги Iceberg не поддерживаются
Обнаружение файлов метаданныхПоддерживается определение метаданных через каталоги, простое перечисление содержимого каталога, использование 'version-hint' и явного пути. Настраивается с помощью iceberg_metadata_file_path и iceberg_metadata_table_uuid. См. Определение файлов метаданных.
Кэширование данныхТакой же механизм, как у движков хранения S3/Azure/HDFS. См. Кэш данных.
Кэширование метаданныхФайлы манифестов и метаданных кэшируются в памяти. Включено по умолчанию параметром use_iceberg_metadata_files_cache. См. раздел Metadata cache.

Поддержка каталогов

ClickHouse может подключаться к внешним каталогам данных с помощью движка баз данных DataLakeCatalog, который представляет каталог как базу данных ClickHouse. Таблицы, зарегистрированные в каталоге, появляются автоматически и к ним можно выполнять запросы с помощью стандартного SQL.

В настоящее время поддерживаются следующие каталоги. Для получения подробных инструкций по настройке см. справочное руководство соответствующего каталога.

КаталогФорматыЧтениеСоздание таблицыINSERTСправочное руководство
AWS GlueIceberg✅ БетаРуководство по каталогу Glue
Databricks UnityDelta, Iceberg✅ ЭкспериментальныйРуководство по каталогу Unity
Iceberg RESTIceberg✅ БетаРуководство по REST-каталогу
LakekeeperIceberg✅ ЭкспериментальныйРуководство по каталогу Lakekeeper
Project NessieIceberg✅ ЭкспериментальныйРуководство по каталогу Nessie
Microsoft OneLakeIceberg✅ БетаРуководство по каталогу OneLake

Для всех интеграций с каталогами в настоящее время требуется включение экспериментальной или бета-настройки, и они предоставляют доступ только для чтения — таблицы можно запрашивать, но нельзя создавать или записывать в них через подключение к каталогу. Чтобы загрузить данные из каталога в ClickHouse для более быстрой аналитики, используйте INSERT INTO SELECT, как описано в руководстве по ускорению аналитики. Чтобы записывать данные обратно в открытые табличные форматы, создавайте отдельные таблицы Iceberg, как описано в руководстве по записи данных.