Gestion des travaux Apache Flink® dans les clusters HDInsight sur AKS
Remarque
Nous allons mettre hors service Azure HDInsight sur AKS le 31 janvier 2025. Avant le 31 janvier 2025, vous devrez migrer vos charges de travail vers Microsoft Fabric ou un produit Azure équivalent afin d’éviter leur arrêt brutal. Les clusters restants de votre abonnement seront arrêtés et supprimés de l’hôte.
Seul le support de base sera disponible jusqu’à la date de mise hors service.
Important
Cette fonctionnalité est disponible actuellement en mode Aperçu. Les Conditions d’utilisation supplémentaires pour les préversions de Microsoft Azure contiennent davantage de conditions légales qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou ne se trouvant pas encore en disponibilité générale. Pour plus d’informations sur cette préversion spécifique, consultez les Informations sur la préversion d’Azure HDInsight sur AKS. Pour toute question ou pour des suggestions à propos des fonctionnalités, veuillez envoyer vos requêtes et leurs détails sur AskHDInsight, et suivez-nous sur la Communauté Azure HDInsight pour plus de mises à jour.
HDInsight sur AKS fournit une fonctionnalité permettant de gérer et d’envoyer des travaux Apache Flink® directement via le portail Azure (interface conviviale) et les API ARM Rest.
Cette fonctionnalité permet aux utilisateurs de contrôler et de surveiller efficacement leurs travaux Apache Flink sans avoir de connaissances approfondies sur le cluster.
Avantages
Gestion simplifiée des travaux : avec l’intégration native d’Apache Flink dans le portail Microsoft Azure, les utilisateurs n’ont plus besoin d’une connaissance approfondie des clusters Flink pour envoyer, gérer et surveiller des travaux.
API REST conviviale : HDInsight sur AKS fournit des API ARM Rest conviviales pour envoyer et gérer des travaux Flink. Les utilisateurs peuvent envoyer des travaux Flink à partir de n’importe quel service Azure à l’aide de ces API REST.
Mises à jour de travail sans effort et gestion de l’état : l’intégration du portail Microsoft Azure natif offre une expérience fluide pour mettre à jour les travaux et les restaurer dans leur dernier état enregistré (point de sauvegarde). Cette fonctionnalité garantit la continuité et l’intégrité des données tout au long du cycle de vie du travail.
Automatisation des travaux Flink à l'aide du pipeline Azure : grâce à HDInsight sur AKS, les utilisateurs de Flink ont accès à une API ARM Rest conviviale. Vous pouvez intégrer facilement les opérations des travaux Flink dans votre pipeline Azure. Que vous lanciez de nouveaux travaux, mettiez à jour des travaux en cours d’exécution ou effectuiez différentes opérations de travail, cette approche rationalisée élimine les étapes manuelles. Elle vous permet de gérer efficacement votre cluster Flink.
Prérequis
Il existe certaines conditions préalables avant d’envoyer et de gérer des travaux à partir du portail ou des API Rest.
Créez un répertoire dans le compte de stockage principal du cluster pour charger le fichier jar du travail.
Si l’utilisateur souhaite prendre des points de sauvegarde, créez un répertoire dans le compte de stockage pour les points de sauvegarde du travail.
Principales fonctionnalités et opérations
Nouvel envoi de travaux : les utilisateurs peuvent envoyer sans effort un nouveau lien Flink, éliminant ainsi la nécessité de configurations complexes ou d’outils externes.
Arrêt et démarrage des travaux avec des points de sauvegarde : les utilisateurs peuvent arrêter et démarrer correctement leurs travaux Flink à partir de leur état précédent (point de sauvegarde). Les points de sauvegarde garantissent que la progression du travail est conservée, ce qui permet une reprise fluide.
Mises à jour du travail : l’utilisateur peut mettre à jour le travail en cours d’exécution après la mise à jour du fichier jar sur le compte de stockage. Cette mise à jour prend automatiquement le point de sauvegarde et démarre le travail avec un nouveau fichier jar.
Mises à jour sans état : l’exécution d’un nouveau redémarrage pour un travail est simplifiée par le biais de mises à jour sans état. Cette fonctionnalité permet aux utilisateurs de lancer un redémarrage propre à l’aide du fichier jar de travail mis à jour.
Gestion des points de sauvegarde : les utilisateurs peuvent créer à tout moment des points de sauvegarde pour leurs travaux en cours d’exécution. Ces points de sauvegarde peuvent être répertoriés et utilisés pour redémarrer le travail à partir d’un point de contrôle spécifique en fonction des besoins.
Annuler : annule définitivement le travail.
Supprimer : supprime l’enregistrement de l’historique des travaux.
Options de gestion des travaux dans HDInsight sur AKS
HDInsight sur AKS offre des moyens de gérer les travaux Flink.
Gestion des travaux à partir du portail Microsoft Azure
Pour exécuter le travail Flink à partir du portail, suivez le chemin ci-après :
Portail --> HDInsight sur le pool de clusters AKS --> cluster Flink --> Paramètres --> Travaux Flink
Nouveau travail : pour envoyer un nouveau travail, chargez les fichiers jar du travail dans le compte de stockage et créez un répertoire de points de sauvegarde. Finalisez le modèle avec les configurations nécessaires, puis envoyez le travail.
Détails des propriétés :
Propriété Description Valeur par défaut Obligatoire Nom du travail Nom unique du travail. Il apparaît sur le portail. Le nom du travail doit être écrit en minuscules. Oui Chemin d’accès Jar Chemin de stockage pour le fichier jar de travail. Les utilisateurs doivent créer un répertoire dans le stockage de cluster et charger le fichier jar de travail. Oui Classe d’entrée Classe d’entrée pour le travail à partir de laquelle l’exécution du travail démarre. Oui Args Argument du programme principal du travail. Utilisez des espaces pour séparer les arguments. Non le degré de Parallélisme du travail Flink. 2 Oui savepoint.directory Répertoire de point de sauvegarde pour le travail. Il est recommandé aux utilisateurs de créer un répertoire pour le point de sauvegarde du travail dans le compte de stockage. abfs://<container>@<account>/<deployment-ID>/savepoints
Non Une fois le travail lancé, l’état du travail sur le portail affiche RUNNING.
Arrêter : l'arrêt du travail n’avait pas besoin de paramètre, l’utilisateur peut arrêter le travail en sélectionnant l’action.
Une fois le travail arrêté, l’état du travail sur le portail affiche STOPPED.
Démarrer : cette action démarre le travail à partir du point de sauvegarde. Pour démarrer le travail, sélectionnez le travail arrêté et démarrez-le.
Remplissez le modèle de flux avec les options requises et démarrez-le. Les utilisateurs doivent sélectionner le point de sauvegarde à partir duquel ils souhaitent démarrer le travail. Par défaut, il s’agit du dernier point de sauvegarde réussie.
Détails des propriétés :
Propriété Description Valeur par défaut Obligatoire Args Argument du programme principal du travail. Tous les arguments doivent être séparées par un espace. Non Dernier point de sauvegarde Dernier point de sauvegarde réussie avant l’arrêt du travail. Cette option est utilisée par défaut si aucun point de sauvegarde n’est sélectionné. Non modifiable Nom du point de sauvegarde Les utilisateurs peuvent répertorier le point de sauvegarde disponible pour le travail et en sélectionner un pour démarrer le travail. Non Une fois le travail démarré, l’état du travail sur le portail affiche RUNNING.
Mise à jour : la mise à jour permet de redémarrer des travaux avec le code de travail mis à jour. Les utilisateurs doivent mettre à jour le fichier jar de travail le plus récent dans l’emplacement de stockage et mettre à jour le travail à partir du portail. Cette mise à jour arrête le travail avec un point de sauvegarde et redémarre avec le dernier fichier jar.
Modèle de mise à jour du travail.
Une fois le travail mis à jour, l’état du travail sur le portail affiche « RUNNING ».
Mise à jour sans état : ce travail est semblable à une mise à jour, mais il implique un nouveau redémarrage du travail avec le code le plus récent.
Modèle de mise à jour du travail.
Détails des propriétés :
Propriété Description Valeur par défaut Obligatoire Args Argument du programme principal du travail. Séparez tous les arguments par un espace. Non Une fois le travail mis à jour, l’état du travail sur le portail affiche RUNNING.
Point de sauvegarde : prendre le point de sauvegarde du travail Flink.
La création d’un point de sauvegarde prend du temps. Vous pouvez voir l’état de l’action de travail en cours.
Annuler : ce travail permet à l’utilisateur de terminer le travail.
Supprimer : supprime les données de travail du portail.
Afficher les détails du travail : pour afficher les détails du travail, l’utilisateur peut cliquer sur le nom du travail, les détails sur le travail et le résultat de la dernière action s’affichent.
Pour toute action ayant échoué, ce fichier json de travail donne des exceptions détaillées et des raisons d’échec.
Gestion des travaux avec l’API Rest
HDInsight sur AKS prend en charge les API ARM Rest conviviales pour envoyer et gérer un travail. Grâce à cette API REST Flink, vous pouvez facilement intégrer les opérations de travail Flink dans votre pipeline Azure. Que vous lanciez de nouveaux travaux, mettiez à jour des travaux en cours d’exécution ou effectuiez différentes opérations de travail, cette approche rationalisée élimine les étapes manuelles et vous permet de gérer efficacement votre cluster Flink.
Format d’URL de base pour l’API Rest
Consultez l’URL suivante pour l’API Rest. Les utilisateurs doivent d’abord remplacer l’abonnement, le groupe de ressources, le pool de clusters, le nom du cluster et HDInsight sur la version de l’API AKS avant de l’utiliser.
https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runjob?api-version={{API_VERSION}}
L’API REST permet aux utilisateurs de lancer de nouveaux travaux, d’arrêter des travaux, de démarrer des travaux, de créer des points de sauvegarde, d’annuler des travaux et de supprimer des travaux. La version actuelle de l’API est 2023-06-01-preview.
Authentification avec l’API Rest
Pour authentifier les utilisateurs de l’API ARM Rest Flink, vous devez obtenir le jeton du porteur ou le jeton d’accès pour la ressource ARM. Pour authentifier l’API REST Azure ARM (Azure Resource Manager) à l’aide d’un principal de service, vous pouvez suivre ces étapes générales :
Créez un principal de service.
az ad sp create-for-rbac --name <your-SP-name>
Accordez l’autorisation du propriétaire au fournisseur de services pour le cluster
flink
.Connectez-vous avec le principal de service.
az login --service-principal -u <client_id> -p <client_secret> --tenant <tenant_id>
Obtenez un jeton d’accès.
$token = az account get-access-token --resource=https://management.azure.com/ | ConvertFrom-Json
$tok = $token.accesstoken
Les utilisateurs peuvent utiliser le jeton dans l’URL affichée.
$data = Invoke-RestMethod -Uri $restUri -Method GET -Headers @{ Authorization = "Bearer $tok" }
Authentification à l’aide de l’identité managée : les utilisateurs peuvent utiliser des ressources qui prennent en charge l’identité managée pour effectuer des appels à l’API REST de travail. Pour obtenir des informations plus détaillées, consultez la documentation sur les identités managées.
LISTE des API et des paramètres
Nouveau travail : API Rest pour envoyer un nouveau travail à Flink.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande :
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "NEW", "jobJarDirectory": "<JOB_JAR_STORAGE_PATH>", "jarName": "<JOB_JAR_NAME>", "entryClass": "<JOB_ENTRY_CLASS>", “args”: ”<JOB_JVM_ARGUMENT>” "flinkConfiguration": { "parallelism": "<JOB_PARALLELISM>", "savepoint.directory": "<JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>" } } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom unique du travail. Il apparaît sur le portail. Le nom du travail doit être écrit en minuscules. Oui action Il indique le type d’opération sur le travail. Cette valeur doit être « NEW » pour le lancement d’un nouveau travail. Oui jobJarDirectory Chemin de stockage pour le répertoire du fichier jar de travail. Les utilisateurs doivent créer un répertoire dans le stockage de cluster et charger le fichier jar de travail. Oui jarName Nom du fichier jar de travail. Oui entryClass Classe d’entrée pour le travail à partir de laquelle l’exécution du travail démarre. Oui args Argument du programme principal du travail. Séparez les arguments par un espace. Non le degré de Parallélisme du travail Flink. 2 Oui savepoint.directory Répertoire de point de sauvegarde pour le travail. Il est recommandé aux utilisateurs de créer un répertoire pour le point de sauvegarde du travail dans le compte de stockage. abfs://<container>@<account>/<deployment-ID>/savepoints
Non Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Arrêter le travail : API Rest pour arrêter le travail en cours d’exécution.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "STOP" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail Oui action Cette valeur doit être « STOP » Oui Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Démarrer le travail : API Rest pour démarrer le travail STOPPED.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "START", "savePointName": "<SAVEPOINT_NAME>" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail. Oui action Cette valeur doit être « START » Oui savePointName Nom du point de sauvegarde pour démarrer le travail. Il s’agit d’une propriété facultative. Par défaut, l’opération de démarrage prend le dernier point de sauvegarde réussie. Non Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Mettre à jour le travail : API Rest pour mettre à jour le travail en cours d’exécution.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "UPDATE", “args” : “<JOB_JVM_ARGUMENT>”, "savePointName": "<SAVEPOINT_NAME>" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail. Oui action Cette valeur doit être « UPDATE » pour le lancement d’un nouveau travail. Oui args Arguments JVM de travail Non savePointName Nom du point de sauvegarde pour démarrer le travail. Il s’agit d’une propriété facultative. Par défaut, l’opération de démarrage prend le dernier point de sauvegarde réussie. Non Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Travail de mise à jour sans état : API Rest pour la mise à jour sans état.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "STATELESS_UPDATE", “args” : “<JOB_JVM_ARGUMENT>” } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail. Oui action Il doit toujours être « STATELESS_UPDATE » pour le lancement d’un nouveau travail. Oui args Arguments JVM de travail Non Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Point de sauvegarde : API REST pour déclencher le point de sauvegarde du travail.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "SAVEPOINT" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail. Oui action Cette valeur doit être « SAVEPOINT » pour le lancement d’un nouveau travail. Oui Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Lister les points de sauvegarde : API Rest pour répertorier tout les points de sauvegarde à partir du répertoire de points de sauvegarde.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "LIST_SAVEPOINT" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail Oui action Cette valeur doit être « LIST_SAVEPOINT » Oui Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Annuler : API Rest pour annuler le travail.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "CANCEL" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être FlinkJob
Oui jobName Nom du travail utilisé pour lancer le travail. Oui action Cette valeur doit être « CANCEL » Oui Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Supprimer : API Rest pour supprimer le travail.
Option Valeur méthode PUBLICATION URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Corps de la demande
{ "properties": { "jobType": "FlinkJob", "jobName": "<JOB_NAME>", "action": "DELETE" } }
Détails de la propriété pour le corps JSON :
Propriété Description Valeur par défaut Obligatoire jobType Type du travail. Cette valeur doit être « FlinkJob » Oui jobName Nom du travail utilisé pour lancer le travail. Oui action Cette valeur doit être « DELETE » Oui Exemple :
Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"
Répertorier les travaux : API Rest pour répertorier tous les travaux et l’état de l’action actuelle.
Option Valeur méthode GET URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/jobs?api-version={{API_VERSION}}
En-tête Autorisation : « Bearer $token » Sortie :
{ "value": [ { "id": "/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/jobs/job1", "properties": { "jobType": "FlinkJob", "jobName": "job1", "jobJarDirectory": "<JOB_JAR_STORAGE_PATH>", "jarName": "<JOB_JAR_NAME>", "action": "STOP", "entryClass": "<JOB_ENTRY_CLASS>", "flinkConfiguration": { "parallelism": "2", "savepoint.directory": "<JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>s" }, "jobId": "20e9e907eb360b1c69510507f88cdb7b", "status": "STOPPED", "jobOutput": "Savepoint completed. Path: <JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>s/savepoint-20e9e9-8a48c6b905e5", "actionResult": "SUCCESS", "lastSavePoint": "<JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>s/savepoint-20e9e9-8a48c6b905e5" } } ] }
Remarque
Lorsqu’une action est en cours, actionResult l’indique avec la valeur « IN_PROGRESS » Lors de la réussite, la valeur est « SUCCESS » et, en cas de défaillance, elle est « FAILED ».
Référence
- Planification des travaux Apache Flink
- Apache, Apache Flink, Flink et les noms de projet open source associés sont des marques de commerce d’Apache Software Foundation (ASF).