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


Создание схем

В этой статье показано, как создавать схемы в каталоге Unity и устаревшем хранилище метаданных Hive.

Сведения о схемах в Azure Databricks, включая сравнение поведения схемы в каталоге Unity и хранилище метаданных Hive, см. в статье Что такое схемы в Azure Databricks?.

Подготовка к работе

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

  • Вы должны иметь хранилище метаданных каталога Unity , связанное с рабочей областью, где вы выполняете создание схемы.
  • Необходимо иметь разрешения на данные USE CATALOG и CREATE SCHEMA в родительском каталоге схемы. Администратор хранилища метаданных или владелец каталога может предоставить вам эти привилегии. Если вы являетесь администратором хранилища метаданных, вы можете предоставить эти привилегии себе.
  • Чтобы указать необязательное управляемое место хранения для таблиц и томов в схеме, необходимо определить внешнее местоположение в каталоге Unity Catalog, и вы должны иметь привилегию CREATE MANAGED STORAGE на внешнее местоположение. См. указание расположения управляемого хранилища в каталоге Unity.
  • Кластер, используемый для запуска записной книжки для создания схемы, должен использовать режим доступа, совместимый с каталогом Unity. См . режимы доступа. Хранилища SQL всегда поддерживают каталог Unity.

Чтобы создать схему в хранилище метаданных Hive, выполните следующее:

Создание схемы

Чтобы создать схему в каталоге Unity, можно использовать обозреватель каталогов или команды SQL. Чтобы создать схему в хранилище метаданных Hive, необходимо использовать команды SQL.

Обозреватель каталогов

  1. Войдите в рабочую область, связанную с хранилищем метаданных каталога Unity.
  2. Щелкните значок каталога .
  3. В области Каталог на панели слева щелкните катaлог, в котором вы хотите создать схему.
  4. В панели сведений щелкните Создать схему.
  5. Присвойте схеме имя и добавьте любой комментарий, который поможет пользователям понять назначение схемы.
  6. (Необязательно) Укажите расположение управляемого хранилища. Требуется привилегия CREATE MANAGED STORAGE в целевом внешнем расположении. См. как указать управляемое расположение хранилища в каталоге Unity и управляемые расположения в каталоге Unity для схем.
  7. Нажмите кнопку Создать.
  8. Предоставьте привилегии в схеме. См. раздел Управление привилегиями вкаталога Unity.
  9. Нажмите кнопку Сохранить.

SQL

  1. Выполните следующие команды SQL в записной книжке или редакторе sql-запросов. Элементы в квадратных скобках являются необязательными. Вы можете использовать SCHEMA или DATABASE. Замените значения заполнителей:

    • <catalog-name>: имя родительского каталога схемы. Если вы создаете схему в хранилище метаданных Hive и находитесь в рабочей области с поддержкой каталога Unity, используйте hive_metastore в качестве имени каталога. Если ваша рабочая область не поддерживает Unity Catalog, не указывайте каталог совсем.
    • <schema-name>: имя для схемы.
    • <location-path>: необязательный путь к управляемому расположению хранилища. Используйте MANAGED LOCATION для каталога Unity и LOCATION для хранилища метаданных Hive. В Unity Catalog необходимо иметь привилегию CREATE MANAGED STORAGE на внешнее место хранения для пути, который вы указываете. См. "Указание управляемого расположения хранилища в каталоге Unity" и "Управляемые расположения для схем".
    • <comment>: необязательное описание или другое примечание.
    • <property-key> = <property-value> [ , ... ]: необязательный параметр. Свойства и значения Spark SQL, которые нужно установить для схемы.

    Более подробные описания параметров см. в CREATE SCHEMA.

    CREATE { DATABASE | SCHEMA } [ IF NOT EXISTS ] <catalog-name>.<schema-name>
        [ MANAGED LOCATION '<location-path>' | LOCATION '<location-path>']
        [ COMMENT <comment> ]
        [ WITH DBPROPERTIES ( <property-key = property_value [ , ... ]> ) ];
    
  2. Предоставьте привилегии в схеме. Сведения о привилегиях каталога Unity см. в разделе Управление привилегиями в каталоге Unity.

Вы также можете создать схему с помощью поставщика Databricks Terraform и databricks_schema. Список идентификаторов схем можно получить с помощью databricks_schemas

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