Compartir a través de


Referencia de las tablas del sistema de trabajos

Nota

El esquema lakeflow anteriormente se conocía como workflow. El contenido de ambos esquemas es idéntico.

Este artículo es una referencia para las tablas del sistema lakeflow, que registran la actividad laboral en su cuenta. Estas tablas incluyen registros de todas las áreas de trabajo de la cuenta implementadas en la misma región de nube. Para ver los registros de otra región, debe ver las tablas de un área de trabajo implementada en esa región.

Requisitos

  • Para acceder a estas tablas del sistema, los usuarios deben:

Tablas de trabajos disponibles

Todas las tablas del sistema relacionadas con el trabajo residen en el system.lakeflow esquema. Actualmente, el esquema hospeda cuatro tablas:

Tabla Descripción Admite streaming Período de retención libre Incluye datos globales o regionales
jobs (versión preliminar pública) Realiza un seguimiento de todos los trabajos creados en la cuenta 365 días Regional
job_tasks (versión preliminar pública) Realiza un seguimiento de todas las tareas de trabajo que se ejecutan en la cuenta 365 días Regional
job_run_timeline (versión preliminar pública) Realiza un seguimiento de las ejecuciones del trabajo y los metadatos relacionados 365 días Regional
job_task_run_timeline (versión preliminar pública) Realiza un seguimiento de las ejecuciones de tareas de trabajo y los metadatos relacionados 365 días Regional
pipelines (versión preliminar pública) Realiza un seguimiento de todas las canalizaciones creadas en la cuenta 365 días Regional

Referencia detallada del esquema

En las secciones siguientes se proporcionan referencias de esquema para cada una de las tablas del sistema relacionadas con los trabajos.

Esquema de tabla de trabajos

La tabla jobs es una tabla de dimensiones que cambia lentamente (SCD2). Cuando cambia una fila, se emite una nueva fila, reemplazando lógicamente a la anterior.

Ruta de acceso de tabla: system.lakeflow.jobs

Nombre de la columna Tipo de datos Descripción Notas
account_id cuerda / cadena El identificador de la cuenta a la que pertenece este trabajo
workspace_id cuerda / cadena El identificador del área de trabajo a la que pertenece este trabajo
job_id cuerda / cadena Identificador del trabajo Solo único dentro de un único área de trabajo
name cuerda / cadena Nombre del trabajo proporcionado por el usuario
description cuerda / cadena Descripción proporcionada por el usuario del trabajo Este campo está vacío si tiene claves administradas por cliente configuradas.
No rellenado para las filas emitidas antes de finales de agosto de 2024
creator_id cuerda / cadena Identificador de la entidad de seguridad que creó el trabajo
tags mapa Etiquetas personalizadas proporcionadas por el usuario asociadas a este trabajo
change_time marca de tiempo Hora a la que se modificó por última vez el trabajo Zona horaria registrada como +00:00 (UTC)
delete_time marca de tiempo Hora a la que el usuario eliminó el trabajo Zona horaria registrada como +00:00 (UTC)
run_as cuerda / cadena El identificador del usuario o la entidad de servicio cuyos permisos se usan para la ejecución del trabajo

Ejemplo de consulta

-- Get the most recent version of a job
SELECT
  *,
  ROW_NUMBER() OVER(PARTITION BY workspace_id, job_id ORDER BY change_time DESC) as rn
FROM
  system.lakeflow.jobs QUALIFY rn=1

Esquema de tabla de tareas de trabajo

La tabla de tareas de trabajo es una tabla de dimensiones que cambia lentamente (SCD2). Cuando cambia una fila, se emite una nueva fila, reemplazando lógicamente a la anterior.

Ruta de acceso de tabla: system.lakeflow.job_tasks

Nombre de la columna Tipo de datos Descripción Notas
account_id cuerda / cadena El identificador de la cuenta a la que pertenece este trabajo
workspace_id cuerda / cadena El identificador del área de trabajo a la que pertenece este trabajo
job_id cuerda / cadena Identificador del trabajo Solo único dentro de un único área de trabajo
task_key cuerda / cadena Clave de referencia de una tarea en un trabajo Solo único dentro de un único trabajo
depends_on_keys matriz Claves de tarea de todas las dependencias ascendentes de esta tarea
change_time marca de tiempo Hora a la que se modificó por última vez la tarea Zona horaria registrada como +00:00 (UTC)
delete_time marca de tiempo Hora en que el usuario eliminó una tarea Zona horaria registrada como +00:00 (UTC)

Ejemplo de consulta

-- Get the most recent version of a job task
SELECT
  *,
  ROW_NUMBER() OVER(PARTITION BY workspace_id, job_id ORDER BY change_time DESC) as rn
FROM
  system.lakeflow.job_tasks QUALIFY rn=1

Esquema de tabla de escala de tiempo de ejecución de trabajo

La tabla de escala de tiempo de ejecución del trabajo es inmutable y se completa en el momento en que se genera.

Ruta de acceso de tabla: system.lakeflow.job_run_timeline

Nombre de la columna Tipo de datos Descripción Notas
account_id cuerda / cadena El identificador de la cuenta a la que pertenece este trabajo
workspace_id cuerda / cadena El identificador del área de trabajo a la que pertenece este trabajo
job_id cuerda / cadena Identificador del trabajo Esta clave solo es única dentro de un único área de trabajo.
run_id cuerda / cadena Identificador de la ejecución del trabajo
period_start_time marca de tiempo Hora de inicio de la ejecución o del período de tiempo La información de zona horaria se registra al final del valor con +00:00, que representa la hora UTC. Para más información sobre cómo Databricks segmenta ejecuciones largas en intervalos horarios, consulte la lógica de segmentación de escala de tiempo.
period_end_time marca de tiempo Hora de finalización de la ejecución o durante el período de tiempo La información de zona horaria se registra al final del valor con +00:00, que representa la hora UTC. Para más información sobre cómo Databricks segmenta ejecuciones largas en intervalos por hora, consulte la lógica de fragmentación temporal.
trigger_type cuerda / cadena Tipo de desencadenador que puede desencadenar una ejecución Para conocer los valores posibles, consulte Valores de tipo desencadenador.
run_type cuerda / cadena Tipo de ejecución de trabajo Para conocer los valores posibles, consulte Valores de tipo ejecución.
run_name cuerda / cadena Nombre de ejecución proporcionado por el usuario asociado a esta ejecución de trabajo
compute_ids matriz Matriz que contiene los identificadores de proceso del trabajo para la ejecución del trabajo primario Utilice para identificar el clúster de trabajos que los tipos de ejecución de WORKFLOW_RUN usan. Para obtener otra información de proceso, consulte la tabla job_task_run_timeline.
No rellenado para las filas emitidas antes de finales de agosto de 2024.
result_state cuerda / cadena Resultado de la ejecución del trabajo Para las ejecuciones de más de una hora que se dividen entre varias filas, esta columna solo se rellena en la fila que representa el final de la ejecución. Para ver los valores posibles, consulte Valores de estado de resultado.
termination_code cuerda / cadena Código de finalización de la ejecución del trabajo Para las ejecuciones de más de una hora que se dividen entre varias filas, esta columna solo se rellena en la fila que representa el final de la ejecución. Para conocer los valores posibles, consulte Valores de código de finalización.
No rellenado para las filas emitidas antes de finales de agosto de 2024.
job_parameters mapa Parámetros de nivel de trabajo usados en la ejecución del trabajo Las configuraciones en desuso de notebook_params no se incluyen en este campo.
No rellenado para las filas emitidas antes de finales de agosto de 2024.

Ejemplo de consulta

-- This query gets the daily job count for a workspace for the last 7 days:
SELECT
  workspace_id,
  COUNT(DISTINCT run_id) as job_count,
  to_date(period_start_time) as date
FROM system.lakeflow.job_run_timeline
WHERE
  period_start_time > CURRENT_TIMESTAMP() - INTERVAL 7 DAYS
GROUP BY ALL

-- This query returns the daily job count for a workspace for the last 7 days, distributed by the outcome of the job run.
SELECT
  workspace_id,
  COUNT(DISTINCT run_id) as job_count,
  result_state,
  to_date(period_start_time) as date
FROM system.lakeflow.job_run_timeline
WHERE
  period_start_time > CURRENT_TIMESTAMP() - INTERVAL 7 DAYS
  AND result_state IS NOT NULL
GROUP BY ALL

-- This query returns the average time of job runs, measured in seconds. The records are organized by job. A top 90 and a 95 percentile column show the average lengths of the job's longest runs.
with job_run_duration as (
    SELECT
        workspace_id,
        job_id,
        run_id,
        CAST(SUM(period_end_time - period_start_time) AS LONG) as duration
    FROM
        system.lakeflow.job_run_timeline
    WHERE
      period_start_time > CURRENT_TIMESTAMP() - INTERVAL 7 DAYS
    GROUP BY ALL
)
SELECT
    t1.workspace_id,
    t1.job_id,
    COUNT(DISTINCT t1.run_id) as runs,
    MEAN(t1.duration) as mean_seconds,
    AVG(t1.duration) as avg_seconds,
    PERCENTILE(t1.duration, 0.9) as p90_seconds,
    PERCENTILE(t1.duration, 0.95) as p95_seconds
FROM
    job_run_duration t1
GROUP BY ALL
ORDER BY mean_seconds DESC
LIMIT 100

-- This query provides a historical runtime for a specific job based on the `run_name` parameter. For the query to work, you must set the `run_name`.
SELECT
  workspace_id,
  run_id,
  SUM(period_end_time - period_start_time) as run_time
FROM system.lakeflow.job_run_timeline
WHERE
  run_type="SUBMIT_RUN"
  AND run_name = :run_name
  AND period_start_time > CURRENT_TIMESTAMP() - INTERVAL 60 DAYS
GROUP BY ALL

-- This query collects a list of retried job runs with the number of retries for each run.
with repaired_runs as (
    SELECT
    workspace_id, job_id, run_id, COUNT(*) - 1 as retries_count
    FROM system.lakeflow.job_run_timeline
    WHERE result_state IS NOT NULL
    GROUP BY ALL
    HAVING retries_count > 0
    )
SELECT
    *
FROM repaired_runs
ORDER BY retries_count DESC
    LIMIT 10;

Esquema de tabla de escala de tiempo de ejecución de tareas de trabajo

La tabla de escala de tiempo de ejecución de tareas del trabajo es inmutable y se completa en el momento en que se genera.

Ruta de acceso de tabla: system.lakeflow.job_task_run_timeline

Nombre de la columna Tipo de datos Descripción Notas
account_id cuerda / cadena El identificador de la cuenta a la que pertenece este trabajo
workspace_id cuerda / cadena El identificador del área de trabajo a la que pertenece este trabajo
job_id cuerda / cadena Identificador del trabajo Solo único dentro de un único área de trabajo
run_id cuerda / cadena Identificador de la ejecución de la tarea
job_run_id cuerda / cadena Identificador de la ejecución del trabajo No rellenado para las filas emitidas antes de finales de agosto de 2024
parent_run_id cuerda / cadena Identificador de la ejecución primaria No rellenado para las filas emitidas antes de finales de agosto de 2024
period_start_time marca de tiempo Hora de inicio de la tarea o del período de tiempo La información de zona horaria se registra al final del valor con +00:00, que representa la hora UTC. Para más información sobre cómo Databricks segmenta ejecuciones largas en intervalos horarios, consulte la lógica de segmentación de escala de tiempo .
period_end_time marca de tiempo Hora de finalización de la tarea o del período de tiempo La información de zona horaria se registra al final del valor con +00:00, que representa la hora UTC. Para más información sobre cómo Databricks segmenta ejecuciones largas en intervalos horarios, consulte la lógica de segmentación de escala de tiempo.
task_key cuerda / cadena Clave de referencia de una tarea en un trabajo Esta clave solo es única dentro de un único trabajo.
compute_ids matriz La matriz compute_ids contiene identificadores de clústeres de trabajos, clústeres interactivos y almacenes de SQL usados por la tarea de trabajo.
result_state cuerda / cadena Resultado de la ejecución de la tarea de trabajo En el caso de las ejecuciones de tareas de más de una hora que se dividen entre varias filas, esta columna solo se rellena en la fila que representa el final de la ejecución. Para ver los valores posibles, consulte Valores de estado de resultado.
termination_code cuerda / cadena Código de finalización de la ejecución de la tarea En el caso de las ejecuciones de tareas de más de una hora que se dividen entre varias filas, esta columna solo se rellena en la fila que representa el final de la ejecución. Para conocer los valores posibles, consulte Valores de código de finalización.
No rellenado para las filas emitidas antes de finales de agosto de 2024.

Esquema de tabla de canalizaciones

La tabla pipelines es una tabla de dimensiones que cambia lentamente (SCD2). Cuando cambia una fila, se emite una nueva fila, reemplazando lógicamente a la anterior.

Ruta de acceso de tabla: system.lakeflow.pipelines

Nombre de la columna Tipo de datos Descripción Notas
account_id cuerda / cadena El identificador de la cuenta a la que pertenece esta canalización
workspace_id cuerda / cadena El identificador del área de trabajo a la que pertenece esta canalización
pipeline_id cuerda / cadena El identificador de la canalización Solo único dentro de un único área de trabajo
pipeline_type cuerda / cadena Tipo de la canalización Para conocer los valores posibles, consulte Valores de tipo de canalización.
name cuerda / cadena Nombre proporcionado por el usuario de la canalización
created_by cuerda / cadena El correo electrónico del usuario o el identificador de la entidad de servicio que creó la canalización
run_as cuerda / cadena El correo electrónico del usuario o el identificador de la entidad de servicio cuyos permisos se utilizan para ejecutar la canalización.
tags mapa Etiquetas personalizadas proporcionadas por el usuario asociadas a este trabajo
settings struct Configuración de la canalización Consulte Configuración de canalización.
configuration mapa Configuración proporcionada por el usuario de la canalización
change_time marca de tiempo Hora a la que se modificó por última vez la canalización Zona horaria registrada como +00:00 (UTC)
delete_time marca de tiempo Hora en que el usuario eliminó la canalización Zona horaria registrada como +00:00 (UTC)

Ejemplo de consulta

-- Get the most recent version of a pipeline
SELECT
  *,
  ROW_NUMBER() OVER(PARTITION BY workspace_id, pipeline_id ORDER BY change_time DESC) as rn
FROM
  system.lakeflow.pipelines QUALIFY rn=1

-- Enrich billing logs with pipeline metadata
with latest_pipelines AS (
  SELECT
    *,
    ROW_NUMBER() OVER(PARTITION BY workspace_id, pipeline_id ORDER BY change_time DESC) as rn
  FROM
    system.lakeflow.pipelines QUALIFY rn=1
)
SELECT
  usage.*,
  pipelines.*
FROM system.billing.usage
LEFT JOIN latest_pipelines
  ON (usage.workspace_id = pipelines.workspace_id
    AND usage.usage_metadata.dlt_pipeline_id = pipelines.pipeline_id)
WHERE
  usage.usage_metadata.dlt_pipeline_id IS NOT NULL

Patrones de Combinación Comunes

En las secciones siguientes se proporcionan consultas de ejemplo que resaltan los patrones de combinación usados habitualmente para las tablas del sistema de trabajos.

Combinar los trabajos y las tablas de escala de tiempo de ejecución de trabajos

Enriquecer la ejecución del trabajo con un nombre de trabajo

with jobs as (
    SELECT
        *,
        ROW_NUMBER() OVER (PARTITION BY workspace_id, job_id ORDER BY change_time DESC) as rn
    FROM system.lakeflow.jobs QUALIFY rn=1
)
SELECT
    job_run_timeline.*
    jobs.name
FROM system.lakeflow.job_run_timeline
    LEFT JOIN jobs USING (workspace_id, job_id)

Combinar los trabajos y las tablas de escala de tiempo de ejecución de trabajos y uso

Enriquecer cada registro de facturación con metadatos de ejecución de trabajos

SELECT
    t1.*,
    t2.*
FROM system.billing.usage t1
    LEFT JOIN system.lakeflow.job_run_timeline t2
        ON t1.workspace_id = t2.workspace_id
            AND t1.usage_metadata.job_id = t2.job_id
            AND t1.usage_metadata.job_run_id = t2.run_id
            AND t1.usage_start_time >= date_trunc("Hour", t2.period_start_time)
            AND t1.usage_start_time < date_trunc("Hour", t2.period_end_time) + INTERVAL 1 HOUR
WHERE
    billing_origin_product="JOBS"

Calcular el costo por ejecución de un trabajo

Esta consulta se combina con la tabla del sistema billing.usage para calcular un costo por ejecución de trabajo.

with jobs_usage AS (
  SELECT
    *,
    usage_metadata.job_id,
    usage_metadata.job_run_id as run_id,
    identity_metadata.run_as as run_as
  FROM system.billing.usage
  WHERE billing_origin_product="JOBS"
),
jobs_usage_with_usd AS (
  SELECT
    jobs_usage.*,
    usage_quantity * pricing.default as usage_usd
  FROM jobs_usage
    LEFT JOIN system.billing.list_prices pricing ON
      jobs_usage.sku_name = pricing.sku_name
      AND pricing.price_start_time <= jobs_usage.usage_start_time
      AND (pricing.price_end_time >= jobs_usage.usage_start_time OR pricing.price_end_time IS NULL)
      AND pricing.currency_code="USD"
),
jobs_usage_aggregated AS (
  SELECT
    workspace_id,
    job_id,
    run_id,
    FIRST(run_as, TRUE) as run_as,
    sku_name,
    SUM(usage_usd) as usage_usd,
    SUM(usage_quantity) as usage_quantity
  FROM jobs_usage_with_usd
  GROUP BY ALL
)
SELECT
  t1.*,
  MIN(period_start_time) as run_start_time,
  MAX(period_end_time) as run_end_time,
  FIRST(result_state, TRUE) as result_state
FROM jobs_usage_aggregated t1
  LEFT JOIN system.lakeflow.job_run_timeline t2 USING (workspace_id, job_id, run_id)
GROUP BY ALL
ORDER BY usage_usd DESC
LIMIT 100

Obtener registros de uso para trabajos SUBMIT_RUN

SELECT
  *
FROM system.billing.usage
WHERE
  EXISTS (
      SELECT 1
      FROM system.lakeflow.job_run_timeline
      WHERE
        job_run_timeline.job_id = usage_metadata.job_id
        AND run_name = :run_name
        AND workspace_id = :workspace_id
  )

Unir el cronograma de ejecución de tareas y las tablas de clústeres

Enriquecer las ejecuciones de tareas de trabajo con metadatos de clústeres

with clusters as (
    SELECT
        *,
        ROW_NUMBER() OVER (PARTITION BY workspace_id, cluster_id ORDER BY change_time DESC) as rn
    FROM system.compute.clusters QUALIFY rn=1
),
exploded_task_runs AS (
  SELECT
    *,
    EXPLODE(compute_ids) as cluster_id
  FROM system.lakeflow.job_task_run_timeline
  WHERE array_size(compute_ids) > 0
)
SELECT
  exploded_task_runs.*,
  clusters.*
FROM exploded_task_runs t1
  LEFT JOIN clusters t2
    USING (workspace_id, cluster_id)

Buscar trabajos que se ejecutan en un proceso de uso completo

Esta consulta se une a la de la tabla del sistema compute.clusters para devolver los trabajos recientes que se ejecutan en proceso multiuso en lugar de proceso de trabajos.

with clusters AS (
  SELECT
    *,
    ROW_NUMBER() OVER(PARTITION BY workspace_id, cluster_id ORDER BY change_time DESC) as rn
  FROM system.compute.clusters
  WHERE cluster_source="UI" OR cluster_source="API"
  QUALIFY rn=1
),
job_tasks_exploded AS (
  SELECT
    workspace_id,
    job_id,
    EXPLODE(compute_ids) as cluster_id
  FROM system.lakeflow.job_task_run_timeline
  WHERE period_start_time >= CURRENT_DATE() - INTERVAL 30 DAY
  GROUP BY ALL
),
all_purpose_cluster_jobs AS (
  SELECT
    t1.*,
    t2.cluster_name,
    t2.owned_by,
    t2.dbr_version
  FROM job_tasks_exploded t1
    INNER JOIN clusters t2 USING (workspace_id, cluster_id)
)
SELECT * FROM all_purpose_cluster_jobs LIMIT 10;

Panel de supervisión de trabajos

En el panel siguiente se usan tablas del sistema para ayudarle a empezar a supervisar los trabajos y el estado operativo. Incluye casos de uso comunes, como el seguimiento del rendimiento del trabajo, la supervisión de errores y el uso de recursos.

Panel de observabilidad de costos de trabajos

Para obtener información sobre cómo descargar el panel, consulte Supervisión de costes y rendimiento de trabajos con tablas del sistema

Solución de problemas

La tarea no está registrada en la tabla lakeflow.jobs

Si un trabajo no está visible en las tablas del sistema:

  • El trabajo no se modificó en los últimos 365 días
    • Modifique cualquiera de los campos del trabajo presentes en el esquema para emitir un nuevo registro.
  • El trabajo se creó en otra región
  • Creación reciente de trabajos (retrasos en los datos)

No se puede encontrar un trabajo visto en la tabla job_run_timeline

No todas las ejecuciones de trabajos están visibles en todas partes. Aunque las entradas de JOB_RUN aparecen en todas las tablas relacionadas con el trabajo, WORKFLOW_RUN (ejecuciones de flujo de trabajo del cuaderno) solo se registran en job_run_timeline y SUBMIT_RUN (ejecuciones enviadas una sola vez) se registran únicamente en ambas tablas de cronología. Estas ejecuciones no se rellenan en otras tablas del sistema de trabajo, como jobs o job_tasks.

Consulte la tabla Tipos de ejecución siguiente para obtener un desglose detallado de dónde está visible y accesible cada tipo de ejecución.

Ejecución de trabajo no visible en la tabla billing.usage

En system.billing.usage, el usage_metadata.job_id solo se rellena para los trabajos que se ejecutan en procesos de trabajo o procesos sin servidor.

Además, los trabajos de WORKFLOW_RUN no tienen una atribución propia de usage_metadata.job_id o de usage_metadata.job_run_id en system.billing.usage. En su lugar, su uso de computación se atribuye al cuaderno principal que los activó. Esto significa que cuando un notebook inicia la ejecución de un flujo de trabajo, todos los costes de proceso aparecen en el uso del notebook principal, no como un trabajo de flujo de trabajo independiente.

Consulte Referencia de metadatos de uso para obtener más información.

Calcular el costo de un trabajo que se ejecuta en una computación de propósito general

No es posible hacer el cálculo preciso del coste de los trabajos que se ejecutan en recursos de cómputo dedicados con una precisión del 100%. Cuando un trabajo se ejecuta en un proceso interactivo (de uso completo), varias cargas de trabajo como cuadernos, consultas SQL u otros trabajos a menudo se ejecutan simultáneamente en ese mismo recurso de proceso. Dado que los recursos del clúster se comparten, no hay ninguna asignación directa de 1:1 entre los costos informáticos y las ejecuciones de trabajos individuales.

Para un seguimiento preciso del costo del trabajo, Databricks recomienda ejecutar trabajos en computación dedicada para trabajos o computación sin servidor, donde usage_metadata.job_id y usage_metadata.job_run_id permiten una atribución precisa de costos.

Si debe usar la computación de propósito general, puede hacer lo siguiente:

  • Supervise el uso general del clúster y los costes en system.billing.usage en función de usage_metadata.cluster_id.
  • Realice un seguimiento de las métricas del tiempo de ejecución del trabajo por separado.
  • Tenga en cuenta que cualquier estimación de costos será aproximada debido a los recursos compartidos.

Consulte Referencia de metadatos de uso para obtener más información sobre la atribución de costes.

Valores de referencia

En la sección siguiente se incluyen referencias para seleccionar columnas en tablas relacionadas con trabajos.

Lógica de segmentación en las tablas de la línea de tiempo

Las columnas period_start_time y period_end_time en las tablas job_run_timeline y job_task_run_timeline registran el período activo de una ejecución de trabajo o de tareas.

Cada fila registra hasta una hora de tiempo de ejecución. Las ejecuciones que duran más de 1 hora se registran en varias filas. Esta segmentación garantiza la granularidad horaria para supervisar tareas de larga duración.

Nota

Si una ejecución nunca comenzó a ejecutarse, se representa mediante una fila donde period_start_time es igual a period_end_time. Esto indica que no hay ningún tiempo de ejecución activo. Para comprender por qué no se inició la ejecución, compruebe la termination_code columna .

Trabajos de ejecución corta

En el caso de las ejecuciones menores de 1 hora, se emite una sola fila, con period_start_time establecida en la hora de inicio de la ejecución y period_end_time establecida en la hora de finalización de la ejecución.

Por ejemplo, un trabajo iniciado a las 12:13 UTC y finalizado a las 12:45 UTC se representa mediante una sola fila:

id_de_espacio_de_trabajo ID_de_trabajo run_id hora_de_inicio_del_periodo hora_de_fin_del_periodo
6051921418418893 280090038844882 174832649710507 2025-06-08T12:13:01.605 2025-06-08T12:45:06.009

Trabajos de larga duración

Para las ejecuciones que duran más de 1 hora, se emiten varias filas con la misma run_id, cada una que representa hasta una hora de la duración de la ejecución:

  • La primera fila comienza en la hora de inicio real de la ejecución y concluye al término de la primera hora de ejecución.
  • Las filas intermedias (si las hay) abarcan ventanas horarias completas, alineadas con el segmento anterior period_end_time.
  • La última fila comienza al principio del segmento anterior y termina en la hora de finalización real de la ejecución.

Por ejemplo, un trabajo que se ejecutó de 4:47 PM UTC a 8:28 PM UTC se segmenta en varias filas. Cada fila representa una hora de actividad, excepto la última fila, que puede ser más corta:

ID_de_espacio_de_trabajo job_id identificador_de_ejecución hora_inicio_período hora_final_del_periodo
6051921418418893 280090038844882 55408597258956 2025-07-01T16:47:55.992 2025-07-01T17:47:56.434
6051921418418893 280090038844882 55408597258956 2025-07-01T17:47:56.434 2025-07-01T18:47:58.876
6051921418418893 280090038844882 55408597258956 2025-07-01T18:47:58.876 2025-07-01T19:47:59.682
6051921418418893 280090038844882 55408597258956 2025-07-01T19:47:59.682 2025-07-01T20:28:29.743

Valores de tipo de desencadenador

En la job_run_timeline tabla, los valores posibles para la trigger_type columna son:

  • CONTINUOUS
  • CRON
  • FILE_ARRIVAL
  • ONETIME
  • ONETIME_RETRY

Valores de tipo de ejecución

En la job_run_timeline tabla, los valores posibles para la run_type columna son:

Tipo Descripción Ubicación de la interfaz de usuario Punto de conexión de API Tablas del sistema
JOB_RUN Ejecución de trabajos estándar Interfaz de usuario de trabajos y ejecuciones de trabajos Puntos de conexión /jobs y /jobs/runs jobs, job_tasks, job_run_timeline, job_task_run_timeline
SUBMIT_RUN Ejecución única a través de POST /jobs/runs/submit Solo la interfaz de usuario de ejecuciones de trabajos /jobs/runs endpoints only job_run_timeline, job_task_run_timeline
WORKFLOW_RUN Ejecución iniciada desde el flujo de trabajo del cuaderno No es visible No es accesible cronograma_de_ejecución_de_tareas

Valores de estado del resultado

En las job_task_run_timeline tablas y job_run_timeline , los valores posibles para la result_state columna son:

Estado Descripción
SUCCEEDED La ejecución se completó correctamente.
FAILED La ejecución se completó con un error.
SKIPPED La ejecución nunca se llevó a cabo porque no se cumplió una condición.
CANCELLED La ejecución se canceló a petición del usuario.
TIMED_OUT La ejecución se detuvo después de agotar el tiempo de espera.
ERROR La ejecución se completó con un error.
BLOCKED La ejecución se bloqueó en una dependencia ascendente.
NULL La fila representa un segmento intermedio de un trabajo de larga duración. Solo result_state está disponible en la fila que representa el final de la ejecución.

Valores de código de terminación

En las job_task_run_timeline tablas y job_run_timeline , los valores posibles para la termination_code columna son:

Código de terminación Descripción
SUCCESS La ejecución se completó correctamente.
CANCELLED La ejecución fue cancelada durante la ejecución por la plataforma de Databricks; por ejemplo, si se superó la duración máxima de la ejecución.
SKIPPED La ejecución nunca se realizó, por ejemplo, si falló la ejecución de la tarea previa, no se cumplió la condición del tipo de dependencia, o no había tareas pendientes que ejecutar.
DRIVER_ERROR La ejecución encontró un error al comunicarse con el controlador de Spark.
CLUSTER_ERROR Error en la ejecución debido a un error de clúster.
REPOSITORY_CHECKOUT_FAILED No se pudo completar el pago debido a un error en la comunicación con el servicio de terceros.
INVALID_CLUSTER_REQUEST Error en la ejecución porque emitió una solicitud no válida para iniciar el clúster.
WORKSPACE_RUN_LIMIT_EXCEEDED El espacio de trabajo ha alcanzado la cuota del número máximo de ejecuciones activas simultáneas. Considere la posibilidad de programar las ejecuciones en un período de tiempo mayor.
FEATURE_DISABLED Error en la ejecución porque intentó acceder a una característica no disponible para el área de trabajo.
CLUSTER_REQUEST_LIMIT_EXCEEDED El número de solicitudes de creación, inicio y tamaño del clúster ha superado el límite de velocidad asignado. Considere la posibilidad de repartir la ejecución a lo largo de un período de tiempo más amplio.
STORAGE_ACCESS_ERROR Error en la ejecución debido a un error al acceder al almacenamiento de blobs del cliente.
RUN_EXECUTION_ERROR La ejecución se completó con errores de tarea.
UNAUTHORIZED_ERROR Error en la ejecución debido a un problema de permiso al acceder a un recurso.
LIBRARY_INSTALLATION_ERROR Error en la ejecución al instalar la biblioteca solicitada por el usuario. Las causas pueden incluir, pero no se limitan a: la biblioteca proporcionada no es válida o no tiene permisos suficientes para instalar la biblioteca.
MAX_CONCURRENT_RUNS_EXCEEDED La ejecución programada supera el límite de ejecuciones simultáneas máximas establecidas para el trabajo.
MAX_SPARK_CONTEXTS_EXCEEDED La ejecución se programa en un clúster que ya ha alcanzado el número máximo de contextos que está configurado para crear.
RESOURCE_NOT_FOUND No existe un recurso necesario para ejecutar la ejecución.
INVALID_RUN_CONFIGURATION Error en la ejecución debido a una configuración no válida.
CLOUD_FAILURE Error en la ejecución debido a un problema del proveedor de nube.
MAX_JOB_QUEUE_SIZE_EXCEEDED La ejecución de la tarea se omitió debido a que se alcanzó el límite de tamaño de la cola de nivel de tareas.

Valores de tipo de canalización

En la pipelines tabla, los valores posibles para la pipeline_type columna son:

Tipo de canalización Descripción
ETL_PIPELINE Canalización estándar
MATERIALIZED_VIEW Vistas materializadas en Databricks SQL
STREAMING_TABLE Transmisión de tablas en Databricks SQL
INGESTION_PIPELINE Ingestor de Lakeflow Connect
INGESTION_GATEWAY Ingestor de puerta de enlace de Lakeflow Connect

Referencia de configuración de canalización

En la pipelines tabla, los valores posibles para la settings columna son:

Importancia Descripción
photon Una marca que indica si se usa Photon para ejecutar la canalización
development Una marca que indica si se va a ejecutar la canalización en modo de desarrollo o producción.
continuous Una marca que indica si la canalización se debe ejecutar ininterrumpidamente
serverless Marca que indica si se va a ejecutar la canalización en un clúster sin servidor.
edition La edición del producto para ejecutar la canalización
channel La versión del entorno de ejecución de la canalización que se va a utilizar