Поделиться через


Указание расположения управляемого хранилища в каталоге Unity

Расположение управляемого хранилища указывает расположение в облачном хранилище объектов для хранения данных для управляемых таблиц и управляемых томов.

Можно связать управляемое хранилище с хранилищем метаданных, каталогом или схемой. Управляемые расположения хранилища на более низких уровнях иерархии переопределяют расположения хранилища, определенные на более высоких уровнях при создании управляемых таблиц или управляемых томов.

Databricks рекомендует назначить управляемое хранилище на уровне каталога для логической изоляции данных, используя в качестве опций уровень метахранилища и уровень схемы.

Новые рабочие области, которые автоматически включены в каталоге Unity, создаются без управляемого местоположения хранилища на уровне метастора. Чтобы решить, требуется ли хранилище метаданных, см. раздел "Автоматическое включение каталога Unity", иерархии расположения управляемого хранилища и добавление управляемого хранилища в существующее хранилище метаданных.

Что такое управляемое расположение хранилища?

Управляемые расположения хранилища имеют следующие свойства:

  • Управляемые таблицы и управляемые тома хранят файлы данных и метаданных в управляемых расположениях хранилища.
  • Управляемые расположения хранилища не могут перекрываться с внешними таблицами или внешними томами.

В следующей таблице описывается, как управляемое расположение хранилища объявляется и связывается с объектами Unity Catalog:

Связанный объект каталога Unity Метод настройки Отношение к внешним объектам
Метастор Настраивается администратором учетной записи во время создания хранилища метаданных. Запрещается перекрывать внешнюю позицию.
Каталог Указан во время создания каталога с помощью ключевого MANAGED LOCATION слова. Должен содержаться в внешнем расположении.
Схема Указан во время создания схемы с использованием ключевого слова MANAGED LOCATION. Должен содержаться в внешнем расположении.

Расположение управляемого хранилища, которое хранит данные и метаданные для управляемых таблиц и управляемых томов, использует следующие правила:

  • Если содержащая схема имеет управляемое расположение, данные хранятся в управляемом расположении схемы.
  • Если содержащая схема не имеет управляемого расположения, но каталог имеет управляемое расположение, данные хранятся в управляемом расположении каталога.
  • Если ни содержащая схема, ни содержащий каталог не имеют управляемого расположения, данные хранятся в управляемом расположении хранилища метаданных.

Каталог Unity предотвращает перекрытие управления расположениями. Узнайте, как путь работает для данных, управляемых каталогом Unity?.

Расположение управляемого хранилища, корневой каталог хранилища и расположение хранилища

При указании MANAGED LOCATION для каталога или схемы, указанное расположение отслеживается как Корневой элемент хранилища в Unity Catalog. Чтобы все управляемые сущности имели уникальное расположение, каталог Unity добавляет хэшированные подкаталоги в указанное расположение, используя следующий формат:

Объект Путь
Схема <storage-root>/__unitystorage/schemas/00000000-0000-0000-0000-000000000000
Каталог <storage-root>/__unitystorage/catalogs/00000000-0000-0000-0000-000000000000

Полный квалифицированный путь для управляемого расположения хранилища отслеживается как Storage Location в каталоге Unity.

Можно указать одно и то же управляемое расположение хранилища для нескольких схем и каталогов.

Необходимые привилегии

Обладающие CREATE MANAGED STORAGE правами на внешнее размещение пользователи могут настраивать управляемые места хранения во время создания каталога или схемы.

Администраторы учетных записей могут добавить необязательное управляемое хранилище на уровне хранилища метаданных.

Настройка расположения управляемого хранилища для хранилища метаданных

Чтобы задать расположение управляемого хранилища для хранилища метаданных, см. статью "Добавление управляемого хранилища в существующее хранилище метаданных".

Настройка расположения управляемого хранилища для каталога

Задайте расположение управляемого хранилища для каталога с помощью MANAGED LOCATION ключевого слова во время создания каталога, как показано в следующем примере:

CREATE CATALOG <catalog-name>
MANAGED LOCATION 'abfss://<container-name>@<storage-account>.dfs.core.windows.net/<path>/<directory>';

Обозреватель каталогов также можно использовать для задания расположения управляемого хранилища для каталога. См. статью "Создание каталогов".

Настройка расположения управляемого хранилища для схемы

Задайте управляемое расположение хранилища для схемы с помощью MANAGED LOCATION ключевого слова во время создания схемы, как показано в следующем примере:

CREATE SCHEMA <catalog>.<schema-name>
MANAGED LOCATION 'abfss://<container-name>@<storage-account>.dfs.core.windows.net/<path>/<directory>';

Обозреватель каталогов также можно использовать для задания расположения управляемого хранилища для схемы. См. статью "Создание схем".

Следующие шаги

Каталог Unity автоматически использует расположения управляемого хранилища при создании управляемых таблиц и управляемых томов. Ознакомьтесь с управляемыми таблицами каталога Unity в Azure Databricks для Delta Lake и Apache Iceberg и что такое тома каталога Unity?.