Сервер, локально или chDBШаги в этом руководстве можно выполнить, используя существующую установку сервера ClickHouse. Для разовых запросов можно вместо этого использовать clickhouse-local и выполнить тот же процесс без запуска сервера. С небольшими изменениями этот процесс также можно выполнить с помощью in-process дистрибутива ClickHouse — chDB.
- Apache Iceberg
- Delta Lake
- Apache Hudi
- Apache Paimon
Табличная функция Пример:Пример (ClickHouse Cloud):Пример:Список поддерживаемых возможностей, включая отсечение партиций, эволюцию схемы, перемещение во времени, кэширование и другое, см. в матрице поддержки. Полную справочную информацию см. в документации по табличной функции
iceberg (псевдоним icebergS3) читает таблицы Iceberg напрямую из объектного хранилища. Для каждого бэкенда хранилища предусмотрены свои варианты: icebergS3, icebergAzure, icebergHDFS и icebergLocal.Пример синтаксиса:Поддержка GCSДля Google Cloud Storage (GCS) можно использовать вариант функций для S3.
Кластерный вариант
ФункцияicebergS3Cluster распределяет операции чтения между несколькими узлами кластера ClickHouse. Узел-инициатор устанавливает соединения со всеми узлами и динамически распределяет файлы данных. Каждый узел-воркер запрашивает и обрабатывает задачи до тех пор, пока не будут прочитаны все файлы. icebergCluster — псевдоним для icebergS3Cluster. Также существуют варианты для Azure (icebergAzureCluster) и HDFS (icebergHDFSCluster).Пример синтаксиса:Движок таблицы
В качестве альтернативы использованию табличной функции в каждом запросе можно создать постоянную таблицу с помощью движка таблицыIceberg. Данные по-прежнему хранятся в объектном хранилище и считываются по требованию — никакие данные не копируются в ClickHouse. Преимущество заключается в том, что определение таблицы хранится в ClickHouse и доступно всем пользователям в разных сеансах без необходимости каждый раз указывать путь к хранилищу и учётные данные. Для каждого типа backend-соединения предусмотрены варианты движка: IcebergS3 (или псевдоним Iceberg), IcebergAzure, IcebergHDFS и IcebergLocal.И движок таблицы, и табличная функция поддерживают кэширование данных, используя тот же механизм кэширования, что и движки хранилища S3, AzureBlobStorage и HDFS. Кроме того, кэш метаданных хранит в памяти информацию из файлов манифестов, сокращая повторные чтения метаданных Iceberg. Этот кэш включён по умолчанию через настройку use_iceberg_metadata_files_cache.Пример синтаксиса:Движок таблицы Iceberg — это псевдоним для IcebergS3.Поддержка GCSДля Google Cloud Storage (GCS) можно использовать S3-вариант движка таблицы.
iceberg и движку таблицы Iceberg.