Descripción del flujo de control de Data Factory
Qué es el flujo de control
El flujo de control es una orquestación de actividades de canalizaciones que incluye el encadenamiento de actividades en una secuencia, la bifurcación, la definición de parámetros en el nivel de canalización y el paso de argumentos mientras se invoca la canalización a petición o desde un desencadenador.
El flujo de control también puede incluir contenedores de bucle que pueden pasar información para cada iteración del contenedor de bucle.
Si se usa un bucle For Each como actividad de flujo de control, Azure Data Factory puede iniciar varias actividades en paralelo mediante este enfoque. Esto le permite crear lógica de procesamiento compleja e iterativa dentro de las canalizaciones que crea con Azure Data Factory, lo que admite la creación de diversos patrones de integración de datos, como la creación de un almacenamiento de datos moderno.
En las secciones siguientes se describen algunas de las actividades habituales del flujo de control.
Encadenamiento de actividades
En Azure Data Factory puede encadenar actividades en una secuencia dentro de una canalización. Es posible usar la propiedad dependsOn en una definición de actividad para encadenarla con una actividad ascendente.
Actividades de bifurcación
Use Azure Data Factory para las actividades de ramificación dentro de un pipeline. Un ejemplo de una actividad de bifurcación es la actividad If Condition , que es similar a una instrucción if proporcionada en lenguajes de programación. Una actividad de bifurcación evalúa un conjunto de actividades y, cuando la condición se evalúa como verdadera, se ejecuta un conjunto de actividades. Cuando se evalúa como false, se ejecuta un conjunto alternativo de actividades.
Para situaciones en las que necesite más de dos rutas de acceso de resultados, use la actividad Switch . La actividad Switch funciona como una instrucción switch/case en lenguajes de programación: evalúa una expresión y ejecuta las actividades que coinciden con un valor de caso específico. Puede definir hasta 25 casos con nombre más una rama predeterminada que se ejecute cuando no coincida ningún caso. Utilice la condición If para decisiones binarias de verdadero/falso y Switch cuando tenga varios resultados discretos.
Parámetros
Puede definir los parámetros en el nivel de canalización y pasar los argumentos al invocar la canalización a petición o desde un desencadenador. Luego las actividades consumen los argumentos contenidos en un parámetro mientras se transfieren a la canalización.
Paso a estado personalizado
El paso a estado personalizado puede realizarse gracias a Azure Data Factory. El paso de estados personalizados es una actividad que crea la salida o el estado que debe ser consumido por una actividad posterior en el flujo de trabajo. Por ejemplo, en una definición JSON de una actividad, puede acceder a la salida de la actividad anterior. Al emplear la transmisión de estado personalizado, puede crear flujos de trabajo donde los valores se procesan a través de las actividades.
Contenedores de bucle
Los contenedores de bucle dentro del flujo de control, como la actividad ForEach, definen la repetición en una canalización. Permite iterar sobre una colección y ejecutar las actividades especificadas en el bucle definido. Su funcionamiento es similar al de la "estructura de bucle 'for each'" que se utiliza en los lenguajes de programación. Además de cada actividad, también hay una actividad Until. Esta funcionalidad es similar a un bucle do-until usado en programación. Lo que hace es ejecutar un grupo de tareas (do) en un bucle hasta que se cumpla dicha condición (until).
Flujos basados en el desencadenador
Las tuberías se pueden activar a petición (en función de eventos, por ejemplo, posterior a la publicación de blobs) o en horario de reloj.
Invocación de una canalización desde otra
La actividad de ejecución de canalización con Azure Data Factory permite que una canalización de Data Factory invoque otra.
Flujos delta
Los casos de uso que implican flujos delta se refieren a cargas delta. Las cargas delta en patrones ETL solo cargarán los datos que se han modificado desde una iteración anterior de una canalización. Funcionalidades como la actividad de consulta y la programación flexible ayudan a gestionar los trabajos de cargas delta. En el caso de que se use una actividad de búsqueda, se leerá o buscará un valor de nombre de tabla o registro desde cualquier origen externo. Además, las actividades posteriores pueden hacer referencia a esta salida.
Otros flujos de control
Hay muchas más actividades del flujo de control. Vea los elementos siguientes para obtener otras actividades útiles:
Actividad web: la actividad web en Azure Data Factory que usa flujos de control puede llamar a un punto de conexión REST personalizado desde una canalización de Data Factory. Los conjuntos de datos y los servicios vinculados se pueden pasar para que los consuma la actividad.
Actividad de obtención de metadatos: la actividad de obtención de metadatos recupera los metadatos de cualquier dato de Azure Data Factory.