CREATE VOLUME

применимо:отмечено Databricks SQL отмечено Databricks Runtime 13.3 LTS и выше отмечено только в каталоге Unity

Создает том с указанным именем. Если в схеме уже существует том с таким же именем, VOLUME_ALREADY_EXISTS вызывается.

Подробности об использовании томов см. в ,.

Permissions

Чтобы создать том, необходимо выполнить все указанные ниже действия.

  • USE CATALOG в каталоге и USE SCHEMA схеме, в которой создается том
  • CREATE VOLUME на схеме, в которой создается том
  • CREATE EXTERNAL VOLUME привилегии во внешнем расположении location_path при создании внешнего тома

Синтаксис

CREATE [ EXTERNAL ] VOLUME [ IF NOT EXISTS ] volume_name
    [ LOCATION location_path ]
    [ COMMENT comment ]

Параметры

  • ВНЕШНИЙ

    Создает внешний том. Внешние тома должны быть зарегистрированы в каталоге в внешнем месте. Если EXTERNAL инструкция не указана, создается управляемый том.

  • ЕСЛИ НЕ СУЩЕСТВУЕТ

    Создает том с заданным именем, если он не существует. Если том с тем же именем уже существует, ничего не произойдет.

  • volume_name

    Имя создаваемого тома. Тома можно создавать только в схемах каталога Unity.

  • МЕСТОПОЛОЖЕНИЕ location_path

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

  • Это положение не применяется к управляемым томам .

  • комментарий

    Необязательное STRING описание литерала для тома.

Примеры

Предложение LOCATION для внешнего тома использует универсальный код ресурса (URI) облачного хранилища:

-- Create an external volume on the specified location with comment
> CREATE EXTERNAL VOLUME my_catalog.my_schema.my_external_volume
    LOCATION 'abfss://my-container@mystorageaccount.dfs.core.windows.net/my-location/my-path'
    COMMENT 'This is my example external volume on ADLS Gen2'
  OK

После создания внешнего тома остальные шаги одинаковы в каждом облаке:

-- Query the data from the file in the created volume
> SELECT *
    FROM csv.`/Volumes/my_catalog/my_schema/my_external_volume/foo.csv`

-- Create a managed volume with full schema name
> CREATE VOLUME my_catalog.my_schema.my_volume
  OK

-- Create a managed volume in default catalog and schema
> CREATE VOLUME my_another_volume
  OK