Руководство по API разностных динамических таблиц
Внимание
Содержимое этой статьи прекращено и может быть не обновлено. См. статью " Разностные динамические таблицы " в справочнике по REST API Databricks.
API разностных динамических таблиц позволяет создавать, изменять, удалять и запускать конвейеры, а также просматривать сведения о них.
Внимание
Чтобы получить доступ к REST API Databricks, необходимо пройти проверку подлинности.
Создание конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines |
POST |
Создает новый конвейер разностных динамических таблиц.
Пример
В этом примере создается новый конвейер с триггером.
Запросить
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines \
--data @pipeline-settings.json
pipeline-settings.json
:
{
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"continuous": false
}
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5"
}
Структура запроса
См. PipelineSettings.
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
pipeline_id | STRING |
Уникальный идентификатор для вновь созданного конвейера. |
Изменение конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id} |
PUT |
Обновляет параметры существующего конвейера.
Пример
В этом примере в конвейер добавляется параметр target
с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X PUT \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5 \
--data @pipeline-settings.json
pipeline-settings.json
{
"id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"target": "wikipedia_quickstart_data",
"continuous": false
}
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Структура запроса
См. PipelineSettings.
Удаление конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id} |
DELETE |
Удаляет конвейер из системы разностных динамических таблиц.
Пример
В этом примере удаляется конвейер с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X DELETE \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Запуск обновления конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id}/updates |
POST |
Запускает обновление для конвейера. Обновление можно запустить для всего графа конвейера или для определенных таблиц.
Примеры
Запуск полного обновления
В этом примере запускается полное обновление для конвейера с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "full_refresh": "true" }'
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
Запуск обновления выбранных таблиц
В этом примере запускается обновление таблиц sales_orders_cleaned
и sales_order_in_chicago
в конвейере с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
:
Запросить
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "refresh_selection": ["sales_orders_cleaned", "sales_order_in_chicago"] }'
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
Запуск полного обновления выбранных таблиц
В этом примере запускается обновление таблиц sales_orders_cleaned
и sales_order_in_chicago
, а также полное обновление таблиц customers
и sales_orders_raw
в конвейере с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "refresh_selection": ["sales_orders_cleaned", "sales_order_in_chicago"], "full_refresh_selection": ["customers", "sales_orders_raw"] }'
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
Структура запроса
Имя поля | Тип | Описание |
---|---|---|
full_refresh |
BOOLEAN |
Указывает, следует ли повторно обрабатывать все данные. Если используется значение true , система Delta Live Tables сбрасывает все таблицы, которые можно сбросить, перед запуском конвейера.Это поле необязательно. Значение по умолчанию — false .Если full_refesh имеет значение true и задано поле refresh_selection или full_refresh_selection , возвращается ошибка. |
refresh_selection |
Массив объектов STRING . |
Список обновляемых таблиц. Использованиеrefresh_selection , чтобы запустить обновление выбранного набора таблиц в графе конвейера.Это поле необязательно. Если поля refresh_selection Иfull_refresh_selection пусты, обновляется весь граф конвейера.Если возвращается ошибка: * full_refesh имеет значение true, иСвойство refresh_selection задано.* Одна или несколько указанных таблиц отсутствуют в графе конвейера. |
full_refresh_selection |
Массив объектов STRING . |
Список таблиц для полного обновления. Используйте full_refresh_selection для запуска обновления выбранного набора таблиц. Состояние указанных таблиц сбрасывается до запуска обновления системой Delta Live Tables.Это поле необязательно. Если поля refresh_selection Иfull_refresh_selection пусты, обновляется весь граф конвейера.Если возвращается ошибка: * full_refesh имеет значение true, иСвойство refresh_selection задано.* Одна или несколько указанных таблиц отсутствуют в графе конвейера. * Одну или несколько указанных таблиц невозможно сбросить. |
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
update_id |
STRING |
Уникальный идентификатор только что созданного обновления. |
request_id |
STRING |
Уникальный идентификатор запроса, запускающего обновление. |
Получение состояния запроса на обновление конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id}/requests/{request_id} |
GET |
Возвращает состояние и сведения для обновления конвейера, связанного с request_id
ним, где request_id
является уникальным идентификатором для запроса, инициирующего обновление конвейера. Если обновление будет извлечено или перезапущено, новое обновление наследует request_id.
Пример
Для конвейера с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
в этом примере возвращается состояние и сведения об обновлении, связанном с идентификатором a83d9f7c-d798-4fd5-aa39-301b6e6f4429
запроса:
Запросить
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/requests/a83d9f7c-d798-4fd5-aa39-301b6e6f4429
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"status": "TERMINATED",
"latest_update":{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"update_id": "90da8183-89de-4715-b5a9-c243e67f0093",
"config":{
"id": "aae89b88-e97e-40c4-8e1a-1b7ac76657e8",
"name": "Retail sales (SQL)",
"storage": "/Users/username/data",
"configuration":{
"pipelines.numStreamRetryAttempts": "5"
},
"clusters":[
{
"label": "default",
"autoscale":{
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries":[
{
"notebook":{
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"continuous": false,
"development": true,
"photon": true,
"edition": "advanced",
"channel": "CURRENT"
},
"cause": "API_CALL",
"state": "COMPLETED",
"cluster_id": "1234-567891-abcde123",
"creation_time": 1664304117145,
"full_refresh": false,
"request_id": "a83d9f7c-d798-4fd5-aa39-301b6e6f4429"
}
}
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
status |
STRING |
Состояние запроса на обновление конвейера. Один из * ACTIVE : обновление для этого запроса активно выполняется или может быть извлечено в новом обновлении.* TERMINATED : запрос завершается и не будет повторно выполнен или перезапущен. |
pipeline_id |
STRING |
Уникальный идентификатор конвейера. |
update_id |
STRING |
Уникальный идентификатор обновления. |
config |
PipelineSettings | Параметры конвейера. |
cause |
STRING |
Триггер для обновления. Возможные значения: API_CALL ,RETRY_ON_FAILURE , , SERVICE_UPGRADE SCHEMA_CHANGE JOB_TASK или USER_ACTION . |
state |
STRING |
Состояние обновления. Возможные значения: QUEUED , CREATED ,WAITING_FOR_RESOURCES , , INITIALIZING RESETTING SETTING_UP_TABLES , , RUNNING STOPPING , COMPLETED FAILED или CANCELED . |
cluster_id |
STRING |
Идентификатор кластера, на котором выполняется обновление. |
creation_time |
INT64 |
Метка времени создания обновления. |
full_refresh |
BOOLEAN |
Будет ли это обновление сбрасывать все таблицы перед запуском |
refresh_selection |
Массив объектов STRING . |
Список таблиц для обновления без полного обновления. |
full_refresh_selection |
Массив объектов STRING . |
Список таблиц для полного обновления. |
request_id |
STRING |
Уникальный идентификатор запроса, запускающего обновление. Это значение, возвращаемое запросом на обновление . Если обновление будет извлечено или перезапущено, новое обновление наследует request_id. Тем не менее, update_id это будет отличаться. |
Останов всех активных обновлений конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id}/stop |
POST |
Останавливает любое активное обновление конвейера. Если обновление не выполняется, никакие операции по этому запросу не производятся.
Выполнение непрерывного конвейера приостанавливается. Обновление таблиц, которые обрабатываются в настоящее время, завершается, но нижележащие таблицы не обновляются. При следующем обновлении конвейера система Delta Live Tables выполняет выбранное обновление таблиц, обработка которых не была завершена, после чего возобновляется обработка оставшейся части направленного ациклического графа конвейера.
Выполнение активированного конвейера останавливается. Обновление таблиц, которые обрабатываются в настоящее время, завершается, но нижележащие таблицы не обновляются. При следующем обновлении конвейера система Delta Live Tables обновляет все таблицы.
Пример
В этом примере останавливается обновление конвейера с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/stop
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Получение списка событий конвейера
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id}/events |
GET |
Извлекает события для конвейера.
Пример
В этом примере извлекается не более 5 событий для конвейера с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/events?max_results=5
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Структура запроса
Имя поля | Тип | Описание |
---|---|---|
page_token |
STRING |
Маркер страницы, возвращенный предыдущим вызовом. С этим полем в запросе нельзя использовать другие поля, кроме max_results. Если наряду с этим полем заданы какие-либо поля, кроме max_results, возвращается ошибка. Это поле необязательно. |
max_results |
INT32 |
Максимальное число записей, возвращаемых на одной странице. Система может вернуть в ответе меньше max_results событий, даже если доступно больше событий.Это поле необязательно. По умолчанию используется значение 25. Максимальное значение равно 100. Возвращается ошибка, если значение max_results больше 100. |
order_by |
STRING |
Строка, указывающая порядок сортировки результатов по метке времени, например ["timestamp asc"] .Порядок сортировки может быть по возрастанию или по убыванию. По умолчанию события возвращаются в порядке убывания по метке времени. Это поле необязательно. |
filter |
STRING |
Критерии для выбора подмножества результатов, выраженного с помощью синтаксиса, аналогичного SQL. Поддерживаются следующие фильтры: * level='INFO' (или WARN , или ERROR )* level in ('INFO', 'WARN') * id='[event-id]' * timestamp > 'TIMESTAMP' (или >= ,< ,<= ,= )Поддерживаются составные выражения, например: level in ('ERROR', 'WARN') AND timestamp> '2021-07-22T06:37:33.083Z' Это поле необязательно. |
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
events |
Массив событий конвейера. | Список событий, соответствующих критериям запроса. |
next_page_token |
STRING |
Если имеется, то это маркер для получения следующей страницы событий. |
prev_page_token |
STRING |
Если имеется, то это маркер для получения предыдущей страницы событий. |
Получение сведений о конвейере
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id} |
GET |
Возвращает сведения о конвейере, включая его параметры и последние обновления.
Пример
Этот пример получает сведения о конвейере с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"spec": {
"id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"target": "wikipedia_quickstart_data",
"continuous": false
},
"state": "IDLE",
"cluster_id": "1234-567891-abcde123",
"name": "Wikipedia pipeline (SQL)",
"creator_user_name": "username",
"latest_updates": [
{
"update_id": "8a0b6d02-fbd0-11eb-9a03-0242ac130003",
"state": "COMPLETED",
"creation_time": "2021-08-13T00:37:30.279Z"
},
{
"update_id": "a72c08ba-fbd0-11eb-9a03-0242ac130003",
"state": "CANCELED",
"creation_time": "2021-08-13T00:35:51.902Z"
},
{
"update_id": "ac37d924-fbd0-11eb-9a03-0242ac130003",
"state": "FAILED",
"creation_time": "2021-08-13T00:33:38.565Z"
}
],
"run_as_user_name": "username"
}
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
pipeline_id |
STRING |
Уникальный идентификатор конвейера. |
spec |
PipelineSettings | Параметры конвейера. |
state |
STRING |
Состояние конвейера. Возможные значения: IDLE или RUNNING .Если state = RUNNING , то существует хотя бы одно активное обновление. |
cluster_id |
STRING |
Идентификатор кластера, в котором работает конвейер. |
name |
STRING |
Понятное имя для этого конвейера. |
creator_user_name |
STRING |
Имя создателя конвейера. |
latest_updates |
Массив UpdateStateInfo | Состояние наиболее недавних обновлений для конвейера. Первыми в списке идет самое последнее обновление. |
run_as_user_name |
STRING |
Имя пользователя, от имени которого выполняется конвейер. |
Получение сведений об обновлении
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/{pipeline_id}/updates/{update_id} |
GET |
Получает сведения об обновлении конвейера.
Пример
Этот пример получает сведения об обновлении 9a84f906-fc51-11eb-9a03-0242ac130003
для конвейера с идентификатором a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
.
Запросить
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates/9a84f906-fc51-11eb-9a03-0242ac130003
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"update": {
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"update_id": "9a84f906-fc51-11eb-9a03-0242ac130003",
"config": {
"id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"configuration": {
"pipelines.numStreamRetryAttempts": "5"
},
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"target": "wikipedia_quickstart_data",
"continuous": false,
"development": false
},
"cause": "API_CALL",
"state": "COMPLETED",
"creation_time": 1628815050279,
"full_refresh": true,
"request_id": "a83d9f7c-d798-4fd5-aa39-301b6e6f4429"
}
}
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
pipeline_id |
STRING |
Уникальный идентификатор конвейера. |
update_id |
STRING |
Уникальный идентификатор этого обновления. |
config |
PipelineSettings | Параметры конвейера. |
cause |
STRING |
Триггер для обновления. Возможные значения: API_CALL ,RETRY_ON_FAILURE , SERVICE_UPGRADE . |
state |
STRING |
Состояние обновления. Возможные значения: QUEUED , CREATED ,WAITING_FOR_RESOURCES , , INITIALIZING RESETTING SETTING_UP_TABLES , , RUNNING STOPPING , COMPLETED FAILED или CANCELED . |
cluster_id |
STRING |
Идентификатор кластера, в котором работает конвейер. |
creation_time |
INT64 |
Метка времени создания обновления. |
full_refresh |
BOOLEAN |
Является ли обновление полным. Если значение — true, все таблицы конвейера были сброшены перед выполнением обновления. |
Получение списка конвейеров
Конечная точка | Метод HTTP |
---|---|
2.0/pipelines/ |
GET |
Перечисляет конвейеры, определенные в системе разностных динамических таблиц.
Пример
В этом примере извлекаются сведения о конвейерах, в которых содержится quickstart
имя:
Запросить
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines?filter=name%20LIKE%20%27%25quickstart%25%27
Замена:
<databricks-instance>
именем экземпляра рабочей области Azure Databricks, напримерadb-1234567890123456.7.azuredatabricks.net
.
В этом примере используется файл .netrc.
Response
{
"statuses": [
{
"pipeline_id": "e0f01758-fc61-11eb-9a03-0242ac130003",
"state": "IDLE",
"name": "DLT quickstart (Python)",
"latest_updates": [
{
"update_id": "ee9ae73e-fc61-11eb-9a03-0242ac130003",
"state": "COMPLETED",
"creation_time": "2021-08-13T00:34:21.871Z"
}
],
"creator_user_name": "username"
},
{
"pipeline_id": "f4c82f5e-fc61-11eb-9a03-0242ac130003",
"state": "IDLE",
"name": "My DLT quickstart example",
"creator_user_name": "username"
}
],
"next_page_token": "eyJ...==",
"prev_page_token": "eyJ..x9"
}
Структура запроса
Имя поля | Тип | Описание |
---|---|---|
page_token |
STRING |
Маркер страницы, возвращенный предыдущим вызовом. Это поле необязательно. |
max_results |
INT32 |
Максимальное число записей, возвращаемых на одной странице. Система может вернуть в ответе меньше max_results событий, даже если доступно больше событий.Это поле необязательно. По умолчанию используется значение 25. Максимальное значение равно 100. Возвращается ошибка, если значение max_results больше 100. |
order_by |
Массив объектов STRING . |
Список строк, указывающих порядок результатов, например:["name asc"] . Для полей order_by поддерживаются id иname . Значение по умолчанию — id asc .Это поле необязательно. |
filter |
STRING |
Выбирает подмножество результатов на основе указанных критериев. Поддерживаются следующие фильтры: "notebook='<path>'" для выбора конвейеров, которые ссылаются на указанный путь к записной книжке.name LIKE '[pattern]' для выбора конвейеров с именем, соответствующим pattern . Поддерживаются подстановочные знаки, например:name LIKE '%shopping%' Составные фильтры не поддерживаются. Это поле необязательно. |
Структура ответа
Имя поля | Тип | Описание |
---|---|---|
statuses |
Массив PipelineStateInfo | Список событий, соответствующих критериям запроса. |
next_page_token |
STRING |
Если имеется, то это маркер для получения следующей страницы событий. |
prev_page_token |
STRING |
Если имеется, то это маркер для получения предыдущей страницы событий. |
Структуры данных
В этом разделе рассматриваются следующие вопросы.
- ABFSS служба хранилища Info
- ClusterLogConf
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- KeyValue
- NotebookLibrary
- PipelinesAutoScale
- PipelineLibrary
- PipelinesNewCluster
- PipelineSettings
- PipelineStateInfo
- UpdateStateInfo
- Рабочая область служба хранилища Info
ABFSS служба хранилища Info
Сведения о хранилище Azure Data Lake служба хранилища (ADLS).
Имя поля | Тип | Описание |
---|---|---|
destination |
STRING |
Место назначения файла. Пример: abfss://... |
ClusterLogConf
Путь к журналу кластера.
Имя поля | Тип | Описание |
---|---|---|
dbfs |
DbfsStorageInfo | Расположение DBFS журнала кластера. Необходимо указать назначение. Например,{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
DbfsStorageInfo
Сведения о хранилище DBFS.
Имя поля | Тип | Описание |
---|---|---|
destination |
STRING |
Назначение DBFS. Пример: dbfs:/my/path |
FileStorageInfo
Сведения о хранилище файлов.
Примечание.
Этот тип расположения доступен только для кластеров, настроенных с помощью служб контейнеров Databricks.
Имя поля | Тип | Описание |
---|---|---|
destination |
STRING |
Место назначения файла. Пример: file:/my/file.sh |
InitScriptInfo
Путь к скрипту инициализации.
Инструкции по использованию скриптов инициализации со службами контейнеров Databricks см. в разделе Использование скрипта инициализации.
Примечание.
Тип хранилища файлов (имя поля: file
) доступен только для кластеров, настроенных с помощью служб контейнеров Databricks. См. файл служба хранилища Info.
Имя поля | Тип | Описание |
---|---|---|
workspace ИЛИdbfs (не рекомендуется)ИЛИ abfss |
Рабочая область служба хранилища Info Dbfs служба хранилища Info (не рекомендуется) ABFSS служба хранилища Info |
Расположение рабочей области скрипта init. Необходимо указать назначение. Например,{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (не рекомендуется) Расположение скрипта инициализации DBFS. Необходимо указать назначение. Например, { "dbfs" : { "destination" : "dbfs:/home/init_script" } } Расположение скрипта init в Azure Data Lake служба хранилища (ADLS). Необходимо указать назначение. Например: { "abfss": { "destination" : "abfss://..." } } |
KeyValue
Пара "ключ — значение" с параметрами конфигурации.
Имя поля | Тип | Описание |
---|---|---|
key |
STRING |
Имя свойства конфигурации. |
value |
STRING |
Значение свойства конфигурации. |
NotebookLibrary
Спецификация записной книжки, содержащей код конвейера.
Имя поля | Тип | Описание |
---|---|---|
path |
STRING |
Абсолютный путь к записной книжке. Это обязательное поле. |
PipelinesAutoScale
Атрибуты, определяющие кластер автомасштабирования.
Имя поля | Тип | Описание |
---|---|---|
min_workers |
INT32 |
Минимальное число рабочих ролей, на которое кластер может масштабироваться при недостаточном использовании. Это также начальное число рабочих ролей, которые кластер будет иметь после создания. |
max_workers |
INT32 |
Максимальное число рабочих ролей, на которое кластер может масштабироваться при чрезмерном использовании. Значение max_workers должно быть строго больше значения min_workers. |
mode |
STRING |
Режим автомасштабирования для кластера: * ENHANCED для использования расширенного автомасштабирования.* LEGACY для использования функции автомасштабирования кластера. |
PipelineLibrary
Спецификация зависимостей конвейера.
Имя поля | Тип | Описание |
---|---|---|
notebook |
NotebookLibrary | Путь к записной книжке, определяющей наборы данных разностных динамических таблиц. Путь должен находиться в рабочей области Databricks, например:{ "notebook" : { "path" : "/my-pipeline-notebook-path" } } . |
PipelinesNewCluster
Спецификация кластера конвейера.
Система разностных динамических таблиц устанавливает следующие атрибуты. Пользователи не могут настраивать эти атрибуты:
spark_version
Имя поля | Тип | Описание |
---|---|---|
label |
STRING |
Метка для спецификации кластера. Возможные значения:default для настройки кластера по умолчанию илиmaintenance для настройки кластера обслуживания.Это поле необязательно. Значение по умолчанию — default . |
spark_conf |
KeyValue | Объект с набором необязательных, определяемых пользователем пар "ключ-значение" в конфигурации Spark. Кроме того, можно передать строку дополнительных параметров JVM драйверу и исполнителям черезspark.driver.extraJavaOptions и spark.executor.extraJavaOptions соответственно.Пример конфигураций Spark: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} или{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
Используя отдельное значение, это поле кодирует доступные ресурсы для каждого узла Spark в этом кластере. Например, узлы Spark можно подготовить и оптимизировать для памяти или вычислительных интенсивных рабочих нагрузок Список доступных типов узлов можно получить с помощью вызова API кластеров. |
driver_node_type_id |
STRING |
Тип узла драйвера Spark. Это поле является необязательным. Если значение не будет задано, тип узла драйвера устанавливается в то же значение, что и параметр node_type_id , определенный выше. |
ssh_public_keys |
Массив объектов STRING . |
Содержимое открытого ключа SSH, которое будет добавлено в каждый узел Spark в этом кластере. Соответствующие закрытые ключи можно использовать для входа с именем пользователя ubuntu через порт 2200 . Можно указать до 10 ключей. |
custom_tags |
KeyValue | Объект, содержащий набор тегов для кластерных ресурсов. В дополнение к default_tags Databricks помечает этими тегами все кластерные ресурсы. Примечание. *Теги не поддерживаются для устаревших типов узлов, таких как оптимизированные для вычислений и для памяти * Azure Databricks поддерживает не более 45 пользовательских тегов. |
cluster_log_conf |
ClusterLogConf | Конфигурация доставки журналов Spark в долгосрочное место хранения. Для одного кластера можно указать только одно назначение. Если предоставлена эта конфигурация, журналы будут доставляться в место назначения каждые5 mins . Место назначения журналов драйверов — <destination>/<cluster-ID>/driver , а место назначения журналов исполнителя — <destination>/<cluster-ID>/executor . |
spark_env_vars |
KeyValue | Объект, содержащий набор необязательных пар "ключ-значение", определяемых пользователем переменных среды. Пары "ключ-значение" формы (X, Y) экспортируются как есть (т. е.export X='Y' ) при запуске драйвера и рабочих ролей.Чтобы указать дополнительный набор SPARK_DAEMON_JAVA_OPTS , Databricks рекомендует добавить их в $SPARK_DAEMON_JAVA_OPTS , как показано в следующем примере. Кроме того, это гарантирует, что будут включены все управляемые переменные среды Azure Databricks, используемые по умолчанию.Примеры переменных среды Spark: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} или{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
init_scripts |
Массив InitScriptInfo | Конфигурация для хранения скриптов инициализации. Можно указать любое количество назначений. Скрипты выполняются последовательно в указанном порядке. Если для cluster_log_conf задано значение, журналы скриптов инициализации будут отправляться в<destination>/<cluster-ID>/init_scripts . |
instance_pool_id |
STRING |
Необязательный идентификатор пула экземпляров, к которому относится кластер. См . справочник по конфигурации пула. |
driver_instance_pool_id |
STRING |
Идентификатор (необязательно) пула экземпляров, используемый для узла драйвера. Необходимо также указатьinstance_pool_id . См . API пулов экземпляров. |
policy_id |
STRING |
Идентификатор политики кластера. |
num_workers OR autoscale |
INT32 OR InitScriptInfo |
Если указано num_workers, это количество рабочих узлов, которые должен иметь этот кластер. В кластере присутствует один драйвер Spark и исполнители num_workers для общего числа узлов: num_workers + 1 Spark. При чтении свойств кластера это поле отражает необходимое количество рабочих ролей, но не актуальное количество. Например, если размер кластера изменяется с 5 до 10 рабочих ролей, это поле будет обновлено, чтобы отразить целевой размер 10 рабочих ролей, а рабочие роли, перечисленные в исполнителях, будут постепенно увеличиваться с 5 до 10 по мере подготовки новых узлов. Если используется автомасштабирование, потребуются параметры для автоматического масштабирования кластеров в зависимости от нагрузки. Это поле необязательно. |
apply_policy_default_values |
BOOLEAN |
Указывает, нужно ли использовать значения политики по умолчанию для отсутствующих атрибутов кластера. |
PipelineSettings
Параметры развертывания конвейера.
Имя поля | Тип | Описание |
---|---|---|
id |
STRING |
Уникальный идентификатор для этого конвейера. Идентификатор создается системой разностных динамических таблиц и не должен предоставляться при создании конвейера. |
name |
STRING |
Понятное имя для этого конвейера. Это поле необязательно. По умолчанию имя конвейера должно быть уникальным. Чтобы использовать повторяющееся имя, задайте значение true для параметра allow_duplicate_names в конфигурации конвейера. |
storage |
STRING |
Путь к каталогу DBFS для хранения контрольных точек и таблиц, созданных конвейером. Это поле необязательно. Если это поле пусто, система использует расположение по умолчанию. |
configuration |
Схема STRING:STRING |
Список пар "ключ-значение" для добавления в конфигурацию Spark кластера, в котором будет выполняться конвейер. Это поле необязательно. Элементы должны быть отформатированы как пары "ключ:значение". |
clusters |
Массив PipelinesNewCluster | Массив спецификаций кластеров для запуска конвейера. Это поле необязательно. Если этот параметр не указан, система выберет для конвейера конфигурацию кластера по умолчанию. |
libraries |
Массив PipelineLibrary | Записные книжки, содержащие код конвейера и все зависимости, необходимые для запуска конвейера. |
target |
STRING |
Имя базы данных для сохранения выходных данных конвейера. Дополнительные сведения см. в статье "Публикация данных из разностных динамических таблиц" в хранилище метаданных Hive. |
continuous |
BOOLEAN |
Указывает, является ли этот конвейер непрерывным. Это поле необязательно. Значение по умолчанию — false . |
development |
BOOLEAN |
Указывает, нужно ли выполнять конвейер в режиме разработки. Это поле необязательно. Значение по умолчанию — false . |
photon |
BOOLEAN |
Включено ли ускорение Photon для этого конвейера. Это поле необязательно. Значение по умолчанию — false . |
channel |
STRING |
Канал выпуска Delta Live Tables, указывающий версию среды выполнения для этого конвейера. Поддерживаются значения: * preview для тестирования конвейера с предстоящими изменениями в среде выполнения Delta Live Tables.* current для использования текущей версии среды выполнения Delta Live Tables.Это поле необязательно. Значение по умолчанию — current . |
edition |
STRING |
Выпуск продукта Delta Live Tables для запуска конвейера. * CORE поддерживает рабочие нагрузки приема потоковой передачи.* PRO также поддерживает рабочие нагрузки приема потоковой передачи и добавляет поддержку обработки отслеживания измененных данных (CDC).* ADVANCED поддерживает все функции выпуска PRO и добавляет поддержку рабочих нагрузок, требующих применения ограничений качества данных в Delta Live Tables.Это поле необязательно. Значение по умолчанию — advanced . |
PipelineStateInfo
Состояние конвейера, состояние последних обновлений и сведения о связанных с ними ресурсах.
Имя поля | Тип | Описание |
---|---|---|
state |
STRING |
Состояние конвейера. Возможные значения: IDLE или RUNNING . |
pipeline_id |
STRING |
Уникальный идентификатор конвейера. |
cluster_id |
STRING |
Уникальный идентификатор кластера, в котором работает конвейер. |
name |
STRING |
Понятное имя конвейера. |
latest_updates |
Массив UpdateStateInfo | Состояние наиболее недавних обновлений для конвейера. Первыми в списке идет самое последнее обновление. |
creator_user_name |
STRING |
Имя создателя конвейера. |
run_as_user_name |
STRING |
Имя пользователя, от имени которого выполняется конвейер. Это значение, которое доступно только для чтения и определяется согласно владельцу конвейера. |
UpdateStateInfo
Текущее состояние обновления конвейера.
Имя поля | Тип | Описание |
---|---|---|
update_id |
STRING |
Уникальный идентификатор этого обновления. |
state |
STRING |
Состояние обновления. Одно из значений: QUEUED , CREATED ,WAITING_FOR_RESOURCES , , INITIALIZING RESETTING SETTING_UP_TABLES , , RUNNING STOPPING , COMPLETED FAILED или CANCELED . |
creation_time |
STRING |
Метка времени создания обновления. |
Рабочая область служба хранилища Info
Сведения о хранилище рабочей области.
Имя поля | Тип | Описание |
---|---|---|
destination |
STRING |
Место назначения файла. Пример: /Users/someone@domain.com/init_script.sh |