Creación de una dependencia de un desencadenador de ventana de saltos de tamaño constante

SE APLICA A: Azure Data Factory Azure Synapse Analytics

Sugerencia

Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. Obtenga información sobre cómo iniciar una nueva evaluación gratuita.

En este artículo se exponen los pasos necesarios para crear una dependencia en un desencadenador de ventana de saltos de tamaño constante. Para obtener información general acerca de los desencadenadores de ventanas de saltos de tamaño constante, consulte Cómo crear un desencadenador de ventana de saltos de tamaño constante.

Con el fin de generar una cadena de dependencia y de asegurarse de que un desencadenador se ejecuta solo después de la correcta ejecución de otro desencadenador en el servicio, utilice esta característica avanzada para crear una dependencia periódica.

Puede ver una demostración de cómo crear canalizaciones dependientes mediante el desencadenador periódico en el vídeo siguiente:

Creación de una dependencia en la interfaz de usuario

Para crear una dependencia en un desencadenador, seleccione Desencadenador > Avanzado > Nuevo y luego elija el desencadenador del que se va a depender con el desplazamiento y tamaño adecuados. Seleccione Finalizar y publique los cambios para que se apliquen las dependencias.

Screenshot of the dependency creation window.

Propiedades de dependencia de ventana de saltos de tamaño constante

Un desencadenador de ventana de saltos de tamaño constante con una dependencia tiene las siguientes propiedades:

{
    "name": "MyTriggerName",
    "properties": {
        "type": "TumblingWindowTrigger",
        "runtimeState": <<Started/Stopped/Disabled - readonly>>,
        "typeProperties": {
            "frequency": <<Minute/Hour>>,
            "interval": <<int>>,
            "startTime": <<datetime>>,
            "endTime": <<datetime - optional>>,
            "delay": <<timespan - optional>>,
            "maxConcurrency": <<int>> (required, max allowed: 50),
            "retryPolicy": {
                "count": <<int - optional, default: 0>>,
                "intervalInSeconds": <<int>>,
            },
            "dependsOn": [
                {
                    "type": "TumblingWindowTriggerDependencyReference",
                    "size": <<timespan - optional>>,
                    "offset": <<timespan - optional>>,
                    "referenceTrigger": {
                        "referenceName": "MyTumblingWindowDependency1",
                        "type": "TriggerReference"
                    }
                },
                {
                    "type": "SelfDependencyTumblingWindowTriggerReference",
                    "size": <<timespan - optional>>,
                    "offset": <<timespan>>
                }
            ]
        }
    }
}

La tabla siguiente proporciona la lista de los atributos necesarios para definir una dependencia de ventana de saltos de tamaño constante.

Nombre de la propiedad Descripción Tipo Obligatorio
type Todos los desencadenadores de ventana de saltos de tamaño constante existentes se muestran en este menú desplegable. Elija el desencadenador del que se va a depender. TumblingWindowTriggerDependencyReference o SelfDependencyTumblingWindowTriggerReference.
offset Desplazamiento del desencadenador de dependencia. Proporcione un valor en formato de intervalo de tiempo; admite desplazamientos negativos y positivos. Esta propiedad es obligatoria si el desencadenador depende de sí mismo; en todos los demás casos, es opcional. La autodependencia debe tener siempre un valor de desplazamiento negativo. Si no se especifica ningún valor, la ventana es igual al desencadenador. TimeSpan
(hh:mm:ss)
Autodependencia: Sí
Otros: No
tamaño Tamaño de la ventana de saltos de tamaño constante de dependencia. Proporcione un valor de intervalo de tiempo positivo. Esta propiedad es opcional. TimeSpan
(hh:mm:ss)
No

Nota

Un desencadenador de ventana de saltos de tamaño constante puede depender de un máximo de otros cinco desencadenadores.

Propiedades de la autodependencia de ventana de saltos de tamaño constante

En los escenarios en los que el desencadenador no debe continuar a la siguiente ventana hasta que se haya completado correctamente la ventana anterior, cree una autodependencia. Un desencadenador de autodependencia que depende del éxito de sus propias ejecuciones anteriores durante la hora anterior tendrá las propiedades que se indican en el código siguiente.

Nota

Si la canalización desencadenada se basa en la salida de las canalizaciones en las ventanas desencadenadas previamente, se recomienda usar solo la autodependencia del desencadenador de la ventana de saltos de tamaño constante. Para limitar ejecuciones de desencadenador paralelas, defina la simultaneidad de desencadenador máxima.

{
    "name": "DemoSelfDependency",
    "properties": {
        "runtimeState": "Started",
        "pipeline": {
            "pipelineReference": {
                "referenceName": "Demo",
                "type": "PipelineReference"
            }
        },
        "type": "TumblingWindowTrigger",
        "typeProperties": {
            "frequency": "Hour",
            "interval": 1,
            "startTime": "2018-10-04T00:00:00Z",
            "delay": "00:01:00",
            "maxConcurrency": 50,
            "retryPolicy": {
                "intervalInSeconds": 30
            },
            "dependsOn": [
                {
                    "type": "SelfDependencyTumblingWindowTriggerReference",
                    "size": "01:00:00",
                    "offset": "-01:00:00"
                }
            ]
        }
    }
}

Escenarios de uso y ejemplos

A continuación se muestran las ilustraciones de los escenarios y el uso de las propiedades de dependencia de ventana de saltos de tamaño constante.

Desplazamiento de la dependencia

Offset Example

Tamaño de la dependencia

Size example

Autodependencia

Self-dependency

Dependencia de otro desencadenador de ventana de saltos de tamaño constante

Un trabajo de procesamiento de datos de telemetría diario que dependa de otro trabajo diario que agregue la salida de los últimos siete días de salida y genere secuencias de ventana gradual de siete días:

Dependency example

Dependencia de sí mismo

Un trabajo diario sin interrupciones en los flujos de salida del trabajo:

Self-dependency example

Supervisión de dependencias

Puede supervisar la cadena de dependencias y las ventanas correspondientes desde la página de supervisión de ejecución del desencadenador. Vaya a Supervisión > Ejecuciones de desencadenador. Si un desencadenador de ventana de saltos de tamaño constante tiene dependencias, el nombre del desencadenador llevará un hipervínculo a la vista de supervisión de dependencias.

Monitor trigger runs

Haga clic en el nombre del desencadenador para ver sus dependencias. En el panel derecho se muestra información detallada sobre la ejecución del desencadenador, como el identificador RunID, la ventana de tiempo, el estado, etc.

Monitor dependencies list view

Puede ver el estado de las dependencias y las ventanas de cada desencadenador dependiente. Si se produce un error en uno de los desencadenadores de dependencias, debe volver a ejecutarlo correctamente para que se ejecute el desencadenador dependiente.

Un desencadenador de ventana de saltos de tamaño constante esperará las dependencias durante siete días antes de que se agote el tiempo de espera. Pasados los siete días, se producirá un error en la ejecución del desencadenador.

Nota

No se puede cancelar un desencadenador periódico mientras se encuentra en estado Espera en dependencia. La actividad dependiente debe finalizar antes de que se pueda cancelar el desencadenador periódico. Esto es así por diseño para asegurarse de que las actividades dependientes se pueden completar una vez iniciadas y ayuda a reducir la probabilidad de obtener resultados inesperados.

Para ver una vista más clara de la programación de dependencia del desencadenador, seleccione la vista Gantt.

Monitor dependencies gantt chart

Los cuadros transparentes muestran las ventanas de dependencia de cada desencadenador dependiente descendiente, mientras que los cuadros de color sólido que aparecen encima muestran las ventanas de ejecución individuales. A continuación se muestran algunas sugerencias para interpretar la vista del gráfico de Gantt:

  • El cuadro transparente se representa en azul cuando las ventanas dependientes están en estado pendiente o en ejecución
  • Una vez que todas las ventanas se hayan realizado correctamente para un desencadenador dependiente, el cuadro transparente se volverá verde
  • El cuadro transparente se representa en rojo cuando se produce un error en una ventana dependiente. Busque un cuadro rojo sólido para identificar un error de ejecución de ventana

Para volver a ejecutar una ventana en la vista del gráfico de Gantt, seleccione el cuadro de color sólido de la ventana y aparecerá un panel de acciones con los detalles y las opciones para volver a ejecutar.