Чтение таблиц Databricks с помощью клиентов Delta
Используйте каталог REST Iceberg для чтения таблиц, зарегистрированных в каталоге Unity, в Azure Databricks из поддерживаемых клиентов Iceberg, включая Apache Spark и DuckDB.
Совет
Сведения о чтении данных Azure Databricks с помощью Microsoft Fabric см. в статье Использование Microsoft Fabric для чтения данных, зарегистрированных в каталоге Unity.
чтение с помощью REST API Unity
REST API Unity предоставляет внешним клиентам доступ на чтение к таблицам Delta, зарегистрированным в каталоге Unity. Некоторые клиенты также поддерживают создание таблиц и запись в существующие таблицы.
Настройте доступ с помощью конечной точки /api/2.1/unity-catalog
.
Требования
Azure Databricks поддерживает доступ REST API Unity к таблицам в рамках каталога Unity. Для использования этих конечных точек необходимо включить каталог Unity в рабочей области. Для чтения REST API Unity доступны следующие типы таблиц:
- Управляемые таблицы каталога Unity.
- Внешние таблицы каталога Unity, хранящиеся в Delta Lake.
Чтобы настроить доступ к таблицам Databricks из клиентов Delta с помощью REST API Unity, необходимо выполнить следующие действия по настройке доступа к таблицам Databricks:
- Включите доступ к внешнему данным для вашего хранилища метаданных. См. включение доступа к внешним данным в хранилище метаданных.
- Предоставьте основному субъекту, осуществляющему настройку интеграции, привилегию
EXTERNAL USE SCHEMA
в схеме, которая содержит таблицы. См. раздел Предоставление субъекта-участника EXTERNAL USE SCHEMA. - Аутентификация с использованием персонального токена доступа Databricks. См. Аутентификация доступа к ресурсам Azure Databricks.
Чтение таблиц Delta с помощью Apache Spark
Ниже приведен пример параметров для настройки Apache Spark для чтения управляемых и внешних таблиц Delta каталога Unity.
"spark.sql.extensions": "io.delta.sql.DeltaSparkSessionExtension",
"spark.sql.catalog.spark_catalog": "io.unitycatalog.spark.UCSingleCatalog",
"spark.sql.catalog.<uc-catalog-name>": "io.unitycatalog.spark.UCSingleCatalog",
"spark.sql.catalog.<uc-catalog-name>.uri": "<workspace-url>/api/2.1/unity-catalog",
"spark.sql.catalog.<uc-catalog-name>.token":"<token>",
"spark.sql.defaultCatalog":"<uc-catalog-name>"
Замените следующие переменные:
-
<uc-catalog-name>
: имя каталога в каталоге Unity, содержащего таблицы. -
<workspace-url>
: URL-адрес рабочей области Azure Databricks. -
<token>
: маркер PAT для субъекта, настраивающего интеграцию.
Важный
Определенные конфигурации зависят от типа облачного хранилища объектов, поддерживаемого каталогом. Дополнительные конфигурации см. в документации по каталогу OSS Unity.