Arrêter un pipeline en cours d'exécution

Si vous devez arrêter une tâche Cloud Dataflow en cours d'exécution, vous pouvez le faire en exécutant une commande à l'aide de l'interface de surveillance de Cloud Dataflow ou de l'interface de ligne de commande de Cloud Dataflow. Vous pouvez exécuter l'une des deux commandes suivantes pour arrêter la tâche : Cancel (annuler) ou Drain (drainer).

Arrêter une tâche à l'aide de l'interface utilisateur de surveillance de Cloud Dataflow

Pour arrêter une tâche, sélectionnez-la dans la liste des tâches de l'interface de surveillance de Cloud Dataflow. Sur la fiche d'informations correspondant à la tâche, cliquez sur Stop job (Arrêter la tâche).

Figure 1 : Fiche d'informations pour une tâche Cloud Dataflow contenant le bouton "Stop job" (Arrêter la tâche)

La boîte de dialogue Stop Job (Arrêter la tâche) affiche les modalités d'arrêt de la tâche :

Figure 2 : Boîte de dialogue "Stop Job" (Arrêter la tâche) contenant les options "Cancel" (Annuler) et "Drain" (Drainer).

Sélectionnez l'option Cancel (Annuler) ou Drain (Drainer) suivant vos besoins, puis cliquez sur le bouton Stop job (Arrêter la tâche).

Option "Cancel" (annuler)

Faire appel à l'option Cancel pour arrêter votre tâche indique au service Cloud Dataflow de l'annuler immédiatement. Le service interrompt l'ingestion et le traitement des données dès que possible et commence immédiatement à nettoyer les ressources GCP (Google Cloud Platform) associées à la tâche. Cela peut inclure la fermeture des instances de nœuds de calcul Compute Engine et la fermeture des connexions actives aux sources ou récepteurs d'E/S.

Du fait que l'option "Annuler" arrête immédiatement le traitement, vous risquez de perdre toutes les données en cours de transfert, c'est-à-dire les données qui ont été lues mais qui sont toujours en cours de traitement par le pipeline. Les données écrites à partir du pipeline sur un récepteur de sortie avant l'émission de la commande "Annuler" peuvent toujours être accessibles sur le récepteur de sortie.

Si la perte de données n'est pas un problème, utilisez l'option "Annuler" pour arrêter une tâche en ayant l'assurance que les ressources GCP associées à la tâche seront arrêtées dès que possible.

Option "Drain" (drainer)

L'utilisation de l'option Drain pour arrêter une tâche demande au service Cloud Dataflow de terminer la tâche dans son état actuel. La tâche arrête immédiatement d'ingérer de nouvelles données à partir de sources d'entrée. Cependant, le service Cloud Dataflow conserve toutes les ressources existantes (telles que les instances de nœuds de calcul) pour terminer le traitement et l'écriture des données mises en mémoire tampon dans le pipeline. Une fois toutes les opérations de traitement et d'écriture en attente terminées, le service Cloud Dataflow nettoie les ressources GCP associées à la tâche.

Utilisez l'option "Drain" (drainer) pour arrêter votre tâche si vous souhaitez éviter de perdre des données lors du démantèlement de votre pipeline.

Effets liés au drainage d'une tâche

Lorsque vous exécutez la commande "Drain" (drainer), Cloud Dataflow ferme immédiatement toutes les fenêtres en cours et actionne tous les déclencheurs. Le système n'attend pas que les fenêtres temporelles en cours se terminent. Par exemple, si votre pipeline a déjà passé dix minutes d'une fenêtre de deux heures au moment où vous émettez la commande "Drainer", Cloud Dataflow n'attendra pas que le reste de la fenêtre se termine. Il fermera la fenêtre immédiatement, avec des résultats partiels.

La vue détaillée des transformations du pipeline vous permet de voir les effets d'une commande "Drain" (drainer) en cours de traitement :

Figure 3 : Vue détaillée d'une étape avec l'opération de drainage en cours. Notez que le filigrane a avancé à sa valeur maximale.

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Besoin d'aide ? Consultez notre page d'assistance.