Что такое тома каталога Unity?
Тома — это объекты каталога Unity, которые обеспечивают управление нетабличными наборами данных. Томы представляют собой логическую единицу хранения в облачном объектном хранилище. Тома предоставляют возможности для доступа к файлам, их хранения, управления ими и упорядочения.
Хотя таблицы обеспечивают управление табличными наборами данных, тома обеспечивают управление для нетабличных наборов данных. Тома можно использовать для хранения и доступа к файлам в любом формате, включая структурированные, полуструктурированные и неструктурированные данные.
Databricks рекомендует использовать тома для регулирования доступа ко всем данным в нетабличной форме. Как и таблицы, тома могут быть управляемыми или внешними.
Внимание
Вы не можете использовать тома в качестве местоположений для таблиц. Тома предназначены только для доступа к данным, использующих пути. Используйте таблицы, если вы хотите работать с табличными данными в каталоге Unity.
Дополнительные сведения о работе с томами см. в следующих статьях:
- Создание томов и управление ими.
- Управление файлами в томах.
- Изучите хранилище и найдите файлы данных.
- Управляемые и внешние тома: сравнение.
- Каковы привилегии для томов?.
Примечание.
При работе с томами необходимо использовать хранилище SQL или кластер под управлением Databricks Runtime 13.3 LTS или более поздней версии, если только вы не используете UIs Azure Databricks, например обозреватель каталогов.
Что такое управляемый том?
Управляемый том — это том хранилища, контролируемый каталогом Unity, созданный в управляемом расположении хранилища в рамках содержащей схемы. См. раздел "Указание расположения управляемого хранилища" в каталоге Unity.
Управляемые тома позволяют создавать управляемое хранилище для работы с файлами без затрат на внешние расположения и учетные данные хранения. Вам не нужно указывать расположение при создании управляемого тома, а доступ ко всем файлам для данных в управляемых томах осуществляется по путям, управляемым каталогом Unity.
Что такое внешний том?
Внешний том — это том хранилища, управляемый Unity Catalog, зарегистрированный в каталоге в пределах внешнего расположения с использованием учетных данных хранилища, также управляемых Unity Catalog.
Каталог Unity не управляет жизненным циклом и структурой файлов во внешних томах. При удалении внешнего тома каталог Unity не удаляет базовые данные.
Какой путь используется для доступа к файлам в томе?
Тома данных располагаются на третьем уровне трехуровневого пространства имен каталога Unity (catalog.schema.volume
):
схема объектной модели каталога Unity
Путь доступа к томам совпадает с использованием Apache Spark, SQL, Python или других языков и библиотек. Это отличается от устаревших шаблонов доступа для файлов в хранилище объектов, привязанных к рабочей области Azure Databricks.
Путь к файлам в томах использует следующий формат:
/Volumes/<catalog>/<schema>/<volume>/<path>/<file-name>
Azure Databricks также поддерживает необязательную dbfs:/
схему при работе с Apache Spark, поэтому следующий путь также работает:
dbfs:/Volumes/<catalog>/<schema>/<volume>/<path>/<file-name>
Последовательность /<catalog>/<schema>/<volume>
в пути соответствует трем именам объектов каталога Unity, связанным с файлом. Эти элементы пути доступны только для чтения и не напрямую записываются пользователями, что означает, что невозможно создать или удалить эти каталоги с помощью операций файловой системы. Они автоматически управляются и сохраняются в синхронизации с соответствующими сущностями каталога Unity.
Примечание.
Вы также можете получить доступ к данным во внешних томах с помощью URI облачного хранилища.
Зарезервированные пути для томов
Volumes представляет следующие зарезервированные пути, используемые для доступа к томам:
dbfs:/Volumes
/Volumes
Примечание.
Пути также зарезервированы для возможных опечаток в этих путях из API Apache Spark и dbutils
, включая /volumes
, /Volume
, /volume
, независимо от того, предшествуют ли им dbfs:/
. Путь /dbfs/Volumes
также зарезервирован, но не может использоваться для доступа к томам.
Томы поддерживаются только в Databricks Runtime 13.3 LTS и выше. В версиях Databricks Runtime 12.2 LTS и ниже операции с путями /Volumes
могут выполняться успешно, но данные будут записываться только на временные диски хранения, подключенные к вычислительным кластерам, вместо сохранения данных на томах Unity Catalog, как ожидалось.
Внимание
Если у вас есть предварительно существующие данные, хранящиеся в зарезервированном пути в корневом каталоге DBFS, можно отправить запрос в службу поддержки, чтобы получить временный доступ к этим данным, чтобы переместить его в другое расположение.
Ограничения
Для взаимодействия с томами каталога Unity необходимо использовать вычислительные ресурсы с поддержкой каталога Unity. Томам не под силу справиться со всеми рабочими нагрузками.
В следующей таблице описаны ограничения томов каталога Unity на основе версии Databricks Runtime:
Версия среды выполнения Databricks | Ограничения |
---|---|
14.3 LTS и все последующие версии |
|
14.2 и ниже |
|
Все поддерживаемые версии среды выполнения Databricks |
|