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


Что такое схемы Лейкхаус (Предварительная версия)?

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

Создайте схему lakehouse

Чтобы включить поддержку схем для lakehouse, установите флажок рядом с схемами Lakehouse (общедоступная предварительная версия) при его создании.

Снимок экрана: новое диалоговое окно Lakehouse.

Внимание

Имена рабочих областей должны содержать только буквенно-цифровые символы из-за ограничений предварительного просмотра. Если специальные символы используются в именах рабочих областей, некоторые функции Lakehouse не будут работать.

После создания lakehouse можно найти схему по умолчанию с именем dbo в таблицах. Эта схема всегда существует и не может быть изменена или удалена. Чтобы создать новую схему, наведите указатель мыши на таблицы, выберите ...и выберите "Создать схему". Введите имя схемы и нажмите кнопку "Создать". Вы увидите схему, указанную в разделе "Таблицы " в алфавитном порядке.

Снимок экрана: диалоговое окно новой схемы Lakehouse.

Хранение таблиц в схемах Lakehouse

Для хранения таблицы в схеме требуется имя схемы. В противном случае она переходит к схеме dbo по умолчанию.

df.write.mode("Overwrite").saveAsTable("contoso.sales")

Обозреватель Lakehouse можно использовать для упорядочивания таблиц и перетаскивания имен таблиц в разные схемы.

Анимация перемещения таблиц между схемами.

Внимание

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

Добавление нескольких таблиц с ярлыком схемы

Чтобы ссылаться на несколько таблиц Delta из другого хранилища Fabric lakehouse или внешнего хранилища, используйте ярлык схемы, который отображает все таблицы в выбранной схеме или папке. Все изменения в таблицах в исходном расположении также отображаются в схеме. Чтобы создать ярлык схемы, наведите указатель мыши на таблицы, выберите ..., а затем нажмите кнопку "Создать ярлык схемы". Затем выберите схему в другом lakehouse или папку с таблицами Delta во внешнем хранилище, например Azure Data Lake Storage (ADLS) 2-го поколения. Это создает новую схему с вашими ссылочными таблицами.

Скриншот, показывающий новый ярлык схемы Lakehouse.

Доступ к схемам Lakehouse для отчетов Power BI

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

Схемы Lakehouse в ноутбуке

При просмотре озера данных с поддержкой схем в обозревателе объектов записной книжки вы увидите, что таблицы находятся в схемах. Вы можете перетащить таблицу в ячейку кода и получить фрагмент кода, ссылающийся на схему, в которой находится таблица. Используйте это пространство имен для обращения к таблицам в вашем коде: workspace.lakehouse.schema.table. Если вы опустите какой-либо из элементов, система использует настройки по умолчанию. Например, если вы предоставляете только имя таблицы, она использует схему по умолчанию (dbo) из lakehouse по умолчанию для записной книжки.

Внимание

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

Запросы SQL Spark для работы между разными рабочими областями

Используйте пространство имен workspace.lakehouse.schema.table, чтобы ссылаться на таблицы в коде. Таким образом, можно присоединить таблицы из разных рабочих областей, если пользователь, выполняющий код, имеет разрешение на доступ к таблицам.

SELECT * 
    FROM operations.hr.hrm.employees as employees 
    INNER JOIN global.corporate.company.departments as departments
    ON employees.deptno = departments.deptno;

Внимание

Убедитесь, что вы присоединяете таблицы только из lakehouses с включенными схемами. Присоединение таблиц из lakehouses, не имеющих включенных схем, не будет работать.

Ограничения общедоступной предварительной версии

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

Неподдерживаемые особенности/функциональность Примечания.
Общий озерный дом Использование рабочей области в пространстве имен для общих lakehouse-систем не будет работать, например, workspace.sharedlakehouse.schema.table. Пользователь должен иметь роль в рабочем пространстве, чтобы использовать рабочее пространство в пространстве имён.
Схема управляемой таблицы без Delta Не поддерживается получение схемы для управляемых таблиц, формат которых не является Delta (например, CSV). Расширение этих таблиц в обозревателе Lakehouse не отображает никакие сведения о схеме в пользовательском интерфейсе.
Внешние таблицы Spark Операции внешней таблицы Spark (например, обнаружение, получение схемы и т. д.) не поддерживаются. Эти таблицы не определены в пользовательском интерфейсе.
Общедоступный API Общедоступные API (список таблиц, загрузка таблиц, предоставление расширенного свойства defaultSchema и т. д.) не поддерживаются для Lakehouse с включенной поддержкой схем. Существующие общедоступные API, вызываемые в Lakehouse с включенной схемой, приводят к ошибке.
Обновление свойств таблицы Не поддерживается.
Имя рабочей области, содержащее специальные символы Рабочая область со специальными символами (например, пробел, слеш) не поддерживается. Отображается ошибка пользователя.
Представления Spark Не поддерживается.
Особенности Hive Не поддерживается.
Spark.catalog API Не поддерживается. Вместо этого используйте Spark SQL.
USE <schemaName> Не работает между рабочими областями, но поддерживается в одной рабочей области.
Миграция Миграция существующих озер данных без схем в озера данных на основе схем не поддерживается.
Поток данных 2-го поколения Не поддерживается.