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

Unity Catalog

Experimental feature. Learn more.
примечание

Интеграция с Unity Catalog работает для управляемых и внешних таблиц. На данный момент эта интеграция поддерживается только в AWS.

ClickHouse поддерживает интеграцию с несколькими каталогами (Unity, Glue, Polaris и т.д.). Это руководство проведёт вас через шаги выполнения запросов к вашим данным, управляемым Databricks, с использованием ClickHouse и Unity Catalog.

Databricks поддерживает несколько форматов данных для своего lakehouse. С ClickHouse вы можете выполнять запросы к таблицам Unity Catalog как к Delta, так и к Iceberg.

Конфигурация Unity в Databricks

Чтобы ClickHouse мог взаимодействовать с Unity Catalog, необходимо убедиться, что Unity Catalog настроен для разрешения взаимодействия с внешним читателем. Это можно сделать, следуя руководству "Enable external data access to Unity Catalog".

В дополнение к разрешению внешнего доступа убедитесь, что принципал, настраивающий интеграцию, имеет привилегию EXTERNAL USE SCHEMA привилегия на схему, содержащую таблицы.

После настройки вашего каталога вам необходимо сгенерировать учетные данные для ClickHouse. Можно использовать два различных метода в зависимости от вашего режима взаимодействия с Unity:

  • Для клиентов Iceberg используйте аутентификацию в качестве сервисного принципала.

  • Для клиентов Delta используйте токен персонального доступа (PAT).

Создание соединения между Unity Catalog и ClickHouse

С настроенным Unity Catalog и установленной аутентификацией установите соединение между ClickHouse и Unity Catalog.

Чтение Delta

Чтение Iceberg

Запрос таблиц Unity Catalog с помощью ClickHouse

Теперь, когда соединение установлено, вы можете начать выполнять запросы через Unity Catalog. Например:

Если вы используете клиента Iceberg, будут показаны только таблицы Delta с включенной функцией Uniform:

Чтобы выполнить запрос к таблице:

Требуются обратные кавычки

Обратные кавычки требуются, поскольку ClickHouse не поддерживает более одного пространства имен.

Чтобы просмотреть DDL таблицы:

Загрузка данных из вашего Data Lake в ClickHouse

Если вам нужно загрузить данные из Databricks в ClickHouse, начните с создания локальной таблицы ClickHouse:

Затем загрузите данные из вашей таблицы Unity Catalog с помощью INSERT INTO SELECT: