ClickHouse поддерживает интеграцию с несколькими каталогами (Unity, Glue, Polaris и т. д.). В этом руководстве показано, как выполнять запросы к данным, управляемым Databricks, с помощью ClickHouse и Unity Catalog.
Databricks поддерживает несколько форматов данных для своей lakehouse-платформы. С помощью ClickHouse вы можете выполнять запросы к таблицам Unity Catalog в форматах Delta и Iceberg.
Поскольку эта возможность является экспериментальной, вам потребуется включить ее с помощью:
SET allow_experimental_database_unity_catalog = 1;
Настройка Unity Catalog в Databricks
Чтобы ClickHouse мог взаимодействовать с Unity Catalog, необходимо убедиться, что Unity Catalog настроен для работы с внешним клиентом чтения. Для этого следуйте руководству «Enable external data access to Unity Catalog».
После настройки каталога необходимо сгенерировать учетные данные для ClickHouse. В зависимости от режима взаимодействия с Unity можно использовать два разных метода:
-
Для клиентов Iceberg используйте аутентификацию через сервисный субъект.
-
Для клиентов Delta используйте токен персонального доступа (PAT).
Требуемые разрешения PAT-токена
При использовании PAT для доступа на чтение токен должен иметь разрешения, позволяющие ClickHouse просматривать и считывать метаданные Unity Catalog. Убедитесь, что у PAT есть как минимум привилегия EXTERNAL USE SCHEMA, а также разрешение SELECT на таблицу, USE CATALOG на родительский каталог и USE SCHEMA на родительскую схему.
Создание соединения между Unity Catalog и ClickHouse
После настройки Unity Catalog и аутентификации установите соединение между ClickHouse и Unity Catalog.
Чтобы получить доступ к управляемым таблицам Iceberg:
Запросы к таблицам Unity Catalog с помощью ClickHouse
Теперь, когда подключение настроено, можно выполнять запросы через Unity Catalog. Например:
Чтобы выполнить запрос к таблице:
Обратные кавычки обязательныОбратные кавычки обязательны, поскольку ClickHouse не поддерживает более одного пространства имен.
Чтобы посмотреть DDL таблицы:
Загрузка данных из вашего озера данных в ClickHouse
Если вам нужно загрузить данные из Databricks в ClickHouse, сначала создайте локальную таблицу в ClickHouse:
Затем загрузите данные из таблицы в Unity Catalog с помощью INSERT INTO SELECT:
Последнее изменение 10 июня 2026 г.