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


Схема LIVE (устаревшая версия)

В этой статье представлен обзор устаревшего синтаксиса и поведения для виртуальной схемы LIVE.

Виртуальная схема LIVE является устаревшей функцией конвейеров Delta Live Tables и считается нерекомендуемой. Вы по-прежнему можете использовать устаревший режим публикации и виртуальную схему LIVE для конвейеров, созданных с помощью этого режима. Databricks рекомендует перенести все конвейеры в новый режим публикации. Поддержка устаревшей LIVE виртуальной схемы и устаревшего режима публикации будет удалена в будущей версии Azure Databricks.

Заметка

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

Что такое виртуальная схема в реальном времени?

Заметка

Виртуальная схема LIVE больше не требуется для анализа зависимостей набора данных в режиме публикации по умолчанию для Delta Live Tables.

Схема LIVE — это концепция программирования в Delta Live Tables, которая определяет виртуальную границу для всех наборов данных, созданных или обновленных в конвейере. По проектированию схема LIVE не привязана непосредственно к наборам данных в опубликованной схеме. Вместо этого схема LIVE позволяет планировать и запускать логику в конвейере, даже если пользователь не хочет публиковать наборы данных в рамках схемы.

В устаревшем режиме публикации конвейера можно использовать ключевое слово LIVE для ссылки на другие наборы данных в текущем конвейере для операций чтения, например SELECT * FROM LIVE.bronze_table. В режиме публикации по умолчанию для новых конвейеров Delta Live Tables этот синтаксис бесшумно игнорируется, что означает, что неквалифицированные идентификаторы используют текущую схему. См. Задайте целевой каталог и схему.

режим публикации устаревшего конвейера

Виртуальная схема LIVE используется в устаревшем режиме публикации конвейера Delta Live Tables. Все таблицы, созданные до 5 февраля 2025 г., используют устаревший режим публикации по умолчанию.

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

Вариант хранилища Расположение хранилища или каталог Целевая схема Поведение
Хранилище метаданных Hive Не указано Ничего не указано Метаданные и данные набора данных хранятся в корневом каталоге DBFS. Объекты базы данных не регистрируются в хранилище метаданных Hive.
Хранилище метаданных Hive URI или файловый путь к хранилищу облачных объектов. Не указано Метаданные и данные набора данных хранятся в указанном расположении хранилища. Объекты базы данных не регистрируются в хранилище метаданных Hive.
Хранилище метаданных Hive Не указано Существующая или новая схема в хранилище метаданных Hive. Метаданные и данные набора данных хранятся в корневом каталоге DBFS. Все материализованные представления и таблицы потоковой передачи в конвейере публикуются в указанной схеме в хранилище метаданных Hive.
Хранилище метаданных Hive URI или файловый путь к хранилищу облачных объектов. Существующая или новая схема в хранилище метаданных Hive. Метаданные и данные набора данных хранятся в указанном расположении хранилища. Все материализованные представления и потоковые таблицы в конвейере опубликованы в определённой схеме в хранилище метаданных Hive.
Каталог Unity Существующий каталог Unity. Не указано Метаданные и данные набора данных хранятся в расположении хранилища по умолчанию, связанном с целевым каталогом. Объекты базы данных не регистрируются в каталоге Unity.
Каталог Unity Существующий каталог Unity Catalog. Существующая или новая схема в каталоге Unity. Метаданные и данные набора данных хранятся в расположении хранилища по умолчанию, связанном с целевой схемой или каталогом. Все материализованные представления и таблицы потоковой передачи в конвейере публикуются в указанной схеме в каталоге Unity.

Переключение между режимами публикации

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

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

См. ссылку на свойства Delta Live Tables в разделе .

Заметка

Не нужно обновлять свойства catalog или storage, используемые соответственно каталогом Unity и конвейерами хранилища метаданных Hive.

Обновление исходного кода из схемы LIVE

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

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

Важный

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

CREATE MATERIALIZED VIEW silver_table
AS SELECT * FROM raw_data

В устаревшем режиме публикации неквалифицированное чтение из таблицы raw_data использует каталог рабочей области и схему по умолчанию, например main.default.raw_data. В новом режиме конвейера по умолчанию каталог и схема, используемые по умолчанию, настраиваются в конфигурации конвейера. Чтобы убедиться, что этот код продолжает работать должным образом, обновите ссылку, чтобы использовать полный идентификатор таблицы, как показано в следующем примере:

CREATE MATERIALIZED VIEW silver_table
AS SELECT * FROM main.default.raw_data