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


Создание внешнего расположения для данных в корневом каталоге DBFS

В этой статье показано, как настроить внешнее расположение в каталоге Unity для управления доступом к корневому хранилищу DBFS в расположении . Хотя Databricks не рекомендует хранить данные в корневом хранилище DBFS, ваша рабочая область может хранить данные там из-за устаревших методик.

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

Если ваша рабочая область — локальная, а устаревшее хранилище метаданных Azure Databricks Hive хранит данные в корневом каталоге DBFS, и если вы хотите объединить это хранилище метаданных Hive, чтобы ваша команда могла работать с таблицами этого хранилища с помощью Unity Catalog, необходимо создать внешнее расположение. См. о федерации хранилища метаданных Hive: включение каталога Unity для управления таблицами, зарегистрированными в хранилище метаданных Hive и . Включите федерацию хранилища метаданных Hive для рабочей области устаревшего хранилища метаданных Hive.

Перед тем как начать работу

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

требования к получению разрешений

  • Вы должны иметь привилегии CREATE STORAGE CREDENTIAL и CREATE EXTERNAL LOCATION в хранилище метаданных. Администраторы хранилища метаданных имеют эти привилегии по умолчанию.

    Заметка

    Если учетные данные хранения для расположения хранилища корневого каталога DBFS уже существуют, пользователю, создающему внешнее расположение, не требуется CREATE STORAGE CREDENTIAL, но требуется CREATE EXTERNAL LOCATION как для учетных данных хранения, так и для хранилища метаданных.

  • Вы должны быть администратором рабочей области, чтобы система для вас создала учетные данные хранения во время создания внешнего расположения.

    Не обязательно быть администратором рабочей области, если учетные данные хранилища, предоставляющие доступ к расположению корневого хранилища DBFS, уже существуют, и у вас есть CREATE EXTERNAL LOCATION как на учетные данные хранения, так и на хранилище метаданных.

Создайте внешнее расположение

Обозреватель каталогов можно использовать для создания внешнего расположения для корневого каталога DBFS.

  1. На боковой панели щелкните значок каталога.

  2. Щелкните Внешние данные > и Создать внешнее расположение.

  3. Введите имя внешнего расположения.

  4. В разделеURL-адрес щелкните Копировать из подключения DBFS и выберите Копировать из корневогоDBFS.

    Поля URL-адреса и подпути заполняются путем, ведущим к корневому каталогу DBFS в облачном хранилище.

    Важный

    При создании внешнего расположения для корневого каталога DBFS необходимо использовать подпуть к корневому расположению DBFS, а не к пути ко всему контейнеру. Подпуть предварительно заполняется user/hive/warehouse, которая является расположением хранилища по умолчанию для таблиц метастора Hive. Если требуется более точное управление доступом к данным в корневом каталоге DBFS, можно создать отдельные внешние расположения для вложенных путей в корневом каталоге DBFS.

    Предупреждение

    Корневой каталог DBFS может храниться в хранилище BLOB-объектов Azure вместо Azure Data Lake Storage 2-го поколения. Доступ к этим расположениям обеспечивается с помощью драйвера wasb, который не допускает управления на уровне каталога или файлов. Таким образом, каталог Unity может применять управление доступом только на уровне контейнера, что означает, что пользователи с доступом к этому внешнему расположению могут получить доступ к другим данным в том же контейнере, если они используют кластеры с одним режимом доступа пользователей. Чтобы предотвратить это, примените использование кластеров общего доступа, хранилищ SQL или бессерверных вычислений.

  5. Если учетные данные хранения, которые предоставляют доступ к расположению корневого облачного хранилища DBFS, не определены, выберите их или щелкните + Создать новые учетные данные хранилища.

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

  6. (Необязательно) Добавьте комментарий.

  7. (Необязательно) Нажмите Дополнительные параметры и включите резервный режим.

    Резервный режим предназначен для сценариев миграции устаревших рабочих нагрузок. См. раздел Включение резервного режима в внешних расположениях.

  8. Щелкните Создать.

  9. Перейдите на вкладку Разрешения, чтобы предоставить разрешение на использование внешнего местоположения.

    1. Щелкните Предоставить.
    2. Выберите пользователей, группы или субъекты-службы в поле Субъекты и выберите привилегии, которые вы хотите предоставить.
    3. Щелкните Предоставить.
  10. (Необязательно) Укажите рабочие области, которые могут получить доступ к этому внешнему расположению.

    По умолчанию пользователям в любой рабочей области, которая использует это хранилище метаданных каталога Unity, может быть предоставлен доступ к данным в этом расположении. Вы можете ограничить доступ к определенным рабочим областям. Databricks рекомендует ограничить доступ к рабочей области, в которую входит корневой каталог DBFS.

    См. раздел Связать внешнее расположение с одной или несколькими рабочими областями.