Каталог Polaris
ClickHouse поддерживает интеграцию с несколькими каталогами (Unity, Glue, Polaris, и т. д.). В этом руководстве мы пошагово покажем, как выполнять запросы к данным с помощью ClickHouse и каталога Apache Polaris. Apache Polaris поддерживает таблицы Iceberg и Delta Tables (через Generic Tables). На данный момент эта интеграция поддерживает только таблицы Iceberg.
Поскольку эта функция является экспериментальной, её необходимо включить с помощью:
SET allow_experimental_database_unity_catalog = 1;
Предварительные требования
Чтобы подключиться к каталогу Polaris, вам понадобятся:
- Snowflake Open Catalog (размещённый Polaris) или самостоятельно размещённый Polaris Catalog
- URI вашего каталога Polaris (например,
https://<account-id>.<region>.aws.snowflakecomputing.com/polaris/api/catalog/v1илиhttp://polaris:8181/api/catalog/v1/oauth/tokens) - Учётные данные каталога (client ID и client secret)
- URI OAuth-токенов для вашего экземпляра Polaris
- Конечная точка объектного хранилища, в котором находятся ваши данные Iceberg (например, S3)
- ClickHouse версии 26.1+
Для Open Catalog, управляемого предложения Polaris от Snowflake, ваш URI будет содержать /polaris, а для самостоятельно размещённого варианта это может быть не так.
Создание подключения между Polaris и ClickHouse
Создайте базу данных, которая подключает ClickHouse к вашему каталогу Polaris:
Запросы к каталогу Polaris с помощью ClickHouse
После настройки подключения вы можете выполнять запросы к Polaris:
Чтобы выполнить запрос к таблице:
Обратные кавычки обязательны, например, schema.table.
Чтобы просмотреть DDL таблицы:
Загрузка данных из Polaris в ClickHouse
Чтобы загрузить данные из Polaris в таблицу ClickHouse, создайте целевую таблицу с нужной схемой, затем выполните insert из таблицы Polaris: