Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Use la tarea If/else condition para agregar lógica condicional booleana a gráficos de tareas. Estas tareas constan de un operador booleano y un par de operandos, donde los operandos pueden hacer referencia al estado de trabajo o tarea mediante parámetros configurados o dinámicos, o valores de tarea. Consulte Parameterize jobs (Parametrización de trabajos).
Por ejemplo, supongamos que tiene una tarea denominada process_records que mantiene un recuento de registros que no son válidos en un valor denominado bad_records y desea ramificar el procesamiento cuando encuentre registros no válidos. Para agregar esta lógica al flujo de trabajo, cree una tarea If/else condition con una expresión, como {{tasks.process_records.values.bad_records}} > 0. A continuación, agregue tareas dependientes en función de los resultados de la condición.
Una vez completada la ejecución de un trabajo que contenga una tarea If/else condition, podrá ver el resultado de la expresión y los detalles de la evaluación de expresiones al ver los detalles de ejecución del trabajo en la interfaz de usuario. Consulte Visualización de los detalles de ejecución de trabajos.
Note
- Los valores numéricos y no numéricos se manipulan de forma diferente en función del operador booleano:
- Los operadores
==y!=realizan una comparación de cadenas de sus operandos. Por ejemplo,12.0 == 12se evalúa como false. - Los
>operadores ,>=,<y<=realizan comparaciones numéricas de sus operandos. Por ejemplo,12.0 >= 12se evalúa como true y10.0 >= 12se evalúa como false. - Solo se permiten valores numéricos, de cadena y booleanos al hacer referencia a valores de tarea en un operando. Cualquier otro tipo hace que se produzca un error en la expresión de condición. Los tipos de valor no numérico se serializan en cadenas y se tratan como cadenas en expresiones
If/else condition. Por ejemplo, si un valor de tarea se establece como valor booleano, se serializa en"true"o"false".
- Los operadores
Configurar una tarea If/else
Agregue una tarea If/else condition desde la pestaña Tareas de la interfaz de usuario trabajos haciendo lo siguiente:
- Haga clic en
Agregar tarea.
- Escriba un nombre en el campo Nombre de tarea.
- En el menú desplegable Tipo, seleccione
If/else condition. - Escriba el operando que se vaya a evaluar en el primer cuadro de texto Condición. El operando puede hacer referencia a cualquiera de los siguientes valores:
- Variable de parámetro de trabajo, por ejemplo
{{job.parameters.<name>}}. - Una variables de parámetros de una tarea.
- Un valor de tarea, por ejemplo
{{tasks.<task_name>.values.<value_name>}}, .
- Variable de parámetro de trabajo, por ejemplo
- Seleccione un operador booleano en el menú desplegable.
- En el segundo cuadro de texto Condición, escriba el valor para evaluar la condición.
- (Opcional) Para configurar reintentos, umbrales de tiempo de ejecución o trabajos pendientes de streaming, o notificaciones, consulte Configuración avanzada de tareas.
- Haga clic en Guardar tarea.
Para editar, clonar, deshabilitar o eliminar esta tarea, consulte Configuración y edición de tareas en trabajos de Lakeflow.
Configuración de dependencias en una condición If/else
Configure las dependencias de la tarea desde el gráfico de tareas If/else condition de la pestaña Tareas haciendo lo siguiente:
- Seleccione la
If/else conditiontarea en el gráfico de tareas y haga clic enAgregar tarea.
- Escriba los detalles de la tarea. El campo Depende de tiene el valor predeterminado de
<task-name> (true), donde<task-name>es el nombre de la tareaIf/else condition.- Seleccione
<task-name> (false)para configurar una tarea que se ejecute en una evaluación de condición falsa.
- Seleccione
Puede configurar varias tareas para que se ejecuten en serie o en paralelo en función del resultado de If/else condition. Considere la posibilidad de configurar Run if dependencies si necesita ejecuciones condicionales basadas en errores de tareas previas. Consulte Configuración de dependencias de tareas.
Note
Una If/else condition tarea falla si la tarea ascendente que proporciona su valor de condición está deshabilitada. Consulte Limitaciones.
Recursos adicionales
- Tarea de condición: Define una tarea de condición como código con paquetes de automatización declarativa.
- Configurar dependencias de tareas: Establecer dependencias run-if para ejecuciones condicionales.
- Usar valores de tarea para pasar información entre tareas: Usar valores de tarea para pasar datos entre tareas.