API processi 2.0
Importante
Questo articolo illustra la versione 2.0 dell'API Processi. Databricks consiglia tuttavia di usare l'API processi 2.1 per client e script nuovi ed esistenti. Per informazioni dettagliate sulle modifiche dalle versioni dalla versione 2.0 alla 2.1, vedere Aggiornamento dall'API processi 2.0 alla versione 2.1.
L'API Processi consente di creare, modificare ed eliminare processi. La dimensione massima consentita di una richiesta all'API processi è 10 MB.
Per informazioni dettagliate sugli aggiornamenti all'API Processi che supportano l'orchestrazione di più attività con i processi di Azure Databricks, vedere Aggiornamento dall'API dei processi 2.0 a 2.1.
Avviso
Non è mai consigliabile impostare segreti hardcoded o archiviarli in testo normale. Usare l'APISecrets per gestire i segreti nell'interfaccia della riga di comando di Databricks. Usare l'utilità Secrets (dbutils.secrets) per fare riferimento ai segreti nei notebook e nei processi.
Nota
Se si riceve un errore di livello 500 durante l'esecuzione di richieste API di processi, Databricks consiglia di ripetere le richieste per un massimo di 10 minuti (con un intervallo minimo di 30 secondi tra i tentativi).
Importante
Per accedere alle API REST di Databricks, è necessario eseguire l'autenticazione.
Creare
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/create |
POST |
Creare una nuova commessa.
Esempio
Questo esempio crea un processo che esegue un'attività JAR alle 10:15 di ogni notte.
Richiedi
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/create \
--data @create-job.json \
| jq .
create-job.json
:
{
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 3600,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.- Contenuto di
create-job.json
con i campi appropriati per la soluzione.
Questo esempio usa un file .netrc e jq.
Response
{
"job_id": 1
}
Struttura della richiesta
Importante
- Quando si esegue un processo in un nuovo cluster di processi, il processo viene considerato come un carico di lavoro di calcolo dei processi (automatizzato) soggetto ai prezzi di calcolo dei processi.
- Quando si esegue un processo in un cluster all-purpose esistente, viene considerato come un carico di lavoro di calcolo all-purpose (interattivo) soggetto ai prezzi di calcolo all-purpose.
Nome campo | Tipo | Descrizione |
---|---|---|
existing_cluster_id O new_cluster |
STRING OR NewCluster |
Se existing_cluster_id, l'ID di un cluster esistente che verrà usato per tutte le esecuzioni di questo processo. Quando si eseguono processi in un cluster esistente, potrebbe essere necessario riavviare manualmente il cluster se smette di rispondere. È consigliabile eseguire processi in nuovi cluster per una maggiore affidabilità. Se new_cluster, una descrizione di un cluster che verrà creato per ogni esecuzione. Se si specifica pipelineTask, questo campo può essere vuoto. |
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task O run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | Se notebook_task, indica che questo processo deve eseguire un notebook. Questo campo potrebbe non essere specificato in combinazione con spark_jar_task. Se spark_jar_task, indica che questo processo deve eseguire un file JAR. Se spark_python_task, indica che questo processo deve eseguire un file Python. Se spark_submit_task, indica che questo processo deve essere avviato dallo script di invio spark. Se pipeline_task, indica che questo processo deve eseguire una pipeline delta live tables. Se run_job_task, indica che questo processo deve eseguire un altro processo. |
name |
STRING |
Nome facoltativo per il processo. Il valore predefinito è Untitled . |
libraries |
Matrice di librerie | Elenco facoltativo di librerie da installare nel cluster che eseguirà il processo. Il valore predefinito è un elenco vuoto. |
email_notifications |
JobEmailNotifications | Un set facoltativo di indirizzi di posta elettronica avvisati quando l'esecuzione di questo processo inizia e completa e quando questo processo viene eliminato. Il comportamento predefinito consiste nel non inviare messaggi di posta elettronica. |
webhook_notifications |
WebhookNotifications | Set facoltativo di destinazioni di sistema per notificare quando l'esecuzione di questo processo inizia, completa o non riesce. |
notification_settings |
JobNotification Impostazioni | Impostazioni di notifica facoltative usate durante l'invio email_notifications di notifiche a ognuno di e webhook_notifications per questo processo. |
timeout_seconds |
INT32 |
Timeout facoltativo applicato a ogni esecuzione di questo processo. Il comportamento predefinito non prevede alcun timeout. |
max_retries |
INT32 |
Numero massimo facoltativo di tentativi di esecuzione non riuscita. Un'esecuzione viene considerata non riuscita se viene completata con il FAILED result_state oINTERNAL_ERROR life_cycle_state . Il valore -1 indica di riprovare per un periodo illimitato e il valore 0 significa non riprovare mai. Il comportamento predefinito consiste nel non riprovare mai. |
min_retry_interval_millis |
INT32 |
Intervallo minimo facoltativo in millisecondi tra l'inizio dell'esecuzione non riuscita e l'esecuzione successiva dei tentativi. Il comportamento predefinito è che le esecuzioni non riuscite vengono ritentate immediatamente. |
retry_on_timeout |
BOOL |
Un criterio facoltativo per specificare se ripetere un processo quando si verifica il timeout. Il comportamento predefinito consiste nel non ritentare il timeout. |
schedule |
CronSchedule | Pianificazione periodica facoltativa per questo processo. Il comportamento predefinito è che il processo viene eseguito quando viene attivato facendo clic su Esegui ora nell'interfaccia utente dei processi o inviando una richiesta API a runNow . |
max_concurrent_runs |
INT32 |
Numero massimo facoltativo consentito di esecuzioni simultanee del processo. Impostare questo valore se si vuole essere in grado di eseguire più esecuzioni dello stesso processo contemporaneamente. Ciò è utile, ad esempio, se si attiva il processo in base a una pianificazione frequente e si vuole consentire le esecuzioni consecutive di sovrapporsi tra loro oppure se si desidera attivare più esecuzioni che differiscono in base ai relativi parametri di input. Questa impostazione influisce solo sulle nuove esecuzioni. Si supponga, ad esempio, che la concorrenza del processo sia 4 e che siano presenti 4 esecuzioni attive simultanee. Quindi l'impostazione della concorrenza su 3 non comporta l'interruzione delle esecuzioni attive. Tuttavia, da allora, le nuove esecuzioni vengono ignorate a meno che non siano presenti meno di 3 esecuzioni attive. Questo valore non può superare 1000. Se si imposta questo valore su 0, tutte le nuove esecuzioni verranno ignorate. Il comportamento predefinito consiste nell'consentire solo 1 esecuzione simultanea. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico per il processo appena creato. |
Elenco
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/list |
GET |
Consente di visualizzare un elenco di tutti i processi.
Esempio
Richiedi
curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .
Sostituire <databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempio adb-1234567890123456.7.azuredatabricks.net
.
Questo esempio usa un file .netrc e jq.
Response
{
"jobs": [
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
]
}
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
jobs |
Matrice di processi | Elenco di processi. |
Delete
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/delete |
POST |
Eliminare un processo e inviare un messaggio di posta elettronica agli indirizzi specificati in JobSettings.email_notifications
. Non viene eseguita alcuna azione se il processo è già stato rimosso. Dopo la rimozione del processo, né i relativi dettagli né la relativa cronologia di esecuzione sono visibili nell'interfaccia utente o nell'API dei processi. Il processo deve essere rimosso al termine della richiesta. Tuttavia, le esecuzioni attive prima della ricezione di questa richiesta potrebbero essere ancora attive. Verranno terminati in modo asincrono.
Esempio
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<job-id>
con l'ID del processo, ad esempio123
.
In questo esempio viene usato un file .netrc .
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo da eliminare. Campo obbligatorio. |
Ottieni
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/get |
GET |
Recuperare informazioni su un singolo processo.
Esempio
Richiedi
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .
Oppure:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<job-id>
con l'ID del processo, ad esempio123
.
Questo esempio usa un file .netrc e jq.
Response
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo su cui recuperare informazioni. Campo obbligatorio. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico per questo processo. |
creator_user_name |
STRING |
Nome utente autore. Questo campo non verrà incluso nella risposta se l'utente è stato eliminato. |
settings |
Processo Impostazioni | Impostazioni per questo processo e tutte le relative esecuzioni. Queste impostazioni possono essere aggiornate usando gli endpoint di reimpostazione o aggiornamento . |
created_time |
INT64 |
Ora in cui questo processo è stato creato in millisecondi di periodo (millisecondi dal 1/1/1970 UTC). |
Reimpostare
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/reset |
POST |
Sovrascrivere tutte le impostazioni per un processo specifico. Usare l'endpoint di aggiornamento per aggiornare parzialmente le impostazioni del processo.
Esempio
Questa richiesta di esempio rende il processo 2 identico al processo 1 nell'esempio di creazione .
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/reset \
--data @reset-job.json \
| jq .
reset-job.json
:
{
"job_id": 2,
"new_settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
}
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.- Contenuto di
reset-job.json
con i campi appropriati per la soluzione.
Questo esempio usa un file .netrc e jq.
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo da reimpostare. Campo obbligatorio. |
new_settings |
Processo Impostazioni | Nuove impostazioni del processo. Queste impostazioni sostituiscono completamente le impostazioni precedenti. Le modifiche apportate al campo JobSettings.timeout_seconds vengono applicate alle esecuzioni attive. Le modifiche apportate ad altri campi vengono applicate solo alle esecuzioni future. |
Aggiornamento
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/update |
POST |
Aggiungere, modificare o rimuovere impostazioni specifiche di un processo esistente. Usare l'endpoint Reimposta per sovrascrivere tutte le impostazioni del processo.
Esempio
Questa richiesta di esempio rimuove le librerie e aggiunge le impostazioni di notifica tramite posta elettronica al processo 1 definito nell'esempio di creazione .
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/update \
--data @update-job.json \
| jq .
update-job.json
:
{
"job_id": 1,
"new_settings": {
"existing_cluster_id": "1201-my-cluster",
"email_notifications": {
"on_start": [ "someone@example.com" ],
"on_success": [],
"on_failure": []
}
},
"fields_to_remove": ["libraries"]
}
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.- Contenuto di
update-job.json
con i campi appropriati per la soluzione.
Questo esempio usa un file .netrc e jq.
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo da aggiornare. Campo obbligatorio. |
new_settings |
Processo Impostazioni | Nuove impostazioni per il processo. I campi di primo livello specificati in new_settings , ad eccezione delle matrici, vengono completamente sostituiti. Le matrici vengono unite in base ai rispettivi campi chiave, ad esempio task_key ojob_cluster_key Le voci della matrice e con la stessa chiave vengono sostituite completamente. Ad eccezione dell'unione di matrici, l'aggiornamento parziale dei campi annidati non è supportato.Le modifiche apportate al campo JobSettings.timeout_seconds vengono applicate alle esecuzioni attive. Le modifiche apportate ad altri campi vengono applicate solo alle esecuzioni future. |
fields_to_remove |
Matrice di STRING . |
Rimuovere i campi di primo livello nelle impostazioni del processo. La rimozione dei campi annidati non è supportata, ad eccezione delle tasks voci delle matrici e job_clusters . Ad esempio, di seguito è riportato un argomento valido per questo campo:["libraries", "schedule", "tasks/task_1", "job_clusters/Default"] Questo campo è facoltativo. |
Esegui adesso
Importante
- Un'area di lavoro è limitata a 1000 esecuzioni simultanee. Una risposta
429 Too Many Requests
viene restituita quando si richiede un'esecuzione che non può iniziare immediatamente. - Il numero di processi che un'area di lavoro può creare in un'ora è limitato a 10000 (include "esecuzioni di invio"). Questo limite influisce anche sui processi creati dall'API REST e dai flussi di lavoro del notebook.
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/run-now |
POST |
Eseguire un processo ora e restituire l'oggetto run_id
dell'esecuzione attivata.
Suggerimento
Se si richiama Crea insieme a Esegui adesso, è possibile usare invece l'endpoint di invio Esecuzioni, che consente di inviare il carico di lavoro direttamente senza dover creare un processo.
Esempio
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .
run-job.json
:
Una richiesta di esempio per un processo notebook:
{
"job_id": 1,
"notebook_params": {
"name": "john doe",
"age": "35"
}
}
Una richiesta di esempio per un processo JAR:
{
"job_id": 2,
"jar_params": [ "john doe", "35" ]
}
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.- Contenuto di
run-job.json
con i campi appropriati per la soluzione.
Questo esempio usa un file .netrc e jq.
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
|
jar_params |
Matrice di STRING . |
Elenco di parametri per i processi con attività JAR, ad esempio "jar_params": ["john doe", "35"] . I parametri verranno usati per richiamare la funzione principale della classe principale specificata nell'attività SPARK JAR. Se non specificato in run-now , per impostazione predefinita verrà visualizzato un elenco vuoto. jar_params non può essere specificato in combinazione con notebook_params. La rappresentazione JSON di questo campo (ad esempio {"jar_params":["john doe","35"]} ) non può superare i 10.000 byte. |
notebook_params |
Mappa di ParamPair | Mappa da chiavi a valori per i processi con attività notebook, ad esempio"notebook_params": {"name": "john doe", "age": "35"} . La mappa viene passata al notebook ed è accessibile tramite la funzione dbutils.widgets.get .Se non specificato in run-now , l'esecuzione attivata usa i parametri di base del processo.Non è possibile specificare notebook_params in combinazione con jar_params. Rappresentazione JSON di questo campo (ad esempio, {"notebook_params":{"name":"john doe","age":"35"}} ) non può superare 10.000 byte. |
python_params |
Matrice di STRING . |
Elenco di parametri per i processi con attività Python, ad esempio "python_params": ["john doe", "35"] . I parametri verranno passati al file Python come parametri della riga di comando. Se specificato in run-now , sovrascriverà i parametri specificati nell'impostazione del processo. La rappresentazione JSON di questo campo (ad esempio {"python_params":["john doe","35"]} ) non può superare i 10.000 byte. |
spark_submit_params |
Matrice di STRING . |
Elenco di parametri per i processi con attività di invio spark, ad esempio"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . I parametri verranno passati allo script spark-submit come parametri della riga di comando. Se specificato in run-now , sovrascriverà i parametri specificati nell'impostazione del processo. La rappresentazione JSON di questo campo non può superare 10.000 byte. |
idempotency_token |
STRING |
Token facoltativo per garantire l'idempotenza delle richieste di esecuzione del processo. Se esiste già un'esecuzione con il token specificato, la richiesta non crea una nuova esecuzione ma restituisce l'ID dell'esecuzione esistente. Se viene eliminata un'esecuzione con il token specificato, viene restituito un errore. Se si specifica il token di idempotenza, in caso di errore è possibile riprovare fino a quando la richiesta non riesce. Azure Databricks garantisce che venga avviata esattamente un'esecuzione con tale token di idempotenza. Questo token deve avere al massimo 64 caratteri. Per altre informazioni, vedere Come garantire l'idempotenza per i processi. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
ID univoco globale dell'esecuzione appena attivata. |
number_in_job |
INT64 |
Numero di sequenza di questa esecuzione tra tutte le esecuzioni del processo. |
Esecuzioni di invio
Importante
- Un'area di lavoro è limitata a 1000 esecuzioni simultanee. Una risposta
429 Too Many Requests
viene restituita quando si richiede un'esecuzione che non può iniziare immediatamente. - Il numero di processi che un'area di lavoro può creare in un'ora è limitato a 10000 (include "esecuzioni di invio"). Questo limite influisce anche sui processi creati dall'API REST e dai flussi di lavoro del notebook.
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/submit |
POST |
Inviare un'esecuzione una tantum. Questo endpoint consente di inviare un carico di lavoro direttamente senza creare un processo. Usare l'API jobs/runs/get
per controllare lo stato di esecuzione dopo l'invio del processo.
Esempio
Richiedi
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/submit \
--data @submit-job.json \
| jq .
submit-job.json
:
{
"run_name": "my spark task",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.- Contenuto di
submit-job.json
con i campi appropriati per la soluzione.
Questo esempio usa un file .netrc e jq.
Response
{
"run_id": 123
}
Struttura della richiesta
Importante
- Quando si esegue un processo in un nuovo cluster di processi, il processo viene considerato come un carico di lavoro di calcolo dei processi (automatizzato) soggetto ai prezzi di calcolo dei processi.
- Quando si esegue un processo in un cluster all-purpose esistente, viene considerato come un carico di lavoro di calcolo all-purpose (interattivo) soggetto ai prezzi di calcolo all-purpose.
Nome campo | Tipo | Descrizione |
---|---|---|
existing_cluster_id O new_cluster |
STRING OR NewCluster |
Se existing_cluster_id, l'ID di un cluster esistente che verrà usato per tutte le esecuzioni di questo processo. Quando si eseguono processi in un cluster esistente, potrebbe essere necessario riavviare manualmente il cluster se smette di rispondere. È consigliabile eseguire processi in nuovi cluster per una maggiore affidabilità. Se new_cluster, una descrizione di un cluster che verrà creato per ogni esecuzione. Se si specifica pipelineTask, questo campo può essere vuoto. |
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task O run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | Se notebook_task, indica che questo processo deve eseguire un notebook. Questo campo potrebbe non essere specificato in combinazione con spark_jar_task. Se spark_jar_task, indica che questo processo deve eseguire un file JAR. Se spark_python_task, indica che questo processo deve eseguire un file Python. Se spark_submit_task, indica che questo processo deve essere avviato dallo script di invio spark. Se pipeline_task, indica che questo processo deve eseguire una pipeline delta live tables. Se run_job_task, indica che questo processo deve eseguire un altro processo. |
run_name |
STRING |
Nome facoltativo per l'esecuzione. Il valore predefinito è Untitled . |
webhook_notifications |
WebhookNotifications | Set facoltativo di destinazioni di sistema per notificare quando l'esecuzione di questo processo inizia, completa o non riesce. |
notification_settings |
JobNotification Impostazioni | Impostazioni di notifica facoltative usate durante l'invio webhook_notifications di notifiche a ognuna di per questa esecuzione. |
libraries |
Matrice di librerie | Elenco facoltativo di librerie da installare nel cluster che eseguirà il processo. Il valore predefinito è un elenco vuoto. |
timeout_seconds |
INT32 |
Timeout facoltativo applicato a ogni esecuzione di questo processo. Il comportamento predefinito non prevede alcun timeout. |
idempotency_token |
STRING |
Token facoltativo per garantire l'idempotenza delle richieste di esecuzione del processo. Se esiste già un'esecuzione con il token specificato, la richiesta non crea una nuova esecuzione ma restituisce l'ID dell'esecuzione esistente. Se viene eliminata un'esecuzione con il token specificato, viene restituito un errore. Se si specifica il token di idempotenza, in caso di errore è possibile riprovare fino a quando la richiesta non riesce. Azure Databricks garantisce che venga avviata esattamente un'esecuzione con tale token di idempotenza. Questo token deve avere al massimo 64 caratteri. Per altre informazioni, vedere Come garantire l'idempotenza per i processi. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
Identificatore canonico per l'esecuzione appena inviata. |
Elenco esecuzioni
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/list |
GET |
L'elenco viene eseguito in ordine decrescente in base all'ora di inizio.
Nota
Le esecuzioni vengono rimosse automaticamente dopo 60 giorni. Se si desidera farvi riferimento oltre 60 giorni, è consigliabile salvare i risultati di esecuzione precedenti prima della scadenza. Per esportare usando l'interfaccia utente, vedere Esportare i risultati dell'esecuzione del processo. Per esportare usando l'API Processi, vedere Esportazione di esecuzioni.
Esempio
Richiedi
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/list?job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
Oppure:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/list \
--data 'job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<job-id>
con l'ID del processo, ad esempio123
.<true-false>
contrue
ofalse
.<offset>
con iloffset
valore .<limit>
con illimit
valore .<run-type>
con ilrun_type
valore .
Questo esempio usa un file .netrc e jq.
Response
{
"runs": [
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/donald@duck.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
],
"has_more": true
}
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
active_only O completed_only |
BOOL O BOOL |
Se active_only è true , nei risultati vengono incluse solo le esecuzioni attive; in caso contrario, elenca le esecuzioni attive e completate. Un'esecuzione attiva è un'esecuzione in PENDING , RUNNING o TERMINATING RunLifecycleState. Questo campo non può essere true quando completed_only è true .Se completed_only è true , nei risultati vengono incluse solo le esecuzioni completate; in caso contrario, elenca le esecuzioni attive e completate. Questo campo non può essere true quando active_only è true . |
job_id |
INT64 |
Processo per il quale elencare le esecuzioni. Se omesso, il servizio Processi elenca le esecuzioni da tutti i processi. |
offset |
INT32 |
Offset della prima esecuzione da restituire, rispetto all'esecuzione più recente. |
limit |
INT32 |
Numero di esecuzioni da restituire. Questo valore deve essere maggiore di 0 e minore di 1000. Il valore predefinito è 20. Se una richiesta specifica un limite pari a 0, il servizio userà invece il limite massimo. |
run_type |
STRING |
Tipo di esecuzioni da restituire. Per una descrizione dei tipi di esecuzione, vedere Eseguire. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
runs |
Matrice di run | Un elenco di esecuzioni, dall'ultimo inizio fino al minimo. |
has_more |
BOOL |
Se true, sono disponibili esecuzioni aggiuntive corrispondenti al filtro fornito per l'elenco. |
Esecuzione get
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/get |
GET |
Recuperare i metadati di un'esecuzione.
Nota
Le esecuzioni vengono rimosse automaticamente dopo 60 giorni. Se si desidera farvi riferimento oltre 60 giorni, è consigliabile salvare i risultati di esecuzione precedenti prima della scadenza. Per esportare usando l'interfaccia utente, vedere Esportare i risultati dell'esecuzione del processo. Per esportare usando l'API Processi, vedere Esportazione di esecuzioni.
Esempio
Richiedi
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .
Oppure:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<run-id>
con l'ID dell'esecuzione, ad esempio123
.
Questo esempio usa un file .netrc e jq.
Response
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
Identificatore canonico dell'esecuzione per cui recuperare i metadati. Campo obbligatorio. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo che contiene questa esecuzione. |
run_id |
INT64 |
Identificatore canonico dell'esecuzione. Questo ID è univoco in tutte le esecuzioni di tutti i processi. |
number_in_job |
INT64 |
Numero di sequenza di questa esecuzione tra tutte le esecuzioni del processo. Questo valore inizia da 1. |
original_attempt_run_id |
INT64 |
Se questa esecuzione è un nuovo tentativo di esecuzione precedente, questo campo contiene il run_id del tentativo originale; in caso contrario, corrisponde al run_id. |
state |
RunState | Stato del risultato e del ciclo di vita dell'esecuzione. |
schedule |
CronSchedule | Pianificazione cron che ha attivato questa esecuzione se è stata attivata dall'utilità di pianificazione periodica. |
task |
JobTask | Attività eseguita dall'esecuzione, se presente. |
cluster_spec |
ClusterSpec | Snapshot della specifica del cluster del processo al momento della creazione di questa esecuzione. |
cluster_instance |
ClusterInstance | Cluster usato per questa esecuzione. Se l'esecuzione viene specificata per l'uso di un nuovo cluster, questo campo verrà impostato dopo che il servizio Processi ha richiesto un cluster per l'esecuzione. |
overriding_parameters |
RunParameters | Parametri utilizzati per questa esecuzione. |
start_time |
INT64 |
Ora in cui questa esecuzione è stata avviata in millisecondi di periodo (millisecondi dal 1/1/1970 UTC). Questo potrebbe non essere il momento in cui l'attività del processo inizia l'esecuzione, ad esempio se il processo è pianificato per l'esecuzione in un nuovo cluster, è il momento in cui viene eseguita la chiamata di creazione del cluster. |
end_time |
INT64 |
Ora in cui l'esecuzione è terminata in millisecondi di periodo (millisecondi dal 1/1/1970 UTC). Questo campo verrà impostato su 0 se il processo è ancora in esecuzione. |
setup_duration |
INT64 |
Tempo in millisecondi necessario per configurare il cluster. Per le esecuzioni eseguite in nuovi cluster questo è il tempo di creazione del cluster, per le esecuzioni eseguite in cluster esistenti questa volta dovrebbero essere molto brevi. La durata totale dell'esecuzione è la somma di setup_duration ,execution_duration e .cleanup_duration Il setup_duration campo è impostato su 0 per le esecuzioni di processi multitasking. La durata totale di un'esecuzione di un processo multitasking è il valore dirun_duration Campo. |
execution_duration |
INT64 |
Tempo in millisecondi impiegato per eseguire i comandi nel file JAR o nel notebook fino a quando non vengono completati, non riusciti, scaduti, sono stati annullati o si è verificato un errore imprevisto. La durata totale dell'esecuzione è la somma di setup_duration , execution_duration ecleanup_duration . Il execution_duration campo è impostato su 0 per le esecuzioni di processi multitasking. La durata totale di un'esecuzione di un processo multitasking è il valore del run_duration campo. |
cleanup_duration |
INT64 |
Tempo in millisecondi necessario per terminare il cluster e pulire gli elementi associati. La durata totale dell'esecuzione è la somma di setup_duration , execution_duration e .cleanup_duration Il cleanup_duration campo è impostato su 0 per le esecuzioni di processi multitasking. La durata totale di un'esecuzione di un processo multitasking è il valore del run_duration campo. |
run_duration |
INT64 |
Tempo in millisecondi impiegato per l'esecuzione del processo e tutte le relative riparazioni per terminare. Questo campo è impostato solo per le esecuzioni di processi multitask e non per le esecuzioni di attività. La durata di un'esecuzione di un'attività è la somma disetup_duration , execution_duration e .cleanup_duration |
trigger |
TriggerType | Tipo di trigger che ha attivato l'esecuzione. |
creator_user_name |
STRING |
Nome utente autore. Questo campo non verrà incluso nella risposta se l'utente è stato eliminato |
run_page_url |
STRING |
URL della pagina dei dettagli dell'esecuzione. |
Esegue l'esportazione
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/export |
GET |
Esportare e recuperare l'attività di esecuzione del processo.
Nota
Solo le esecuzioni di notebook possono essere esportate in formato HTML. L'esportazione di esecuzioni di altri tipi avrà esito negativo.
Esempio
Richiedi
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .
Oppure:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<run-id>
con l'ID dell'esecuzione, ad esempio123
.
Questo esempio usa un file .netrc e jq.
Response
{
"views": [ {
"content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
"name": "my-notebook",
"type": "NOTEBOOK"
} ]
}
Per estrarre il notebook HTML dalla risposta JSON, scaricare ed eseguire questo script Python.
Nota
Il corpo del notebook nell'oggetto __DATABRICKS_NOTEBOOK_MODEL
è codificato.
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
Identificatore canonico per l'esecuzione. Campo obbligatorio. |
views_to_export |
ViewsToExport | Visualizzazioni da esportare (CODE, DASHBOARDS o ALL). Il valore predefinito è CODE. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
views |
Matrice di ViewItem | Contenuto esportato in formato HTML (uno per ogni elemento di visualizzazione). |
Esecuzioni annullate
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/cancel |
POST |
Annullare l'esecuzione di un processo. Poiché l'esecuzione viene annullata in modo asincrono, l'esecuzione potrebbe essere ancora in esecuzione al termine della richiesta. L'esecuzione verrà terminata a breve. Se l'esecuzione è già in un terminale life_cycle_state
, questo metodo è no-op.
Questo endpoint convalida che il run_id
parametro è valido e per i parametri non validi restituisce il codice di stato HTTP 400.
Esempio
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<run-id>
con l'ID dell'esecuzione, ad esempio123
.
In questo esempio viene usato un file .netrc .
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
Identificatore canonico dell'esecuzione da annullare. Campo obbligatorio. |
Esecuzioni annullate tutte
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/cancel-all |
POST |
Annullare tutte le esecuzioni attive di un processo. Poiché l'esecuzione viene annullata in modo asincrono, non impedisce l'avvio di nuove esecuzioni.
Questo endpoint convalida che il job_id
parametro è valido e per i parametri non validi restituisce il codice di stato HTTP 400.
Esempio
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<job-id>
con l'ID del processo, ad esempio123
.
In questo esempio viene usato un file .netrc .
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo di cui annullare tutte le esecuzioni. Campo obbligatorio. |
Le esecuzioni ottengono l'output
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/get-output |
GET |
Recuperare l'output e i metadati di una singola esecuzione di un'attività. Quando un'attività notebook restituisce un valore tramite la chiamata dbutils.notebook.exit(), è possibile usare questo endpoint per recuperare tale valore. Azure Databricks limita questa API per restituire i primi 5 MB dell'output. Per restituire un risultato più ampio, è possibile archiviare i risultati dei processi in un servizio di archiviazione cloud.
Questo endpoint convalida che il run_id
parametro è valido e per i parametri non validi restituisce il codice di stato HTTP 400.
Le esecuzioni vengono rimosse automaticamente dopo 60 giorni. Se si desidera farvi riferimento oltre 60 giorni, è consigliabile salvare i risultati di esecuzione precedenti prima della scadenza. Per esportare usando l'interfaccia utente, vedere Esportare i risultati dell'esecuzione del processo. Per esportare usando l'API Processi, vedere Esportazione di esecuzioni.
Esempio
Richiedi
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .
Oppure:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<run-id>
con l'ID dell'esecuzione, ad esempio123
.
Questo esempio usa un file .netrc e jq.
Response
{
"metadata": {
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
},
"notebook_output": {
"result": "the maybe truncated string passed to dbutils.notebook.exit()"
}
}
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
Identificatore canonico per l'esecuzione. Per un processo con attività mulitple, si tratta dell'esecuzione run_id di un'attività. Vedere Esecuzioni ottenere l'output. Campo obbligatorio. |
Struttura della risposta
Nome campo | Tipo | Descrizione |
---|---|---|
notebook_output O error |
NotebookOutput OR STRING |
Se notebook_output, l'output di un'attività del notebook, se disponibile. Attività del notebook che termina (correttamente o con un errore) senza chiamaredbutils.notebook.exit() viene considerato un output vuoto. Questo campo verrà impostato, ma il valore del risultato sarà vuoto.In caso di errore, viene visualizzato un messaggio di errore che indica il motivo per cui l'output non è disponibile. Il messaggio non è strutturato e il formato esatto è soggetto a modifiche. |
metadata |
Esegui | Tutti i dettagli dell'esecuzione, ad eccezione del relativo output. |
Esegue l'eliminazione
Endpoint | Metodo HTTP |
---|---|
2.0/jobs/runs/delete |
POST |
Eliminare un'esecuzione non attiva. Restituisce un errore se l'esecuzione è attiva.
Esempio
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'
Sostituzione:
<databricks-instance>
con il nome dell'istanza dell'area di lavoro di Azure Databricks, ad esempioadb-1234567890123456.7.azuredatabricks.net
.<run-id>
con l'ID dell'esecuzione, ad esempio123
.
In questo esempio viene usato un file .netrc .
Struttura della richiesta
Nome campo | Tipo | Descrizione |
---|---|---|
run_id |
INT64 |
Identificatore canonico dell'esecuzione per cui recuperare i metadati. |
Strutture di dati
Contenuto della sezione:
- ABFSS Archiviazione Info
- Scalabilità automatica
- AzureAttributes
- AzureAvailability
- ClusterInstance
- ClusterLogConf
- ClusterSpec
- ClusterTag
- CronSchedule
- Dbfs Archiviazione Info
- File Archiviazione Info
- InitScriptInfo
- Mansione
- JobEmailNotifications
- JobNotification Impostazioni
- Processo Impostazioni
- JobTask
- JobsHealthRule
- JobsHealthRules
- Libreria
- MavenLibrary
- NewCluster
- NotebookOutput
- NotebookTask
- ParamPair
- PipelineTask
- PythonPyPiLibrary
- RCranLibrary
- Esegui
- RunJobTask
- RunLifeCycleState
- RunParameters
- RunResultState
- RunState
- SparkConfPair
- SparkEnvPair
- SparkJarTask
- SparkPythonTask
- SparkSubmitTask
- TriggerType
- ViewItem
- ViewType
- ViewsToExport
- Webhook
- WebhookNotifications
- Area di lavoro Archiviazione Info
ABFSS Archiviazione Info
Informazioni sull'archiviazione di Azure Data Lake Archiviazione (ADLS).
Nome campo | Tipo | Descrizione |
---|---|---|
destination |
STRING |
Destinazione file. Esempio: abfss://... |
Scalabilità automatica
Intervallo che definisce il numero minimo e massimo di ruoli di lavoro del cluster.
Nome campo | Tipo | Descrizione |
---|---|---|
min_workers |
INT32 |
Numero minimo di ruoli di lavoro a cui il cluster può ridurre le prestazioni quando è sottoutilizzato. È anche il numero iniziale di ruoli di lavoro che il cluster avrà dopo la creazione. |
max_workers |
INT32 |
Numero massimo di ruoli di lavoro a cui il cluster può aumentare le prestazioni durante l'overload. max_workers deve essere strettamente maggiore di min_workers. |
AzureAttributes
Attributi impostati durante la creazione del cluster correlati ad Azure.
Nome campo | Tipo | Descrizione |
---|---|---|
first_on_demand |
INT32 |
I primi first_on_demand nodi del cluster verranno posizionati su istanze su richiesta. Questo valore deve essere maggiore di 0 oppure la convalida della creazione del cluster non riesce. Se questo valore è maggiore o uguale alla dimensione corrente del cluster, tutti i nodi verranno posizionati su istanze su richiesta. Se questo valore è minore delle dimensioni correnti del cluster, first_on_demand i nodi verranno posizionati su istanze su richiesta e il resto verrà inserito nelle istanze di disponibilità. Questo valore non influisce sulle dimensioni del cluster e non può essere modificato per tutta la durata di un cluster. |
availability |
AzureAvailability | Tipo di disponibilità usato per tutti i nodi successivi oltre first_on_demand quelli. |
spot_bid_max_price |
DOUBLE |
Prezzo massimo dell'offerta usato per le istanze spot di Azure. È possibile impostare questo valore su maggiore o uguale al prezzo spot corrente. È anche possibile impostare questa opzione su -1 (impostazione predefinita), che specifica che l'istanza non può essere rimossa in base al prezzo. Il prezzo per l'istanza sarà il prezzo corrente per le istanze spot o il prezzo per un'istanza standard. È possibile visualizzare i prezzi cronologici e le tariffe di rimozione nel portale di Azure. |
AzureAvailability
Comportamento del tipo di disponibilità dell'istanza di Azure.
Tipo | Descrizione |
---|---|
SPOT_AZURE |
Usare istanze spot. |
ON_DEMAND_AZURE |
Usare istanze su richiesta. |
SPOT_WITH_FALLBACK_AZURE |
Usare preferibilmente istanze spot, ma eseguire il fallback alle istanze on demand se non è possibile acquisire istanze spot, ad esempio se i prezzi spot di Azure sono troppo elevati o fuori quota. Non si applica alla disponibilità del pool. |
ClusterInstance
Identificatori per il cluster e il contesto Spark usati da un'esecuzione. Questi due valori identificano insieme un contesto di esecuzione in tutto il tempo.
Nome campo | Tipo | Descrizione |
---|---|---|
cluster_id |
STRING |
Identificatore canonico per il cluster usato da un'esecuzione. Questo campo è sempre disponibile per l'esecuzione in cluster esistenti. Per l'esecuzione in nuovi cluster, diventa disponibile dopo la creazione del cluster. Questo valore può essere usato per visualizzare i log passando a /#setting/sparkui/$cluster_id/driver-logs . I log continueranno a essere disponibili al termine dell'esecuzione.La risposta non includerà questo campo se l'identificatore non è ancora disponibile. |
spark_context_id |
STRING |
Identificatore canonico per il contesto Spark usato da un'esecuzione. Questo campo verrà compilato dopo l'inizio dell'esecuzione. Questo valore può essere usato per visualizzare l'interfaccia utente di Spark passando a /#setting/sparkui/$cluster_id/$spark_context_id . L'interfaccia utente di Spark continuerà a essere disponibile al termine dell'esecuzione.La risposta non includerà questo campo se l'identificatore non è ancora disponibile. |
ClusterLogConf
Percorso del log del cluster.
Nome campo | Tipo | Descrizione |
---|---|---|
dbfs |
Dbfs Archiviazione Info | Percorso DBFS del log del cluster. È necessario specificare la destinazione. ad esempio:{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
ClusterSpec
Importante
- Quando si esegue un processo in un nuovo cluster di processi, il processo viene considerato come un carico di lavoro di calcolo dei processi (automatizzato) soggetto ai prezzi di calcolo dei processi.
- Quando si esegue un processo in un cluster all-purpose esistente, viene considerato come un carico di lavoro di calcolo all-purpose (interattivo) soggetto ai prezzi di calcolo all-purpose.
Nome campo | Tipo | Descrizione |
---|---|---|
existing_cluster_id O new_cluster |
STRING OR NewCluster |
Se existing_cluster_id, l'ID di un cluster esistente che verrà usato per tutte le esecuzioni di questo processo. Quando si eseguono processi in un cluster esistente, potrebbe essere necessario riavviare manualmente il cluster se smette di rispondere. È consigliabile eseguire processi in nuovi cluster per una maggiore affidabilità. Se new_cluster, una descrizione di un cluster che verrà creato per ogni esecuzione. Se si specifica pipelineTask, questo campo può essere vuoto. |
libraries |
Matrice di librerie | Elenco facoltativo di librerie da installare nel cluster che eseguirà il processo. Il valore predefinito è un elenco vuoto. |
ClusterTag
Definizione di tag del cluster.
Tipo | Descrizione |
---|---|
STRING |
Chiave del tag. La chiave deve: * Lunghezza compresa tra 1 e 512 caratteri * Non contenere alcun carattere <>%*&+?\\/ * Non iniziare con azure , microsoft o windows |
STRING |
Valore del tag. La lunghezza del valore deve essere minore o uguale a 256 caratteri UTF-8. |
CronSchedule
Nome campo | Tipo | Descrizione |
---|---|---|
quartz_cron_expression |
STRING |
Espressione Cron che usa la sintassi Di Quarzi che descrive la pianificazione per un processo. Per informazioni dettagliate, vedere Trigger Cron. Campo obbligatorio. |
timezone_id |
STRING |
ID fuso orario Java. La pianificazione per un processo verrà risolta in relazione a questo fuso orario. Per informazioni dettagliate, vedere Fuso orario Java. Campo obbligatorio. |
pause_status |
STRING |
Indica se la pianificazione è sospesa o meno. "PAU edizione Standard D" o "UNPAU edizione Standard D". |
Dbfs Archiviazione Info
Informazioni sull'archiviazione DBFS.
Nome campo | Tipo | Descrizione |
---|---|---|
destination |
STRING |
Destinazione DBFS. Esempio: dbfs:/my/path |
File Archiviazione Info
Informazioni sull'archiviazione file.
Nota
Questo tipo di percorso è disponibile solo per i cluster configurati usando Databricks Container Services.
Nome campo | Tipo | Descrizione |
---|---|---|
destination |
STRING |
Destinazione file. Esempio: file:/my/file.sh |
InitScriptInfo
Percorso di uno script init.
Per istruzioni sull'uso di script init con Databricks Container Services, vedere Usare uno script init.
Nota
Il tipo di archiviazione file (nome campo: file
) è disponibile solo per i cluster configurati tramite Databricks Container Services. Vedere File Archiviazione Info.
Nome campo | Tipo | Descrizione |
---|---|---|
workspace Odbfs (deprecato)OPPURE abfss |
Area di lavoro Archiviazione Info Dbfs Archiviazione Info (deprecato) ABFSS Archiviazione Info |
Posizione dell'area di lavoro dello script init. È necessario specificare la destinazione. ad esempio:{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (Deprecato) Percorso DBFS dello script init. È necessario specificare la destinazione. ad esempio: { "dbfs" : { "destination" : "dbfs:/home/init_script" } } Percorso di azure Data Lake Archiviazione (ADLS) dello script init. È necessario specificare la destinazione. Ad esempio, { "abfss": { "destination" : "abfss://..." } } |
Lavoro
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico per questo processo. |
creator_user_name |
STRING |
Nome utente autore. Questo campo non verrà incluso nella risposta se l'utente è già stato eliminato. |
run_as |
STRING |
Nome utente che verrà eseguito il processo. run_as è basato sulle impostazioni del processo corrente e viene impostato sull'autore del processo se il controllo di accesso al processo è disabilitato o l'autorizzazione is_owner se il controllo di accesso al processo è abilitato. |
settings |
Processo Impostazioni | Impostazioni per questo processo e tutte le relative esecuzioni. Queste impostazioni possono essere aggiornate usando il resetJob metodo . |
created_time |
INT64 |
Ora in cui questo processo è stato creato in millisecondi di periodo (millisecondi dal 1/1/1970 UTC). |
JobEmailNotifications
Importante
I campi on_start, on_success e on_failure accettano solo caratteri latini (set di caratteri ASCII). Se si usano caratteri non ASCII, verrà restituito un errore. Esempi di caratteri non validi non ASCII sono cinesi, kanji giapponesi ed emoji.
Nome campo | Tipo | Descrizione |
---|---|---|
on_start |
Matrice di STRING . |
Elenco di indirizzi di posta elettronica per ricevere una notifica all'inizio di un'esecuzione. Se non specificato durante la creazione, la reimpostazione o l'aggiornamento del processo, l'elenco è vuoto e le notifiche non vengono inviate. |
on_success |
Matrice di STRING . |
Elenco di indirizzi di posta elettronica per ricevere una notifica al completamento di un'esecuzione. Un'esecuzione viene considerata completata correttamente se termina con e TERMINATED life_cycle_state .SUCCESSFUL result_state Se non specificato durante la creazione, la reimpostazione o l'aggiornamento del processo, l'elenco è vuoto e le notifiche non vengono inviate. |
on_failure |
Matrice di STRING . |
Elenco di indirizzi di posta elettronica da notificare quando un'esecuzione non viene completata correttamente. Un'esecuzione viene considerata completata in modo non riuscito se termina con un INTERNAL_ERROR life_cycle_state o un SKIPPED result_state , FAILED o TIMED_OUT . Se non viene specificato durante la creazione, la reimpostazione o l'aggiornamento dell'elenco è vuoto e le notifiche non vengono inviate. |
on_duration_warning_threshold_exceeded |
Matrice di STRING . |
Un elenco di indirizzi di posta elettronica da notificare quando la durata di un'esecuzione supera la soglia specificata per la RUN_DURATION_SECONDS metrica nel health campo. Se non viene specificata alcuna regola per la RUN_DURATION_SECONDS metrica nel health campo per il processo, le notifiche non vengono inviate. |
no_alert_for_skipped_runs |
BOOL |
Se true, non inviare messaggi di posta elettronica ai destinatari specificati in on_failure se l'esecuzione viene ignorata. |
Nome campo | Tipo | Descrizione |
---|---|---|
on_start |
Matrice di webhook | Elenco facoltativo di destinazioni di sistema per ricevere una notifica all'avvio di un'esecuzione. Se non specificato durante la creazione, la reimpostazione o l'aggiornamento del processo, l'elenco è vuoto e le notifiche non vengono inviate. Per la on_start proprietà è possibile specificare un massimo di 3 destinazioni. |
on_success |
Matrice di webhook | Elenco facoltativo di destinazioni di sistema per ricevere una notifica quando un'esecuzione viene completata correttamente. Un'esecuzione viene considerata completata correttamente se termina con e TERMINATED life_cycle_state .SUCCESSFUL result_state Se non specificato durante la creazione, la reimpostazione o l'aggiornamento del processo, l'elenco è vuoto e le notifiche non vengono inviate. Per la on_success proprietà è possibile specificare un massimo di 3 destinazioni. |
on_failure |
Matrice di webhook | Elenco facoltativo di destinazioni di sistema per ricevere una notifica quando un'esecuzione viene completata in modo non riuscito. Un'esecuzione viene considerata completata in modo non riuscito se termina con un INTERNAL_ERROR life_cycle_state o un SKIPPED result_state , FAILED o TIMED_OUT . Se non viene specificato durante la creazione, la reimpostazione o l'aggiornamento dell'elenco è vuoto e le notifiche non vengono inviate. Per la on_failure proprietà è possibile specificare un massimo di 3 destinazioni. |
on_duration_warning_threshold_exceeded |
Matrice di webhook | Un elenco facoltativo di destinazioni di sistema da notificare quando la durata di un'esecuzione supera la soglia specificata per la RUN_DURATION_SECONDS metrica nel health campo. Per la on_duration_warning_threshold_exceeded proprietà è possibile specificare un massimo di 3 destinazioni. |
JobNotification Impostazioni
Nome campo | Tipo | Descrizione |
---|---|---|
no_alert_for_skipped_runs |
BOOL |
Se true, non inviare notifiche ai destinatari specificati in on_failure se l'esecuzione viene ignorata. |
no_alert_for_canceled_runs |
BOOL |
Se true, non inviare notifiche ai destinatari specificati in on_failure se l'esecuzione viene annullata. |
alert_on_last_attempt |
BOOL |
Se true, non inviare notifiche ai destinatari specificati in on_start per le esecuzioni ripetute e non inviare notifiche ai destinatari specificati in on_failure fino all'ultimo tentativo dell'esecuzione. |
Processo Impostazioni
Importante
- Quando si esegue un processo in un nuovo cluster di processi, il processo viene considerato come un carico di lavoro di calcolo dei processi (automatizzato) soggetto ai prezzi di calcolo dei processi.
- Quando si esegue un processo in un cluster all-purpose esistente, viene considerato come un carico di lavoro di calcolo all-purpose (interattivo) soggetto ai prezzi di calcolo all-purpose.
Impostazioni per un processo. Queste impostazioni possono essere aggiornate usando il resetJob
metodo .
Nome campo | Tipo | Descrizione |
---|---|---|
existing_cluster_id O new_cluster |
STRING OR NewCluster |
Se existing_cluster_id, l'ID di un cluster esistente che verrà usato per tutte le esecuzioni di questo processo. Quando si eseguono processi in un cluster esistente, potrebbe essere necessario riavviare manualmente il cluster se smette di rispondere. È consigliabile eseguire processi in nuovi cluster per una maggiore affidabilità. Se new_cluster, una descrizione di un cluster che verrà creato per ogni esecuzione. Se si specifica pipelineTask, questo campo può essere vuoto. |
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task O run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | Se notebook_task, indica che questo processo deve eseguire un notebook. Questo campo potrebbe non essere specificato in combinazione con spark_jar_task. Se spark_jar_task, indica che questo processo deve eseguire un file JAR. Se spark_python_task, indica che questo processo deve eseguire un file Python. Se spark_submit_task, indica che questo processo deve essere avviato dallo script di invio spark. Se pipeline_task, indica che questo processo deve eseguire una pipeline delta live tables. Se run_job_task, indica che questo processo deve eseguire un altro processo. |
name |
STRING |
Nome facoltativo per il processo. Il valore predefinito è Untitled . |
libraries |
Matrice di librerie | Elenco facoltativo di librerie da installare nel cluster che eseguirà il processo. Il valore predefinito è un elenco vuoto. |
email_notifications |
JobEmailNotifications | Un set facoltativo di indirizzi di posta elettronica che riceverà una notifica quando inizia o completa l'esecuzione del processo, nonché quando questo processo viene eliminato. Il comportamento predefinito consiste nel non inviare messaggi di posta elettronica. |
webhook_notifications |
WebhookNotifications | Set facoltativo di destinazioni di sistema per notificare quando l'esecuzione di questo processo inizia, completa o non riesce. |
notification_settings |
JobNotification Impostazioni | Impostazioni di notifica facoltative usate durante l'invio email_notifications di notifiche a ognuno di e webhook_notifications per questo processo. |
timeout_seconds |
INT32 |
Timeout facoltativo applicato a ogni esecuzione di questo processo. Il comportamento predefinito non prevede alcun timeout. |
max_retries |
INT32 |
Numero massimo facoltativo di tentativi di esecuzione non riuscita. Un'esecuzione viene considerata non riuscita se viene completata con il FAILED result_state oINTERNAL_ERROR life_cycle_state . Il valore -1 indica di riprovare per un periodo illimitato e il valore 0 significa non riprovare mai. Il comportamento predefinito consiste nel non riprovare mai. |
min_retry_interval_millis |
INT32 |
Intervallo minimo facoltativo in millisecondi tra i tentativi. Il comportamento predefinito è che le esecuzioni non riuscite vengono ritentate immediatamente. |
retry_on_timeout |
BOOL |
Un criterio facoltativo per specificare se ripetere un processo quando si verifica il timeout. Il comportamento predefinito consiste nel non ritentare il timeout. |
schedule |
CronSchedule | Pianificazione periodica facoltativa per questo processo. Il comportamento predefinito è che il processo verrà eseguito solo quando viene attivato facendo clic su "Esegui ora" nell'interfaccia utente dei processi o inviando una richiesta API arunNow . |
max_concurrent_runs |
INT32 |
Numero massimo facoltativo consentito di esecuzioni simultanee del processo. Impostare questo valore se si vuole essere in grado di eseguire più esecuzioni dello stesso processo contemporaneamente. Ciò è utile, ad esempio, se si attiva il processo in base a una pianificazione frequente e si vuole consentire le esecuzioni consecutive di sovrapporsi tra loro oppure se si desidera attivare più esecuzioni che differiscono in base ai relativi parametri di input. Questa impostazione influisce solo sulle nuove esecuzioni. Si supponga, ad esempio, che la concorrenza del processo sia 4 e che siano presenti 4 esecuzioni attive simultanee. Quindi l'impostazione della concorrenza su 3 non comporta l'interruzione delle esecuzioni attive. Tuttavia, da allora, le nuove esecuzioni verranno ignorate a meno che non siano presenti meno di 3 esecuzioni attive. Questo valore non può superare 1000. Se si imposta questo valore su 0, tutte le nuove esecuzioni verranno ignorate. Il comportamento predefinito consiste nell'consentire solo 1 esecuzione simultanea. |
health |
JobsHealthRules | Set facoltativo di regole di integrità definite per il processo. |
JobTask
Nome campo | Tipo | Descrizione |
---|---|---|
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task O run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | Se notebook_task, indica che questo processo deve eseguire un notebook. Questo campo potrebbe non essere specificato in combinazione con spark_jar_task. Se spark_jar_task, indica che questo processo deve eseguire un file JAR. Se spark_python_task, indica che questo processo deve eseguire un file Python. Se spark_submit_task, indica che questo processo deve essere avviato dallo script di invio spark. Se pipeline_task, indica che questo processo deve eseguire una pipeline delta live tables. Se run_job_task, indica che questo processo deve eseguire un altro processo. |
JobsHealthRule
Nome campo | Tipo | Descrizione |
---|---|---|
metric |
STRING |
Specifica la metrica di integrità valutata per una determinata regola di integrità. I valori validi sono RUN_DURATION_SECONDS . |
operator |
STRING |
Specifica l'operatore usato per confrontare il valore della metrica di integrità con la soglia specificata. I valori validi sono GREATER_THAN . |
value |
INT32 |
Specifica il valore soglia che la metrica di integrità deve soddisfare per essere conforme alla regola di integrità. |
JobsHealthRules
Nome campo | Tipo | Descrizione |
---|---|---|
rules |
Matrice di JobsHealthRule | Set facoltativo di regole di integrità che possono essere definite per un processo. |
Libreria
Nome campo | Tipo | Descrizione |
---|---|---|
jar OR egg OR whl ORpypi OR maven OR cran |
STRING OR STRING OR OR STRING PythonPyPiLibrary OR MavenLibrary OR RCranLibrary |
Se jar, URI del file JAR da installare. Sono supportati GLI URI di DBFS e ADLS (abfss ). Ad esempio: { "jar": "dbfs:/mnt/databricks/library.jar" } o{ "jar": "abfss://<container-path>/library.jar" } . Se si usa ADLS, verificare che il cluster abbia accesso in lettura alla libreria.Se uovo, URI dell'uovo da installare. Sono supportati GLI URI DBFS e ADLS. Ad esempio: { "egg": "dbfs:/my/egg" } o{ "egg": "abfss://<container-path>/egg" } .Se whl, URI dell'oggetto wheel o compresso wheels da installare. Sono supportati GLI URI DBFS e ADLS. Ad esempio: { "whl": "dbfs:/my/whl" } o{ "whl": "abfss://<container-path>/whl" } . Se si usa ADLS, verificare che il cluster abbia accesso in lettura alla libreria. Inoltre, il wheel nome del file deve usare la convenzione corretta. Se è necessario installare compresso wheels , il suffisso del nome file deve essere .wheelhouse.zip .Se pypi, specifica di una libreria PyPI da installare. Specificare il repo campo è facoltativo e, se non specificato, viene usato l'indice pip predefinito. Ad esempio:{ "package": "simplejson", "repo": "https://my-repo.com" } Se maven, specifica di una libreria Maven da installare. Ad esempio: { "coordinates": "org.jsoup:jsoup:1.7.2" } Se cran, specifica di una libreria CRAN da installare. |
MavenLibrary
Nome campo | Tipo | Descrizione |
---|---|---|
coordinates |
STRING |
Coordinate Maven di tipo Gradle. Ad esempio: org.jsoup:jsoup:1.7.2 . Campo obbligatorio. |
repo |
STRING |
Repository Maven da cui installare il pacchetto Maven. Se omesso, vengono cercati sia il repository centrale Maven che i pacchetti Spark. |
exclusions |
Matrice di STRING . |
Elenco delle dipendenze da escludere. Ad esempio: ["slf4j:slf4j", "*:hadoop-client"] .Esclusioni delle dipendenze Maven: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html. |
NewCluster
Nome campo | Tipo | Descrizione |
---|---|---|
num_workers O autoscale |
INT32 OR AutoScale |
Se num_workers, numero di nodi di lavoro che il cluster deve avere. Un cluster ha un driver Spark e num_workers executor per un totale di num_workers + 1 nodi Spark. Nota: quando si leggono le proprietà di un cluster, questo campo riflette il numero desiderato di ruoli di lavoro anziché il numero corrente effettivo di ruoli di lavoro. Ad esempio, se un cluster viene ridimensionato da 5 a 10 ruoli di lavoro, questo campo verrà immediatamente aggiornato in modo da riflettere le dimensioni di destinazione di 10 ruoli di lavoro, mentre i ruoli di lavoro elencati in spark_info aumentano gradualmente da 5 a 10 man mano che viene effettuato il provisioning dei nuovi nodi. Se la scalabilità automatica, i parametri necessari per ridimensionare automaticamente i cluster in base al carico. |
spark_version |
STRING |
Versione Spark del cluster. È possibile recuperare un elenco delle versioni di Spark disponibili usando la chiamata GET 2.0/clusters/spark-versions . Campo obbligatorio. |
spark_conf |
SparkConfPair | Oggetto contenente un set di coppie chiave-valore di configurazione Spark specificate dall'utente facoltative. È anche possibile passare una stringa di opzioni JVM aggiuntive al driver e agli executor tramitespark.driver.extraJavaOptions e spark.executor.extraJavaOptions rispettivamente.File confs Spark di esempio: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} oppure{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
Questo campo codifica, con un solo valore, le risorse disponibili in ognuno dei nodi Spark del cluster. Ad esempio, è possibile effettuare il provisioning e ottimizzare i nodi Spark per carichi di lavoro a elevato utilizzo di memoria o calcolo. È possibile recuperare un elenco di tipi di nodo disponibili usando la chiamata GET 2.0/clusters/list-node-types . Questo campo, il instance_pool_id campo o un criterio del cluster che specifica un ID del tipo di nodo o un ID pool di istanze, è obbligatorio. |
driver_node_type_id |
STRING |
Tipo di nodo del driver Spark. Questo campo è facoltativo; se non è impostato, il tipo di nodo del driver viene impostato sullo stesso valore node_type_id definito in precedenza. |
custom_tags |
ClusterTag | Oggetto contenente un set di tag per le risorse del cluster. Databricks contrassegna tutte le risorse del cluster (ad esempio le macchine virtuali) con questi tag oltre a default_tags. Nota: * I tag non sono supportati nei tipi di nodo legacy, ad esempio ottimizzati per il calcolo e ottimizzati per la memoria * Databricks consente al massimo 45 tag personalizzati |
cluster_log_conf |
ClusterLogConf | Configurazione per il recapito dei log spark a una destinazione di archiviazione a lungo termine. È possibile specificare una sola destinazione per un cluster. Se viene specificato il conf, i log verranno recapitati alla destinazione ogni 5 mins . La destinazione dei log del driver è <destination>/<cluster-id>/driver , mentre la destinazione dei log dell'executor è <destination>/<cluster-id>/executor . |
init_scripts |
Matrice di InitScriptInfo | Configurazione per l'archiviazione di script init. È possibile specificare un numero qualsiasi di script. Gli script vengono eseguiti in sequenza nell'ordine specificato. Se cluster_log_conf viene specificato, i log di script init vengono inviati a<destination>/<cluster-id>/init_scripts . |
spark_env_vars |
SparkEnvPair | Oggetto contenente un set di coppie chiave-valore della variabile di ambiente specificate dall'utente facoltative. La coppia chiave-valore del modulo (X,Y) viene esportata così come è (ad esempio,export X='Y' ) durante l'avvio del conducente e dei lavoratori.Per specificare un set aggiuntivo di SPARK_DAEMON_JAVA_OPTS , è consigliabile aggiungerli a $SPARK_DAEMON_JAVA_OPTS come illustrato nell'esempio seguente. In questo modo vengono incluse anche tutte le variabili di ambiente gestite di Databricks predefinite.Variabili di ambiente Spark di esempio: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} oppure{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
enable_elastic_disk |
BOOL |
Scalabilità automatica Archiviazione locale: se abilitata, questo cluster acquisisce in modo dinamico spazio su disco aggiuntivo quando i ruoli di lavoro Spark sono in esecuzione insufficiente nello spazio su disco. Per informazioni dettagliate, vedere Abilitare la scalabilità automatica dell'archiviazione locale. |
driver_instance_pool_id |
STRING |
ID facoltativo del pool di istanze da usare per il nodo driver. È inoltre necessario specificare instance_pool_id . Per informazioni dettagliate, vedere l'API Pool di istanze. |
instance_pool_id |
STRING |
ID facoltativo del pool di istanze da usare per i nodi del cluster. Se driver_instance_pool_id è presente,instance_pool_id viene usato solo per i nodi di lavoro. In caso contrario, viene usato sia per il nodo del driver che per i nodi di lavoro. Per informazioni dettagliate, vedere l'API Pool di istanze. |
NotebookOutput
Nome campo | Tipo | Descrizione |
---|---|---|
result |
STRING |
Valore passato a dbutils.notebook.exit(). Azure Databricks limita questa API per restituire i primi 1 MB del valore. Per ottenere un risultato più ampio, il processo può archiviare i risultati in un servizio di archiviazione cloud. Questo campo sarà assente se dbutils.notebook.exit() non è mai stato chiamato. |
truncated |
BOOLEAN |
Indica se il risultato è stato troncato. |
NotebookTask
Tutte le celle di output sono soggette alle dimensioni di 8 MB. Se l'output di una cella ha dimensioni maggiori, il resto dell'esecuzione verrà annullato e l'esecuzione verrà contrassegnata come non riuscita. In tal caso, anche alcuni output del contenuto di altre celle potrebbero non essere presenti.
Se è necessario aiutare a trovare la cella che supera il limite, eseguire il notebook in un cluster all-purpose e usare questa tecnica di salvataggio automatico del notebook.
Nome campo | Tipo | Descrizione |
---|---|---|
notebook_path |
STRING |
Percorso assoluto del notebook da eseguire nell'area di lavoro di Azure Databricks. Questo percorso deve iniziare con una barra. Campo obbligatorio. |
revision_timestamp |
LONG |
Timestamp della revisione del notebook. |
base_parameters |
Mappa di ParamPair | Parametri di base da usare per ogni esecuzione di questo processo. Se l'esecuzione viene avviata da una chiamata a run-now con i parametri specificati, verranno unite le due mappe di parametri. Se la stessa chiave viene specificata in base_parameters e in run-now , verrà usato il valore da run-now .Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. Se il notebook accetta un parametro non specificato nei parametri del base_parameters processo o di run-now override, verrà usato il valore predefinito del notebook.Recuperare questi parametri in un notebook usando dbutils.widgets.get. |
ParamPair
Parametri basati su nomi per i processi che eseguono attività del notebook.
Importante
I campi in questa struttura di dati accettano solo caratteri latini (set di caratteri ASCII). Se si usano caratteri non ASCII, verrà restituito un errore. Esempi di caratteri non validi non ASCII sono cinesi, kanji giapponesi ed emoji.
Tipo | Descrizione |
---|---|
STRING |
Nome del parametro. Passare a dbutils.widgets.get per recuperare il valore. |
STRING |
Valore del parametro. |
PipelineTask
Nome campo | Tipo | Descrizione |
---|---|---|
pipeline_id |
STRING |
Nome completo dell'attività della pipeline Delta Live Tables da eseguire. |
PythonPyPiLibrary
Nome campo | Tipo | Descrizione |
---|---|---|
package |
STRING |
Nome del pacchetto PyPI da installare. È supportata anche una specifica di versione esatta facoltativa. Esempi: simplejson e simplejson==3.8.0 . Campo obbligatorio. |
repo |
STRING |
Repository in cui è possibile trovare il pacchetto. Se non specificato, viene usato l'indice pip predefinito. |
RCranLibrary
Nome campo | Tipo | Descrizione |
---|---|---|
package |
STRING |
Nome del pacchetto CRAN da installare. Campo obbligatorio. |
repo |
STRING |
Repository in cui è possibile trovare il pacchetto. Se non specificato, viene utilizzato il repository CRAN predefinito. |
Correre
Tutte le informazioni su un'esecuzione ad eccezione del relativo output. L'output può essere recuperato separatamente con il getRunOutput
metodo .
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT64 |
Identificatore canonico del processo che contiene questa esecuzione. |
run_id |
INT64 |
Identificatore canonico dell'esecuzione. Questo ID è univoco in tutte le esecuzioni di tutti i processi. |
creator_user_name |
STRING |
Nome utente autore. Questo campo non verrà incluso nella risposta se l'utente è già stato eliminato. |
number_in_job |
INT64 |
Numero di sequenza di questa esecuzione tra tutte le esecuzioni del processo. Questo valore inizia da 1. |
original_attempt_run_id |
INT64 |
Se questa esecuzione è un nuovo tentativo di esecuzione precedente, questo campo contiene il run_id del tentativo originale; in caso contrario, corrisponde al run_id. |
state |
RunState | Stato del risultato e del ciclo di vita dell'esecuzione. |
schedule |
CronSchedule | Pianificazione cron che ha attivato questa esecuzione se è stata attivata dall'utilità di pianificazione periodica. |
task |
JobTask | Attività eseguita dall'esecuzione, se presente. |
cluster_spec |
ClusterSpec | Snapshot della specifica del cluster del processo al momento della creazione di questa esecuzione. |
cluster_instance |
ClusterInstance | Cluster usato per questa esecuzione. Se l'esecuzione viene specificata per l'uso di un nuovo cluster, questo campo verrà impostato dopo che il servizio Processi ha richiesto un cluster per l'esecuzione. |
overriding_parameters |
RunParameters | Parametri utilizzati per questa esecuzione. |
start_time |
INT64 |
Ora in cui questa esecuzione è stata avviata in millisecondi di periodo (millisecondi dal 1/1/1970 UTC). Questo potrebbe non essere il momento in cui l'attività del processo inizia l'esecuzione, ad esempio se il processo è pianificato per l'esecuzione in un nuovo cluster, è il momento in cui viene eseguita la chiamata di creazione del cluster. |
setup_duration |
INT64 |
Tempo necessario per configurare il cluster in millisecondi. Per le esecuzioni eseguite in nuovi cluster questo è il tempo di creazione del cluster, per le esecuzioni eseguite in cluster esistenti questa volta dovrebbero essere molto brevi. |
execution_duration |
INT64 |
Tempo in millisecondi impiegato per eseguire i comandi nel file JAR o nel notebook fino a quando non vengono completati, non riusciti, scaduti, sono stati annullati o si è verificato un errore imprevisto. |
cleanup_duration |
INT64 |
Tempo in millisecondi necessario per terminare il cluster e pulire gli elementi associati. La durata totale dell'esecuzione è la somma del setup_duration, del execution_duration e del cleanup_duration. |
end_time |
INT64 |
Ora in cui l'esecuzione è terminata in millisecondi di periodo (millisecondi dal 1/1/1970 UTC). Questo campo verrà impostato su 0 se il processo è ancora in esecuzione. |
trigger |
TriggerType | Tipo di trigger che ha attivato l'esecuzione. |
run_name |
STRING |
Nome facoltativo per l'esecuzione. Il valore predefinito è Untitled . La lunghezza massima consentita è di 4096 byte nella codifica UTF-8. |
run_page_url |
STRING |
URL della pagina dei dettagli dell'esecuzione. |
run_type |
STRING |
Tipo dell'esecuzione. * JOB_RUN - Normale esecuzione del processo. Esecuzione creata con Esegui ora.* WORKFLOW_RUN - Esecuzione del flusso di lavoro. Esecuzione creata con dbutils.notebook.run.* SUBMIT_RUN - Invia esecuzione. Esecuzione creata con Esegui ora. |
attempt_number |
INT32 |
Numero di sequenza di questo tentativo di esecuzione per un'esecuzione di processo attivata. Il tentativo iniziale di un'esecuzione ha un attempt_number pari a 0. Se il tentativo di esecuzione iniziale ha esito negativo e il processo ha un criterio di ripetizione attempt_number dei tentativi (max_retries > 0), le esecuzioni successive vengono create con un original_attempt_run_id ID del tentativo originale e un incremento . Le esecuzioni vengono ritentate solo fino a quando non hanno esito positivo e il valore massimo attempt_number corrisponde al max_retries valore per il processo. |
RunJobTask
Nome campo | Tipo | Descrizione |
---|---|---|
job_id |
INT32 |
Identificatore univoco del processo da eseguire. Campo obbligatorio. |
RunLifeCycleState
Stato del ciclo di vita di un'esecuzione. Le transizioni di stato consentite sono:
PENDING
- ->RUNNING
>TERMINATING
>TERMINATED
PENDING
->SKIPPED
PENDING
->INTERNAL_ERROR
RUNNING
->INTERNAL_ERROR
TERMINATING
->INTERNAL_ERROR
Stato | Descrizione |
---|---|
PENDING |
L'esecuzione è stata attivata. Se non è già presente un'esecuzione attiva dello stesso processo, il cluster e il contesto di esecuzione vengono preparati. Se è già presente un'esecuzione attiva dello stesso processo, l'esecuzione passerà immediatamente allo SKIPPED stato senza preparare alcuna risorsa. |
RUNNING |
L'attività di questa esecuzione viene eseguita. |
TERMINATING |
L'attività di questa esecuzione è stata completata e il contesto di esecuzione e il cluster vengono puliti. |
TERMINATED |
L'attività di questa esecuzione è stata completata e il contesto di esecuzione e cluster sono stati puliti. Questo stato è terminale. |
SKIPPED |
L'esecuzione è stata interrotta perché un'esecuzione precedente dello stesso processo era già attiva. Questo stato è terminale. |
INTERNAL_ERROR |
Stato eccezionale che indica un errore nel servizio Processi, ad esempio un errore di rete in un lungo periodo. Se un'esecuzione in un nuovo cluster termina nello INTERNAL_ERROR stato , il servizio Processi termina il cluster il prima possibile. Questo stato è terminale. |
RunParameters
Parametri per questa esecuzione. Nella richiesta deve essere specificata run-now
una sola jar_params, python_params
o notebook_params, a seconda del tipo di attività del processo.
I processi con l'attività SPARK JAR o l'attività Python accettano un elenco di parametri basati sulla posizione e i processi con le attività del notebook accettano una mappa dei valori chiave.
Nome campo | Tipo | Descrizione |
---|---|---|
jar_params |
Matrice di STRING . |
Elenco di parametri per i processi con attività JAR Spark, ad esempio "jar_params": ["john doe", "35"] . I parametri verranno usati per richiamare la funzione principale della classe principale specificata nell'attività SPARK JAR. Se non specificato in run-now , per impostazione predefinita verrà visualizzato un elenco vuoto. jar_params non può essere specificato in combinazione con notebook_params. La rappresentazione JSON di questo campo (ad esempio {"jar_params":["john doe","35"]} ) non può superare i 10.000 byte.Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. |
notebook_params |
Mappa di ParamPair | Mappa da chiavi a valori per i processi con attività notebook, ad esempio"notebook_params": {"name": "john doe", "age": "35"} . La mappa viene passata al notebook ed è accessibile tramite la funzione dbutils.widgets.get .Se non specificato in run-now , l'esecuzione attivata usa i parametri di base del processo.notebook_params non può essere specificato in combinazione con jar_params. Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. Rappresentazione JSON di questo campo (ad esempio, {"notebook_params":{"name":"john doe","age":"35"}} ) non può superare 10.000 byte. |
python_params |
Matrice di STRING . |
Elenco di parametri per i processi con attività Python, ad esempio "python_params": ["john doe", "35"] . I parametri vengono passati al file Python come parametri della riga di comando. Se specificato in run-now , sovrascriverà i parametri specificati nell'impostazione del processo. La rappresentazione JSON di questo campo (ad esempio {"python_params":["john doe","35"]} ) non può superare i 10.000 byte.Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. > [! IMPORTANTE] >> Questi parametri accettano solo caratteri latini (set di caratteri ASCII). > Se si usano caratteri non ASCII, verrà restituito un errore. Esempi di caratteri > non validi non ASCII sono cinesi, kanji giapponesi ed emoji. |
spark_submit_params |
Matrice di STRING . |
Elenco di parametri per i processi con attività di invio spark, ad esempio"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . I parametri vengono passati allo script spark-submit come parametri della riga di comando. Se specificato in run-now , sovrascriverà i parametri specificati nell'impostazione del processo. La rappresentazione JSON di questo campo (ad esempio {"python_params":["john doe","35"]} ) non può superare i 10.000 byte.Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. > [! IMPORTANTE] >> Questi parametri accettano solo caratteri latini (set di caratteri ASCII). > Se si usano caratteri non ASCII, verrà restituito un errore. Esempi di caratteri > non validi non ASCII sono cinesi, kanji giapponesi ed emoji. |
RunResultState
Stato del risultato dell'esecuzione.
- Se
life_cycle_state
=TERMINATED
: se l'esecuzione ha un'attività, il risultato è garantito che sia disponibile e indica il risultato dell'attività. - Se
life_cycle_state
=PENDING
,RUNNING
oSKIPPED
, lo stato del risultato non è disponibile. - Se
life_cycle_state
=TERMINATING
o lifecyclestate =INTERNAL_ERROR
: lo stato del risultato è disponibile se l'esecuzione ha un'attività e ha gestito l'avvio.
Una volta disponibile, lo stato del risultato non cambia mai.
Stato | Descrizione |
---|---|
SUCCESS |
L'attività è stata completata correttamente. |
FAILED |
L'attività è stata completata con un errore. |
TIMEDOUT |
L'esecuzione è stata arrestata dopo aver raggiunto il timeout. |
CANCELED |
L'esecuzione è stata annullata alla richiesta dell'utente. |
RunState
Nome campo | Tipo | Descrizione |
---|---|---|
life_cycle_state |
RunLifeCycleState | Descrizione della posizione corrente di un'esecuzione nel ciclo di vita dell'esecuzione. Questo campo è sempre disponibile nella risposta. |
result_state |
RunResultState | Stato del risultato di un'esecuzione. Se non è disponibile, la risposta non includerà questo campo. Per informazioni dettagliate sulla disponibilità di result_state, vedere RunResultState . |
user_cancelled_or_timedout |
BOOLEAN |
Indica se un'esecuzione è stata annullata manualmente da un utente o dall'utilità di pianificazione perché si è verificato il timeout dell'esecuzione. |
state_message |
STRING |
Messaggio descrittivo per lo stato corrente. Questo campo non è strutturato e il formato esatto è soggetto a modifiche. |
SparkConfPair
Coppie chiave-valore di configurazione spark.
Tipo | Descrizione |
---|---|
STRING |
Nome della proprietà di configurazione. |
STRING |
Valore della proprietà di configurazione. |
SparkEnvPair
Coppie chiave-valore della variabile di ambiente Spark.
Importante
Quando si specificano variabili di ambiente in un cluster di processo, i campi di questa struttura di dati accettano solo caratteri latini (set di caratteri ASCII). Se si usano caratteri non ASCII, verrà restituito un errore. Esempi di caratteri non validi non ASCII sono cinesi, kanji giapponesi ed emoji.
Tipo | Descrizione |
---|---|
STRING |
Nome di una variabile di ambiente. |
STRING |
Valore della variabile di ambiente. |
SparkJarTask
Nome campo | Tipo | Descrizione |
---|---|---|
jar_uri |
STRING |
Deprecato dal 04/2016. In alternativa, specificare un jar oggetto tramite il libraries campo . Per un esempio, vedere Creare. |
main_class_name |
STRING |
Il nome completo della classe che contiene il metodo Main deve essere eseguito. Questa classe deve essere contenuta in un file JAR fornito come libreria. Il codice deve usare SparkContext.getOrCreate per ottenere un contesto Spark. In caso contrario, le esecuzioni del processo avranno esito negativo. |
parameters |
Matrice di STRING . |
Parametri passati al metodo main. Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. |
SparkPythonTask
Nome campo | Tipo | Descrizione |
---|---|---|
python_file |
STRING |
L'URI del file Python da eseguire. Sono supportati i percorsi DBFS. Campo obbligatorio. |
parameters |
Matrice di STRING . |
Parametri della riga di comando passati al file Python. Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. |
SparkSubmitTask
Importante
- È possibile richiamare le attività di invio di Spark solo in nuovi cluster.
- Nella specifica
libraries
new_cluster espark_conf
non sono supportati. Usare invece--jars
e--py-files
per aggiungere librerie Java e Python e--conf
per impostare la configurazione di Spark. master
,deploy-mode
eexecutor-cores
vengono configurati automaticamente da Azure Databricks. Non è possibile specificarli nei parametri.- Per impostazione predefinita, il processo di invio di Spark usa tutta la memoria disponibile (esclusa la memoria riservata per i servizi Azure Databricks). È possibile impostare e
--executor-memory
su--driver-memory
un valore più piccolo per lasciare spazio per l'utilizzo di off-heap. - Gli
--jars
argomenti ,--py-files
supportano--files
i percorsi DBFS.
Ad esempio, supponendo che il file JAR venga caricato in DBFS, è possibile eseguire SparkPi
impostando i parametri seguenti.
{
"parameters": [
"--class",
"org.apache.spark.examples.SparkPi",
"dbfs:/path/to/examples.jar",
"10"
]
}
Nome campo | Tipo | Descrizione |
---|---|---|
parameters |
Matrice di STRING . |
Parametri della riga di comando passati a spark submit. Usare Pass context about job runs into job tasks per impostare parametri contenenti informazioni sulle esecuzioni dei processi. |
TriggerType
Si tratta del tipo di trigger che possono generare un'esecuzione.
Tipo | Descrizione |
---|---|
PERIODIC |
Pianifica l'esecuzione periodica del trigger, ad esempio un'utilità di pianificazione cron. |
ONE_TIME |
Una sola volta i trigger che attivano una singola esecuzione. Ciò si verifica quando è stata attivata una singola esecuzione su richiesta tramite l'interfaccia utente o l'API. |
RETRY |
Indica un'esecuzione attivata come tentativo di esecuzione precedentemente non riuscita. Ciò si verifica quando si richiede di rieseguare il processo in caso di errori. |
ViewItem
Il contenuto esportato è in formato HTML. Ad esempio, se la visualizzazione da esportare è dashboard, viene restituita una stringa HTML per ogni dashboard.
Nome campo | Tipo | Descrizione |
---|---|---|
content |
STRING |
Contenuto della visualizzazione. |
name |
STRING |
Nome dell'elemento di visualizzazione. Nel caso della visualizzazione codice, il nome del notebook. Nel caso della visualizzazione dashboard, il nome del dashboard. |
type |
ViewType | Tipo dell'elemento di visualizzazione. |
ViewType
Tipo | Descrizione |
---|---|
NOTEBOOK |
Elemento della visualizzazione notebook. |
DASHBOARD |
Elemento della visualizzazione dashboard. |
ViewsToExport
Visualizzare per esportare: codice, tutti i dashboard o tutti.
Tipo | Descrizione |
---|---|
CODE |
Visualizzazione codice del notebook. |
DASHBOARDS |
Tutte le visualizzazioni del dashboard del notebook. |
ALL |
Tutte le visualizzazioni del notebook. |
Webhook
Nome campo | Tipo | Descrizione |
---|---|---|
id |
STRING |
Identificatore che fa riferimento a una destinazione di notifica di sistema. Campo obbligatorio. |
WebhookNotifications
Nome campo | Tipo | Descrizione |
---|---|---|
on_start |
Matrice di webhook | Elenco facoltativo di destinazioni di sistema per ricevere una notifica all'avvio di un'esecuzione. Se non specificato durante la creazione, la reimpostazione o l'aggiornamento del processo, l'elenco è vuoto e le notifiche non vengono inviate. Per la on_start proprietà è possibile specificare un massimo di 3 destinazioni. |
on_success |
Matrice di webhook | Elenco facoltativo di destinazioni di sistema per ricevere una notifica quando un'esecuzione viene completata correttamente. Un'esecuzione viene considerata completata correttamente se termina con e TERMINATED life_cycle_state .SUCCESSFUL result_state Se non specificato durante la creazione, la reimpostazione o l'aggiornamento del processo, l'elenco è vuoto e le notifiche non vengono inviate. Per la on_success proprietà è possibile specificare un massimo di 3 destinazioni. |
on_failure |
Matrice di webhook | Elenco facoltativo di destinazioni di sistema per ricevere una notifica quando un'esecuzione viene completata in modo non riuscito. Un'esecuzione viene considerata completata in modo non riuscito se termina con un INTERNAL_ERROR life_cycle_state o , SKIPPED FAILED o TIMED_OUT result_state . Se non viene specificato durante la creazione, la reimpostazione o l'aggiornamento dell'elenco è vuoto e le notifiche non vengono inviate. Per la on_failure proprietà è possibile specificare un massimo di 3 destinazioni. |
on_duration_warning_threshold_exceeded |
Matrice di webhook | Un elenco facoltativo di destinazioni di sistema da notificare quando la durata di un'esecuzione supera la soglia specificata per la RUN_DURATION_SECONDS metrica nel health campo. Per la on_duration_warning_threshold_exceeded proprietà è possibile specificare un massimo di 3 destinazioni. |
Area di lavoro Archiviazione Info
Informazioni sull'archiviazione dell'area di lavoro.
Nome campo | Tipo | Descrizione |
---|---|---|
destination |
STRING |
Destinazione file. Esempio: /Users/someone@domain.com/init_script.sh |
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per