Delta Live Tables: API-Leitfaden
Wichtig
Der Inhalt dieses Artikels wurde eingestellt und wird möglicherweise nicht mehr aktualisiert. Weitere Informationen finden Sie unter Delta Live Tables in der Databricks-REST-API-Referenz.
Mit der Delta Live Tabellen-API können Sie Details zu Pipelines erstellen, bearbeiten, löschen, starten und anzeigen.
Wichtig
Für den Zugriff auf Databricks-REST-APIs müssen Sie sich authentifizieren.
Erstellen einer Pipeline
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines |
POST |
Erstellt eine neue Delta Live Tabellen-Pipeline.
Beispiel
In diesem Beispiel wird eine neue ausgelöste Pipeline erstellt.
Anforderung
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
}
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
response
{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5"
}
Anforderungsstruktur
Weitere Informationen finden Sie unter PipelineSettings.
Antwortstruktur
Feldname | Typ | BESCHREIBUNG |
---|---|---|
pipeline_id | STRING |
Der eindeutige Bezeichner für die neu erstellte Pipeline. |
Bearbeiten einer Pipeline
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id} |
PUT |
Aktualisiert die Einstellungen für eine vorhandene Pipeline.
Beispiel
In diesem Beispiel wird der Pipeline ein target
Parameter mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
hinzugefügt:
Anforderung
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
}
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
Anforderungsstruktur
Weitere Informationen finden Sie unter PipelineSettings.
Löschen einer Pipeline
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id} |
DELETE |
Löscht eine Pipeline aus dem Delta Live Tabellensystem.
Beispiel
In diesem Beispiel wird die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
gelöscht:
Anforderung
curl --netrc -X DELETE \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
Starten eines Pipelineupdates
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id}/updates |
POST |
Startet ein Update für eine Pipeline. Sie können ein Update für das gesamte Pipelinediagramm oder ein selektives Update für bestimmte Tabellen starten.
Beispiele
Starten einer vollständigen Aktualisierung
In diesem Beispiel wird ein Update mit vollständiger Aktualisierung für die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
gestartet:
Anforderung
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "full_refresh": "true" }'
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
response
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
Starten eines Updates ausgewählter Tabellen
In diesem Beispiel wird ein Update gestartet, das die sales_orders_cleaned
- und sales_order_in_chicago
-Tabellen in der Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
aktualisiert:
Anforderung
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"] }'
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
response
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
Starten eines vollständigen Updates ausgewählter Tabellen
In diesem Beispiel wird ein Update der sales_orders_cleaned
- und sales_order_in_chicago
-Tabellen und ein Update mit vollständiger Aktualisierung der customers
- und sales_orders_raw
-Tabellen in der Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
gestartet.
Anforderung
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"] }'
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
response
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
Anforderungsstruktur
Feldname | Typ | Beschreibung |
---|---|---|
full_refresh |
BOOLEAN |
Gibt an, ob alle Daten erneut verarbeitet werden sollen. Bei true setzt das Delta Live Tables-System alle Tabellen zurück, die zurückgesetzt werden können, bevor die Pipeline ausgeführt wird.Dieses Feld ist optional. Standardwert: false .Es wird ein Fehler zurückgegeben, wenn full_refesh entsprechend TRUE und entweder refresh_selection oder full_refresh_selection festgelegt ist. |
refresh_selection |
Ein Array von STRING |
Eine Liste der zu aktualisierenden Tabellen. Zweckrefresh_selection , um eine Aktualisierung einer ausgewählten Gruppe von Tabellen im Pipelinediagramm zu starten.Dieses Feld ist optional. Wenn refresh_selection undfull_refresh_selection leer sind, wird das gesamte Pipelinediagramm aktualisiert.Ein Fehler wird zurückgegeben, wenn: * full_refesh ist WAHR undrefresh_selection ist festgelegt.* Mindestens eine der angegebenen Tabellen ist im Pipelinediagramm nicht vorhanden. |
full_refresh_selection |
Ein Array von STRING |
Eine Liste der Tabellen, die mit vollständiger Aktualisierung aktualisiert werden sollen. Verwenden Sie full_refresh_selection zum Starten eines Updates einer ausgewählten Gruppe von Tabellen. Die Zustände der angegebenen Tabellen werden zurückgesetzt, bevor das Delta Live Tables-System das Update startet.Dieses Feld ist optional. Wenn refresh_selection undfull_refresh_selection leer sind, wird das gesamte Pipelinediagramm aktualisiert.Ein Fehler wird zurückgegeben, wenn: * full_refesh ist WAHR undrefresh_selection ist festgelegt.* Mindestens eine der angegebenen Tabellen ist im Pipelinediagramm nicht vorhanden. * Mindestens eine der angegebenen Tabellen kann nicht zurückgesetzt werden. |
Antwortstruktur
Feldname | Typ | Beschreibung |
---|---|---|
update_id |
STRING |
Der eindeutige Bezeichner des neu erstellten Updates. |
request_id |
STRING |
Der eindeutige Bezeichner der Anforderung, die das Update gestartet hat. |
Abrufen des Status einer Pipeline-Updateanforderung
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id}/requests/{request_id} |
GET |
Ruft den Status und die Informationen für das Pipelineupdate ab, das request_id
zugeordnet ist, wobei es sich bei request_id
um einen eindeutigen Bezeichner für die Anforderung handelt, die das Pipelineupdate einleitet. Wenn das Update wiederholt oder neu gestartet wird, erbt das neue Update die request_id.
Beispiel
Für die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
gibt dieses Beispiel Status und Informationen für das Update zurück, das der Anforderungs-ID a83d9f7c-d798-4fd5-aa39-301b6e6f4429
zugeordnet ist:
Anforderung
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/requests/a83d9f7c-d798-4fd5-aa39-301b6e6f4429
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
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"
}
}
Antwortstruktur
Feldname | Typ | Beschreibung |
---|---|---|
status |
STRING |
Der Status der Pipeline-Updateanforderung. Einer der folgenden Werte: * ACTIVE : Ein Update für diese Anforderung wird aktiv ausgeführt oder wird möglicherweise in einem neuen Update wiederholt.* TERMINATED : Die Anforderung wurde beendet und wird nicht wiederholt oder neu gestartet. |
pipeline_id |
STRING |
Der eindeutige Bezeichner der Pipeline. |
update_id |
STRING |
Der eindeutige Bezeichner des Updates. |
config |
PipelineSettings | Die Pipeline-Einstellungen. |
cause |
STRING |
Der Trigger für das Update. Einer der folgenden Werte: API_CALL ,RETRY_ON_FAILURE , SERVICE_UPGRADE , SCHEMA_CHANGE ,JOB_TASK oder USER_ACTION . |
state |
STRING |
Der Zustand des Updates. Einer der folgenden Werte: QUEUED , CREATED WAITING_FOR_RESOURCES , INITIALIZING , RESETTING ,SETTING_UP_TABLES , RUNNING , STOPPING , COMPLETED ,FAILED oder CANCELED . |
cluster_id |
STRING |
Der Bezeichner des Clusters, auf dem das Update ausgeführt wird. |
creation_time |
INT64 |
Der Zeitstempel, als das Update erstellt wurde. |
full_refresh |
BOOLEAN |
Gibt an, ob dieses Update vor der Ausführung alle Tabellen zurücksetzt |
refresh_selection |
Ein Array von STRING |
Eine Liste der Tabellen, die ohne vollständige Aktualisierung aktualisiert werden sollen. |
full_refresh_selection |
Ein Array von STRING |
Eine Liste der Tabellen, die mit vollständiger Aktualisierung aktualisiert werden sollen. |
request_id |
STRING |
Der eindeutige Bezeichner der Anforderung, die das Update gestartet hat. Dies ist der Wert, der von der Update-Anforderung zurückgegeben wird. Wenn das Update wiederholt oder neu gestartet wird, erbt das neue Update die request_id. Die update_id unterscheidet sich jedoch. |
Beenden eines aktiven Pipeline-Updates
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id}/stop |
POST |
Beendet jedes aktive Pipeline-Update. Wenn kein Update ausgeführt wird, ist diese Anforderung nicht betriebsbereit.
Für eine fortlaufende Pipeline wird die Pipelineausführung angehalten. Tabellen, die derzeit den Abschluss der Aktualisierung verarbeiten, aber Downstreamtabellen werden nicht aktualisiert. Im nächsten Pipelineupdate führt Delta Live Tables eine ausgewählte Aktualisierung von Tabellen aus, die die Verarbeitung nicht abgeschlossen haben und die Verarbeitung des verbleibenden Pipeline-DAGs fortsetzen.
Für eine ausgelöste Pipeline wird die Pipelineausführung beendet. Tabellen, die derzeit den Abschluss der Aktualisierung verarbeiten, aber Downstreamtabellen werden nicht aktualisiert. Beim nächsten Pipelineupdate aktualisiert Delta Live Tables alle Tabellen.
Beispiel
In diesem Beispiel wird ein Update für die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
beendet:
Anforderung
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/stop
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
Pipeline-Ereignisse auflisten
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id}/events |
GET |
Ruft Ereignisse für eine Pipeline ab.
Beispiel
In diesem Beispiel werden maximal 5 Ereignisse für die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
abgerufen.
Anforderung
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/events?max_results=5
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
Anforderungsstruktur
Feldname | Typ | Beschreibung |
---|---|---|
page_token |
STRING |
Über den vorherigen Aufruf angezeigtes Seitentoken. Dieses Feld enthält gegenseitig alle Felder in dieser Anforderung mit Ausnahme von max_results. Ein Fehler wird zurückgegeben, wenn andere Felder als max_results festgelegt werden, wenn dieses Feld festgelegt wird. Dieses Feld ist optional. |
max_results |
INT32 |
Die maximale Anzahl von Einträgen, die auf einer einzelnen Seite angezeigt werden sollen. Das System gibt möglicherweise weniger als max_results Ereignisse in einer Antwort zurück, auch wenn mehr Ereignisse verfügbar sind.Dieses Feld ist optional. Der Standardwert ist 25. Der Maximalwert ist 100. Ein Fehler wird angezeigt, wenn der Wert von max_results größer als 100 ist. |
order_by |
STRING |
Eine Zeichenfolge, die eine Sortierreihenfolge nach Zeitstempel für die Ergebnisse angibt, z. B. ["timestamp asc"] .Die Sortierreihenfolge kann aufsteigend oder absteigend sein. Standardmäßig werden Ereignisse in absteigender Reihenfolge nach Zeitstempel zurückgegeben. Dieses Feld ist optional. |
filter |
STRING |
Kriterien zum Auswählen einer Teilmenge der Ergebnisse, ausgedrückt mit einer SQL-ähnlichen Syntax. Die folgenden Filter werden unterstützt: * level='INFO' (oder WARN oder ERROR )* level in ('INFO', 'WARN') * id='[event-id]' * timestamp > 'TIMESTAMP' (oder >= ,< ,<= ,= )Zusammengesetzte Ausdrücke werden unterstützt, z. B.: level in ('ERROR', 'WARN') AND timestamp> '2021-07-22T06:37:33.083Z' Dieses Feld ist optional. |
Antwortstruktur
Feldname | Typ | Beschreibung |
---|---|---|
events |
Ein Pipeline-Ereignis-Array. | Die Liste der Ereignisse, die den Anforderungskriterien entsprechen. |
next_page_token |
STRING |
Falls vorhanden, ein Token zum Abrufen der nächsten Ereignisseite. |
prev_page_token |
STRING |
Falls vorhanden, ein Token zum Abrufen der vorherigen Ereignisseite. |
Pipeline-Details abrufen
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id} |
GET |
Ruft Details zu einer Pipeline ab, einschließlich der Pipeline-Einstellungen und der letzten Updates.
Beispiel
Dieses Beispiel ruft Details für die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
ab:
Anforderung
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
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"
}
Antwortstruktur
Feldname | Typ | Beschreibung |
---|---|---|
pipeline_id |
STRING |
Der eindeutige Bezeichner der Pipeline. |
spec |
PipelineSettings | Die Pipeline-Einstellungen. |
state |
STRING |
Der Status der Pipeline. Einer der folgenden Werte: IDLE oder RUNNING .Wenn Status = RUNNING ist, gibt es mindestens ein aktives Update. |
cluster_id |
STRING |
Der Bezeichner des Clusters, in dem die Pipeline ausgeführt wird. |
name |
STRING |
Der benutzerfreundliche Name für diese Pipeline. |
creator_user_name |
STRING |
Der Benutzername des Pipeline-Erstellers. |
latest_updates |
Ein Array von UpdateStateInfo | Status der neuesten Updates für die Pipeline, so geordnet, dass die neuesten Update zuerst angezeigt werden. |
run_as_user_name |
STRING |
Der Benutzername, unter dem die Pipeline ausgeführt wird. |
Update-Details abrufen
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/{pipeline_id}/updates/{update_id} |
GET |
Ruft Details für ein Pipeline-Update ab.
Beispiel
Dieses Beispiel ruft Details für das Update 9a84f906-fc51-11eb-9a03-0242ac130003
für die Pipeline mit der ID a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
ab:
Anforderung
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates/9a84f906-fc51-11eb-9a03-0242ac130003
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
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"
}
}
Antwortstruktur
Feldname | Typ | Beschreibung |
---|---|---|
pipeline_id |
STRING |
Der eindeutige Bezeichner der Pipeline. |
update_id |
STRING |
Der eindeutige Bezeichner dieses Updates. |
config |
PipelineSettings | Die Pipeline-Einstellungen. |
cause |
STRING |
Der Trigger für das Update. Einer der folgenden Werte: API_CALL ,RETRY_ON_FAILURE , SERVICE_UPGRADE . |
state |
STRING |
Der Zustand des Updates. Einer der folgenden Werte: QUEUED , CREATED WAITING_FOR_RESOURCES , INITIALIZING , RESETTING ,SETTING_UP_TABLES , RUNNING , STOPPING , COMPLETED ,FAILED oder CANCELED . |
cluster_id |
STRING |
Der Bezeichner des Clusters, in dem die Pipeline ausgeführt wird. |
creation_time |
INT64 |
Der Zeitstempel, als das Update erstellt wurde. |
full_refresh |
BOOLEAN |
Gibt an, ob dies eine vollständige Aktualisierung war. „True“ gibt an, dass alle Pipelinetabellen vor dem Ausführen des Updates zurückgesetzt wurden. |
Auflisten von Pipelines
Endpunkt | HTTP-Methode |
---|---|
2.0/pipelines/ |
GET |
Listet Pipelines auf, die im Delta Live Tabellensystem definiert sind.
Beispiel
In diesem Beispiel werden Details für Pipelines abgerufen, deren Name quickstart
enthält:
Anforderung
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines?filter=name%20LIKE%20%27%25quickstart%25%27
Ersetzen Sie:
<databricks-instance>
durch den Namen der Azure Databricks-Arbeitsbereichsinstanz, zum Beispieladb-1234567890123456.7.azuredatabricks.net
.
In diesem Beispiel wird eine NETRC-Datei verwendet.
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"
}
Anforderungsstruktur
Feldname | Typ | Beschreibung |
---|---|---|
page_token |
STRING |
Über den vorherigen Aufruf angezeigtes Seitentoken. Dieses Feld ist optional. |
max_results |
INT32 |
Die maximale Anzahl von Einträgen, die auf einer einzelnen Seite angezeigt werden sollen. Das System gibt möglicherweise weniger als max_results Ereignisse in einer Antwort zurück, auch wenn mehr Ereignisse verfügbar sind.Dieses Feld ist optional. Der Standardwert ist 25. Der Maximalwert ist 100. Ein Fehler wird angezeigt, wenn der Wert von max_results größer als 100 ist. |
order_by |
Ein Array von STRING |
Eine Liste von Zeichenfolgen, die die Reihenfolge der Ergebnisse angeben, z. B.["name asc"] . Unterstützte order_by -Felder sind id undname . Der Standardwert lautet id asc .Dieses Feld ist optional. |
filter |
STRING |
Wählen Sie eine Teilmenge der Ergebnisse basierend auf den angegebenen Kriterien aus. Die folgenden Filter werden unterstützt: "notebook='<path>'" , um Pipelines auszuwählen, die auf den angegebenen Notebookpfad verweisen.name LIKE '[pattern]' , um Pipelines mit einem Namen auszuwählen, der pattern entspricht. Platzhalter werden unterstützt, z. B.:name LIKE '%shopping%' Zusammengesetzte Filter werden nicht unterstützt. Dieses Feld ist optional. |
Antwortstruktur
Feldname | Typ | Beschreibung |
---|---|---|
statuses |
Ein Array von PipelineStateInfo | Die Liste der Ereignisse, die den Anforderungskriterien entsprechen. |
next_page_token |
STRING |
Falls vorhanden, ein Token zum Abrufen der nächsten Ereignisseite. |
prev_page_token |
STRING |
Falls vorhanden, ein Token zum Abrufen der vorherigen Ereignisseite. |
Datenstrukturen
Inhalt dieses Abschnitts:
- ABFSSStorageInfo
- ClusterLogConf
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- KeyValue
- NotebookLibrary
- PipelinesAutoScale
- PipelineLibrary
- PipelinesNewCluster
- PipelineSettings
- PipelineStateInfo
- UpdateStateInfo
- WorkspaceStorageInfo
ABFSSStorageInfo
Azure Data Lake Storage (ADLS)-Speicherinformationen.
Feldname | Typ | Beschreibung |
---|---|---|
destination |
STRING |
Ziel der Datei. Beispiel: abfss://... |
ClusterLogConf
Pfad zum Clusterprotokoll.
Feldname | Typ | Beschreibung |
---|---|---|
dbfs |
DbfsStorageInfo | DBFS-Speicherort des Clusterprotokolls. Das Ziel muss angegeben werden. Ein auf ein Objekt angewendeter{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
DbfsStorageInfo
DBFS-Speicherinformationen.
Feldname | Typ | Beschreibung |
---|---|---|
destination |
STRING |
DBFS-Ziel. Beispiel: dbfs:/my/path |
FileStorageInfo
Dateispeicherinformationen.
Hinweis
Dieser Speicherorttyp ist nur für Cluster verfügbar, die mit Databricks-Containerdiensten eingerichtet wurden.
Feldname | Typ | Beschreibung |
---|---|---|
destination |
STRING |
Ziel der Datei. Beispiel: file:/my/file.sh |
InitScriptInfo
Pfad zu einem Initialisierungsskript.
Anweisungen zur Verwendung von Initialisierungsskripts mit Databricks-Containerdiensten finden Sie unter Verwenden eines Initialisierungsskripts.
Hinweis
Der Dateispeichertyp (Feldname: file
) ist nur für Cluster verfügbar, die mit Databricks-Containerdiensten eingerichtet wurden. Weitere Informationen finden Sie unter FileStorageInfo.
Feldname | Typ | Beschreibung |
---|---|---|
workspace ODERdbfs (veraltet)OR abfss |
WorkspaceStorageInfo DbfsStorageInfo (veraltet) ABFSSStorageInfo |
Arbeitsbereichsspeicherort des Initialisierungsskripts. Das Ziel muss angegeben werden. Ein auf ein Objekt angewendeter{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (Veraltet) DBFS-Speicherort des Initialisierungsskripts. Das Ziel muss angegeben werden. Ein auf ein Objekt angewendeter { "dbfs" : { "destination" : "dbfs:/home/init_script" } } Azure Data Lake Storage (ADLS)-Speicherort des Initialisierungsskripts. Das Ziel muss angegeben werden. Beispiel: { "abfss": { "destination" : "abfss://..." } } |
KeyValue
Ein Schlüssel-Wert-Paar zum Angeben von Konfigurationsparametern.
Feldname | Typ | Beschreibung |
---|---|---|
key |
STRING |
Der Name einer Konfigurationseigenschaft. |
value |
STRING |
Der Wert einer Konfigurationseigenschaft. |
NotebookLibrary
Eine Spezifikation für ein Notebook, das Pipelinecode enthält.
Feldname | Typ | Beschreibung |
---|---|---|
path |
STRING |
Der absolute Pfad zum Notebook. Dieses Feld ist ein Pflichtfeld. |
PipelinesAutoScale
Attribute zum Definieren eines Clusters mit automatischer Skalierung.
Feldname | Typ | Beschreibung |
---|---|---|
min_workers |
INT32 |
Die mindestens erforderliche Anzahl von Workern, auf die der Cluster herunterskaliert werden kann, wenn er nicht ausgelastet ist. Dies ist auch die anfängliche Anzahl von Workern, über die der Cluster nach der Erstellung verfügt. |
max_workers |
INT32 |
Die maximal zulässige Anzahl von Workern, auf die der Cluster hochskaliert werden kann, wenn er überlastet ist. „max_workers“ muss streng größer sein als „min_workers“. |
mode |
STRING |
Der Modus für die automatische Skalierung des Clusters: * ENHANCED für die Verwendung der erweiterten automatischen Skalierung.* LEGACY für die Verwendung der automatischen Skalierung des Clusters. |
PipelineLibrary
Eine Spezifikation für Pipelineabhängigkeiten.
Feldname | Typ | Beschreibung |
---|---|---|
notebook |
NotebookLibrary | Der Pfad zu einem Notebook, das Delta Live Tabellen-Datasets definiert. Der Pfad muss sich im Databricks-Arbeitsbereich befinden, z. B.:{ "notebook" : { "path" : "/my-pipeline-notebook-path" } } . |
PipelinesNewCluster
Eine Pipelineclusterspezifikation.
Das Delta Live Tabellensystem legt die folgenden Attribute fest. Diese Attribute können nicht von Benutzern konfiguriert werden:
spark_version
Feldname | Typ | Beschreibung |
---|---|---|
label |
STRING |
Eine Bezeichnung für die Clusterspezifikation, entwederdefault , um den Standardcluster zu konfigurieren, odermaintenance , um den Wartungscluster zu konfigurieren.Dieses Feld ist optional. Der Standardwert ist default . |
spark_conf |
KeyValue | Ein Objekt mit optionalen, benutzerspezifischen Schlüssel-Wert-Paaren für die Spark-Konfiguration. Sie können darüber hinaus eine Zeichenfolge mit zusätzlichen JVM-Optionen an den Treiber und die Executors übergeben, indem Siespark.driver.extraJavaOptions bzw. spark.executor.extraJavaOptions verwenden.Spark-Beispielkonfigurationen: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} oder{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
Dieses Feld codiert mithilfe eines einzigen Werts die Ressourcen, die jedem der Spark-Knoten in diesem Cluster zur Verfügung stehen. Spark-Knoten können beispielsweise für speicher- oder rechenintensive Workloads bereitgestellt und optimiert werden. Eine Liste der verfügbaren Knotentypen kann mit dem Aufruf Clusters API abgerufen werden. |
driver_node_type_id |
STRING |
Der Knotentyp des Spark-Treibers. Dieses Feld ist optional. Ohne Festlegung wird der Treiberknotentyp auf den gleichen Wert festgelegt wie node_type_id (oben definiert). |
ssh_public_keys |
Ein Array von STRING |
Inhalt des öffentlichen SSH-Schlüssels, der jedem Spark-Knoten in diesem Cluster hinzugefügt wird. Die entsprechenden privaten Schlüssel können verwendet werden, um sich mit dem Benutzernamen ubuntu an Port 2200 anzumelden. Bis zu 10 Schlüssel können angegeben werden. |
custom_tags |
KeyValue | Ein Objekt, das Tags für Clusterressourcen enthält. Databricks kennzeichnet alle Clusterressourcen zusätzlich zu „default_tags“ mit diesen Tags. Hinweis: * Tags werden für Legacyknotentypen wie „Für Compute optimiert“ und „Arbeitsspeicheroptimiert“ nicht unterstützt. * In Azure Databricks sind maximal 45 benutzerdefinierte Tags zulässig. |
cluster_log_conf |
ClusterLogConf | Die Konfiguration für die Übermittlung von Spark-Protokollen an ein Ziel für die langfristige Speicherung. Für einen Cluster kann nur ein Ziel angegeben werden. Bei Angabe dieser Konfiguration werden die Protokolle im folgenden Abstand an das Ziel übermittelt:5 mins . Das Ziel von Treiberprotokollen lautet <destination>/<cluster-ID>/driver , während das Ziel von Executorprotokollen <destination>/<cluster-ID>/executor lautet. |
spark_env_vars |
KeyValue | Ein Objekt, das optionale, benutzerdefinierte Schlüssel-Wert-Paare für Umgebungsvariablen enthält. Schlüssel-Wert-Paare der Form (X,Y) werden unverändert exportiert (d. h.export X='Y' ), wenn der Treiber und die Worker gestartet werden.Wenn Sie eine zusätzliche Gruppe von SPARK_DAEMON_JAVA_OPTS angeben möchten, sollten Sie sie wie im folgenden Beispiel an $SPARK_DAEMON_JAVA_OPTS anhängen. Dadurch wird sichergestellt, dass auch alle von Azure Databricks verwalteten Standardumgebungsvariablen einbezogen werden.Beispiele für Spark-Umgebungsvariablen: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} oder{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
init_scripts |
Ein InitScriptInfo-Array | Die Konfiguration zum Speichern von Initialisierungsskripts. Hier kann eine beliebige Anzahl von Zielen angegeben werden. Die Skripts werden sequenziell in der angegebenen Reihenfolge ausgeführt. Wenn cluster_log_conf angegeben ist, werden Initialisierungsskript-Protokolle an gesendet.<destination>/<cluster-ID>/init_scripts . |
instance_pool_id |
STRING |
Die optionale ID des Instanzpools, zu dem der Cluster gehört. Siehe Poolkonfigurationsreferenz. |
driver_instance_pool_id |
STRING |
Die optionale ID des Instanzpools, der für den Treiberknoten verwendet werden soll. Sie müssen auch Folgendes angeben:instance_pool_id . Weitere Informationen finden Sie unter API für Instanzenpools. |
policy_id |
STRING |
Eine Clusterrichtlinien-ID. |
num_workers OR autoscale |
INT32 ODER InitScriptInfo |
Bei Verwendung von „num_workers“ die Anzahl von Workerknoten, die dieser Cluster aufweisen sollte. Ein Cluster umfasst einen Spark-Treiber und num_workers Executors für insgesamt num_workers + 1 Spark-Knoten. Beim Lesen der Eigenschaften eines Clusters gibt dieses Feld die gewünschte Anzahl von Workern und nicht die tatsächliche Anzahl von Workern an. Wenn beispielsweise die Größe eines Clusters von 5 auf 10 Worker geändert wird, wird dieses Feld aktualisiert, um die Zielgröße von 10 Workern widerzuspiegeln, während die in Executors aufgeführten Worker schrittweise von 5 auf 10 erhöht werden, wenn die neuen Knoten bereitgestellt werden. Bei der automatischen Skalierung sind Parameter erforderlich, um Cluster basierend auf der Last automatisch hoch- und herunterzuskalieren. Dieses Feld ist optional. |
apply_policy_default_values |
BOOLEAN |
Ob Richtlinienstandardwerte für fehlende Clusterattribute verwendet werden sollen. |
PipelineSettings
Die Einstellungen für eine Pipelinebereitstellung.
Feldname | Typ | Beschreibung |
---|---|---|
id |
STRING |
Der eindeutige Bezeichner für diese Pipeline. Der Bezeichner wird vom Delta Live Tabellensystem erstellt und darf beim Erstellen einer Pipeline nicht angegeben werden. |
name |
STRING |
Dies ist ein Anzeigename für diese Pipeline. Dieses Feld ist optional. Standardmäßig muss der Pipelinename eindeutig sein. Um einen doppelten Namen zu verwenden, legen Sie allow_duplicate_names in der Pipelinekonfiguration auf true fest. |
storage |
STRING |
Ein Pfad zu einem DBFS-Verzeichnis zum Speichern von Prüfpunkten und Tabellen, die von der Pipeline erstellt wurden. Dieses Feld ist optional. Das System verwendet einen Standardspeicherort, wenn dieses Feld leer ist. |
configuration |
Eine Zuordnung von STRING:STRING |
Eine Liste von Schlüssel-Wert-Paaren, die der Spark-Konfiguration des Clusters hinzugefügt werden sollen, der die Pipeline ausführen soll. Dieses Feld ist optional. Elemente müssen als Schlüssel-Wert-Paare formatiert werden. |
clusters |
Ein Array von PipelinesNewCluster | Ein Array von Spezifikationen für die Cluster zum Ausführen der Pipeline. Dieses Feld ist optional. Wenn dies nicht angegeben ist, wählt das System eine Standardclusterkonfiguration für die Pipeline aus. |
libraries |
Ein Array von PipelineLibrary | Die Notebooks, die den Pipelinecode und alle Abhängigkeiten enthalten, die zum Ausführen der Pipeline erforderlich sind. |
target |
STRING |
Ein Datenbankname zum Beibehalten von Pipelineausgabedaten. Weitere Informationen finden Sie unter Veröffentlichen von Daten aus Delta Live Tables im Hive-Metastore. |
continuous |
BOOLEAN |
Gibt an, ob es sich um eine kontinuierliche Pipeline handelt. Dieses Feld ist optional. Der Standardwert ist false . |
development |
BOOLEAN |
Gibt an, ob die Pipeline im Entwicklungsmodus ausgeführt werden soll. Dieses Feld ist optional. Der Standardwert ist false . |
photon |
BOOLEAN |
Gibt an, ob die Photon-Beschleunigung für diese Pipeline aktiviert ist. Dieses Feld ist optional. Der Standardwert ist false . |
channel |
STRING |
Der Delta Live Tables-Releasekanal, der die Runtimeversion angibt, die für diese Pipeline verwendet werden soll. Folgende Werte werden unterstützt: * preview , um die Pipeline mit bevorstehenden Änderungen an der Delta Live Tables-Runtime zu testen.* current , um die aktuelle Delta Live Tables-Runtimeversion zu verwenden.Dieses Feld ist optional. Der Standardwert ist current . |
edition |
STRING |
Die Produktedition von Delta Live Tables für die Ausführung der Pipeline: * CORE unterstützt Streaming-Workloads zur Erfassung.* PRO unterstützt auch Streaming-Workloads zur Erfassung und fügt Support für die CDC (Change Data Capture)-Verarbeitung hinzu.* ADVANCED unterstützt alle Features der PRO -Edition und fügt Support für Workloads hinzu, die Delta Live Tables-Erwartungen zum Erzwingen von Datenqualitätseinschränkungen erfordern.Dieses Feld ist optional. Standardwert: advanced . |
PipelineStateInfo
Der Zustand einer Pipeline, der Status der neuesten Updates und Informationen zu zugeordneten Ressourcen.
Feldname | Typ | Beschreibung |
---|---|---|
state |
STRING |
Der Status der Pipeline. Einer der folgenden Werte: IDLE oder RUNNING . |
pipeline_id |
STRING |
Der eindeutige Bezeichner der Pipeline. |
cluster_id |
STRING |
Der eindeutige Bezeichner des Clusters, in dem die Pipeline ausgeführt wird. |
name |
STRING |
Der benutzerfreundliche Name der Pipeline. |
latest_updates |
Ein Array von UpdateStateInfo | Status der neuesten Updates für die Pipeline, so geordnet, dass die neuesten Update zuerst angezeigt werden. |
creator_user_name |
STRING |
Der Benutzername des Pipeline-Erstellers. |
run_as_user_name |
STRING |
Der Benutzername, unter dem die Pipeline ausgeführt wird. Dies ist ein schreibgeschützter Wert, der vom Pipelinebesitzer abgeleitet wird. |
UpdateStateInfo
Der aktuelle Zustand eines Pipelineupdates.
Feldname | Typ | Beschreibung |
---|---|---|
update_id |
STRING |
Der eindeutige Bezeichner für dieses Update. |
state |
STRING |
Der Zustand des Updates. Einer der folgenden Werte: QUEUED , CREATED ,WAITING_FOR_RESOURCES , INITIALIZING , RESETTING ,SETTING_UP_TABLES , RUNNING , STOPPING , COMPLETED ,FAILED oder CANCELED . |
creation_time |
STRING |
Der Zeitstempel, als dieses Update erstellt wurde. |
WorkspaceStorageInfo
Speicherinformationen des Arbeitsbereichs.
Feldname | Typ | Beschreibung |
---|---|---|
destination |
STRING |
Ziel der Datei. Beispiel: /Users/someone@domain.com/init_script.sh |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für