Creación de una dependencia de un desencadenador de ventana de saltos de tamaño constanteCreate a tumbling window trigger dependency

SE APLICA A: Azure Data Factory Azure Synapse Analytics

En este artículo se exponen los pasos necesarios para crear una dependencia en un desencadenador de ventana de saltos de tamaño constante.This article provides steps to create a dependency on a tumbling window trigger. 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.For general information about Tumbling Window triggers, see How to create tumbling window trigger.

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 la factoría de datos, utilice esta característica avanzada para crear una dependencia de ventana de saltos de tamaño constante.In order to build a dependency chain and make sure that a trigger is executed only after the successful execution of another trigger in the data factory, use this advanced feature to create a tumbling window dependency.

Puede ver una demostración de cómo crear canalizaciones dependientes en Azure Data Factory mediante el desencadenador de ventanas de saltos de tamaño constante en el vídeo siguiente:For a demonstration on how to create dependent pipelines in your Azure Data Factory using tumbling window trigger, watch the following video:

Creación de una dependencia en la interfaz de usuario de Data FactoryCreate a dependency in the Data Factory UI

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.To create dependency on a trigger, select Trigger > Advanced > New, and then choose the trigger to depend on with the appropriate offset and size. Seleccione Finalizar y publique los cambios de la factoría de datos para que las dependencias surta efecto.Select Finish and publish the data factory changes for the dependencies to take effect.

Creación de dependenciasDependency Creation

Propiedades de dependencia de ventana de saltos de tamaño constanteTumbling window dependency properties

Un desencadenador de ventana de saltos de tamaño constante con una dependencia tiene las siguientes propiedades:A tumbling window trigger with a dependency has the following properties:

{
    "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.The following table provides the list of attributes needed to define a Tumbling Window dependency.

Nombre de la propiedadProperty Name DescripciónDescription TipoType ObligatorioRequired
typetype Todos los desencadenadores de ventana de saltos de tamaño constante existentes se muestran en este menú desplegable.All the existing tumbling window triggers are displayed in this drop down. Elija el desencadenador del que se va a depender.Choose the trigger to take dependency on. TumblingWindowTriggerDependencyReference o SelfDependencyTumblingWindowTriggerReference.TumblingWindowTriggerDependencyReference or SelfDependencyTumblingWindowTriggerReference Yes
offsetoffset Desplazamiento del desencadenador de dependencia.Offset of the dependency trigger. Proporcione un valor en formato de intervalo de tiempo; admite desplazamientos negativos y positivos.Provide a value in time span format and both negative and positive offsets are allowed. Esta propiedad es obligatoria si el desencadenador depende de sí mismo; en todos los demás casos, es opcional.This property is mandatory if the trigger is depending on itself and in all other cases it is optional. La autodependencia debe tener siempre un valor de desplazamiento negativo.Self-dependency should always be a negative offset. Si no se especifica ningún valor, la ventana es igual al desencadenador.If no value specified, the window is the same as the trigger itself. TimeSpanTimespan
(hh:mm:ss)(hh:mm:ss)
Autodependencia: SíSelf-Dependency: Yes
Otros: NoOther: No
tamañosize Tamaño de la ventana de saltos de tamaño constante de dependencia.Size of the dependency tumbling window. Proporcione un valor de intervalo de tiempo positivo.Provide a positive timespan value. Esta propiedad es opcional.This property is optional. TimeSpanTimespan
(hh:mm:ss)(hh:mm:ss)
NoNo

Nota

Un desencadenador de ventana de saltos de tamaño constante puede depender de un máximo de otros cinco desencadenadores.A tumbling window trigger can depend on a maximum of five other triggers.

Propiedades de la autodependencia de ventana de saltos de tamaño constanteTumbling window self-dependency properties

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.In scenarios where the trigger shouldn't proceed to the next window until the preceding window is successfully completed, build a self-dependency. 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.A self-dependency trigger that's dependent on the success of earlier runs of itself within the preceding hour will have the properties indicated in the following code.

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.If your triggered pipeline relies on the output of pipelines in previously triggered windows, we recommend using only tumbling window trigger self-dependency. Para limitar ejecuciones de desencadenador paralelas, defina la simultaneidad de desencadenador máxima.To limit parallel trigger runs, set the maximimum trigger concurrency.

{
    "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 ejemplosUsage scenarios and examples

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.Below are illustrations of scenarios and usage of tumbling window dependency properties.

Desplazamiento de la dependenciaDependency offset

Ejemplo de desplazamientoOffset Example

Tamaño de la dependenciaDependency size

Ejemplo de tamañoSize example

AutodependenciaSelf-dependency

AutodependenciaSelf-dependency

Dependencia de otro desencadenador de ventana de saltos de tamaño constanteDependency on another tumbling window trigger

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:A daily telemetry processing job depending on another daily job aggregating the last seven days output and generates seven day rolling window streams:

Ejemplo de dependenciaDependency example

Dependencia de sí mismoDependency on itself

Un trabajo diario sin interrupciones en los flujos de salida del trabajo:A daily job with no gaps in the output streams of the job:

Ejemplo de autodependenciaSelf-dependency example

Supervisión de dependenciasMonitor dependencies

Puede supervisar la cadena de dependencias y las ventanas correspondientes desde la página de supervisión de ejecución del desencadenador.You can monitor the dependency chain and the corresponding windows from the trigger run monitoring page. Vaya a Supervisión > Trigger Runs (Ejecuciones de desencadenador) .Navigate to Monitoring > Trigger Runs. 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.If a Tumbling Window trigger has dependencies, Trigger Name will bear a hyperlink to dependency monitoring view.

Supervisión de las ejecuciones del desencadenadorMonitor trigger runs

Haga clic en el nombre del desencadenador para ver sus dependencias.Click through the trigger name to view trigger dependencies. 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.Right-hand panel shows detailed trigger run information, such as RunID, window time, status, and so on.

Vista de lista de la supervisión de dependenciasMonitor dependencies list view

Puede ver el estado de las dependencias y las ventanas de cada desencadenador dependiente.You can see the status of the dependencies, and windows for each dependent trigger. Si se produce un error en uno de los desencadenadores de dependencias, debe volver a ejecutarlo correctamente para que se ejecute el desencadenador dependiente.If one of the dependencies triggers fails, you must successfully rerun it in order for the dependent trigger to run.

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.A tumbling window trigger will wait on dependencies for seven days before timing out. After seven days, the trigger run will fail.

Para ver una vista más clara de la programación de dependencia del desencadenador, seleccione la vista Gantt.For a more visual to view the trigger dependency schedule, select the Gantt view.

Gráfico de Gantt de la supervisión de dependenciasMonitor 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.Transparent boxes show the dependency windows for each down stream-dependent trigger, while solid colored boxes above show individual window runs. A continuación se muestran algunas sugerencias para interpretar la vista del gráfico de Gantt:Here are some tips for interpreting the Gantt chart view:

  • El cuadro transparente se representa en azul cuando las ventanas dependientes están en estado pendiente o en ejecuciónTransparent box renders blue when dependent windows are in pending or running state
  • Una vez que todas las ventanas se hayan realizado correctamente para un desencadenador dependiente, el cuadro transparente se volverá verdeAfter all windows succeeds for a dependent trigger, the transparent box will turn green
  • El cuadro transparente se representa en rojo cuando se produce un error en una ventana dependiente.Transparent box renders red when some dependent window fails. Busque un cuadro rojo sólido para identificar un error de ejecución de ventanaLook for a solid red box to identify the failure window run

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.To rerun a window in Gantt chart view, select the solid color box for the window, and an action panel will pop up with details and rerun options

Pasos siguientesNext steps