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


Справочник по свойствам разностных динамических таблиц

В этой статье приведена ссылка на спецификацию параметров JSON Delta Live Table и свойства таблицы в Azure Databricks. Дополнительные сведения об использовании этих различных свойств и конфигураций см. в следующих статьях:

Конфигурации конвейера разностных динамических таблиц

Поля
id

Тип: string

Глобальный уникальный идентификатор этого конвейера. Идентификатор назначается системой и не может быть изменен.
name

Тип: string

Понятное имя для этого конвейера. Имя можно использовать для идентификации заданий конвейера в пользовательском интерфейсе.
storage

Тип: string

Расположение в DBFS или облачном хранилище, где хранятся выходные данные и метаданные, необходимые для выполнения конвейера. Таблицы и метаданные хранятся в подкаталогах этого расположения.

Если параметр storage не указан, по умолчанию система использует папку dbfs:/pipelines/.

Параметр storage нельзя изменить после создания конвейера.
configuration

Тип: object

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

Элементы должны быть отформатированы как пары key:value.
libraries

Тип: array of objects

Массив записных книжек, содержащих код конвейера и необходимые артефакты.
clusters

Тип: array of objects

Массив спецификаций кластеров для запуска конвейера.

Если этот параметр не указан, конвейеры будут автоматически использовать конфигурацию кластера по умолчанию.
development

Тип: boolean

Флаг, указывающий, следует ли запускать конвейер в
development или production режим.

Значение по умолчанию — true.
notifications

Тип: array of objects

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

Тип: boolean

Флаг, указывающий, должен ли конвейер работать непрерывно.

Значение по умолчанию — false.
target

Тип: string

Имя базы данных для сохранения выходных данных конвейера. Настройка параметра target позволяет просматривать выходные данные конвейера и выполнять запросы к ним из пользовательского интерфейса Azure Databricks.
channel

Тип: string

Используемая версия среды выполнения Delta Live Tables. Поддерживаются такие значения:

* preview для тестирования конвейера с предстоящим изменениями для версии среды выполнения.
* current для использования текущей версии среды выполнения.

Поле channel является необязательным. Значение по умолчанию —
current. Databricks рекомендует использовать текущую версию среды выполнения для рабочих нагрузок.
edition

Введите string.

Выпуск продукта Delta Live Tables для запуска конвейера. Этот параметр позволяет выбрать тот выпуск, который наилучшим образом соответствует требованиям конвейера:

* CORE для выполнения рабочих нагрузок приема потоковой передачи.
* PRO для выполнения рабочих нагрузок приема потоковой передачи и отслеживания измененных данных (CDC).
* ADVANCED для выполнения рабочих нагрузок приема потоковой передачи, рабочих нагрузок CDC и рабочих нагрузок, которым требуются возможности Delta Live Tables для принудительного применения ограничений по качеству данных.

Поле edition является необязательным. Значение по умолчанию —
ADVANCED.
photon

Тип: boolean

Флаг, указывающий, следует ли использовать Photon? для запуска конвейера. Photon — это высокопроизводительный модуль Spark в Azure Databricks. Конвейеры с поддержкой фото оплачиваются по сравнению с конвейерами, отличными от фотона.

Поле photon является необязательным. Значение по умолчанию — false.
pipelines.maxFlowRetryAttempts

Тип: int

Максимальное количество попыток повторения потока перед сбоем обновления конвейера при возникновении повторного сбоя.

Значение по умолчанию — два. По умолчанию при возникновении повторяемого сбоя среда выполнения Delta Live Tables пытается запустить поток три раза, включая исходную попытку.
pipelines.numUpdateRetryAttempts

Тип: int

Максимальное количество попыток повторного выполнения обновления перед сбоем обновления при возникновении повторного сбоя. Повтор выполняется в качестве полного обновления.

Значение по умолчанию — пять. Этот параметр применяется только к запущенным обновлениям в рабочем режиме. При запуске конвейера в режиме разработки нет повторных попыток.

Свойства таблицы Delta Live Table

Помимо свойств таблицы, поддерживаемых Delta Lake, можно задать следующие свойства таблицы.

Свойства таблицы
pipelines.autoOptimize.managed

По умолчанию: true

Включает или отключает автоматическую оптимизацию этой таблицы.
pipelines.autoOptimize.zOrderCols

По умолчанию: нет

Необязательная строка, содержащая разделенный запятыми список имен столбцов в z-order этой таблице. Например: pipelines.autoOptimize.zOrderCols = "year,month"
pipelines.reset.allowed

По умолчанию: true

Определяет, разрешено ли полное обновление для этой таблицы.

Свойства таблицы CDC

Примечание.: Эти свойства для управления поведением управления tombstone устарели и заменяются параметрами конвейера. Все существующие или новые конвейеры должны использовать новые параметры конвейера. См. сведения об управлении могилами для запросов типа 1 SCD.

Для управления поведением управления событиями при DELETE использовании CDC добавляются следующие свойства таблицы:

Свойства таблицы
pipelines.cdc.tombstoneGCThresholdInSeconds

По умолчанию: 5 минут

Задайте для этого значения самый большой ожидаемый интервал между неупорядоченными данными.
pipelines.cdc.tombstoneGCFrequencyInSeconds

Значение по умолчанию: 60 секунд

Управляет частотой проверки отметок полного удаления на необходимость очистки.

См . РАЗДЕЛ API APPLY CHANGES: Упрощение записи измененных данных в разностных динамических таблицах.

Интервал срабатывания конвейеров

Можно указать интервал триггера конвейера для всего конвейера разностных динамических таблиц или в рамках объявления набора данных. См . интервал триггера конвейеров.

pipelines.trigger.interval
Значение по умолчанию определяется типом потока:

* Пять секунд для потоковых запросов.
* Одна минута для полных запросов, если все входные данные имеют разностные источники.
* Десять минут для выполнения запросов, если некоторые источники данных могут быть не разностными.

Значение является числом с добавлением единицы времени. Ниже приведены допустимые единицы времени:

* second, seconds
* minute, minutes
* hour, hours
* day, days

При определении значения можно использовать единицы в единственном или множественном числе, например:

* {"pipelines.trigger.interval" : "1 hour"}
* {"pipelines.trigger.interval" : "10 seconds"}
* {"pipelines.trigger.interval" : "30 second"}
* {"pipelines.trigger.interval" : "1 minute"}
* {"pipelines.trigger.interval" : "10 minutes"}
* {"pipelines.trigger.interval" : "10 minute"}

Атрибуты кластера, которые не являются пользовательскими наборами

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

Поля
cluster_name

Разностные динамические таблицы задают имена кластеров, используемых для выполнения обновлений конвейера. Эти имена нельзя переопределить.
data_security_mode
access_mode

Эти значения автоматически задаются системой.
spark_version

Кластеры разностной динамической таблицы работают на базе пользовательской версии Databricks Runtime, которая постоянно обновляется и включает новейшие функции. Версия Spark связана с версией Databricks Runtime и не может быть переопределена.
autotermination_minutes

Так как Delta Live Tables управляет автоматическим завершением кластера и логикой повторного использования, время автоматического завершения кластера не может быть переопределено.
runtime_engine

Хотя вы можете управлять этим полем, включив Photon для конвейера, нельзя задать это значение напрямую.
effective_spark_version

Это значение автоматически устанавливается системой.
cluster_source

Это поле задается системой и доступно только для чтения.
docker_image

Так как Delta Live Tables управляет жизненным циклом кластера, вы не можете использовать пользовательский контейнер с кластерами конвейеров.
workload_type

Это значение задается системой и не может быть переопределено.