Unity Catalog
与 Unity Catalog 的集成适用于托管和外部表。 目前此集成仅在 AWS 上受支持。
ClickHouse 支持与多个目录(Unity、Glue、Polaris 等)的集成。本指南将引导您通过 ClickHouse 查询由 Databricks 管理的数据,并使用 Unity Catalog 。
Databricks 支持多种数据格式用于其数据湖房。通过 ClickHouse,您可以将 Unity Catalog 表查询为 Delta 和 Iceberg。
在 Databricks 中配置 Unity
为了让 ClickHouse 与 Unity Catalog 互动,您需要确保 Unity Catalog 配置允许与外部读取器的互动。这可以通过遵循 “启用外部数据访问 Unity Catalog” 指南来实现。
除了启用外部访问外,请确保配置集成的主体在包含表的模式上具有 EXTERNAL USE SCHEMA
特权。
一旦您的目录配置完成,您必须为 ClickHouse 生成凭据。可以根据您与 Unity 的互动模式使用两种不同的方法:
在 Unity Catalog 和 ClickHouse 之间创建连接
配置好 Unity Catalog 并设置好身份验证后,建立 ClickHouse 和 Unity Catalog 之间的连接。
读取 Delta
读取 Iceberg
使用 ClickHouse 查询 Unity Catalog 表
连接建立后,您可以开始通过 Unity Catalog 查询。例如:
如果您使用 Iceberg 客户端,则仅会显示启用了 Uniform 的 Delta 表:
要查询表:
需要反引号,因为 ClickHouse 不支持多个命名空间。
要检查表的 DDL:
将数据从数据湖加载到 ClickHouse
如果您需要将数据从 Databricks 加载到 ClickHouse,请首先创建一个本地 ClickHouse 表:
然后通过 INSERT INTO SELECT
从 Unity Catalog 表中加载数据: