Apache DolphinScheduler (incubateur, anciennement EasyScheduler) est un système de planification de tâches de flux de travail distribué Big Data. Il résout principalement les problèmes de dépendances complexes dans le traitement ETL pendant le processus de recherche et de développement Big Data, mais ne peut pas surveiller intuitivement l'état de santé des tâches. DolphinScheduler assemble les tâches en streaming DAG et peut surveiller l'état d'exécution des tâches en temps réel. Il prend également en charge des opérations telles que les nouvelles tentatives, la récupération des tâches ayant échoué à partir des nœuds désignés, la mise en pause et l'arrêt des tâches.
Caractéristiques de conception : Un système de planification de tâches de flux de travail DAG visuel distribué et facilement évolutif. Engagé à résoudre les dépendances complexes dans le processus de traitement des données, afin que le système de planification puisse être utilisé directement dans le processus de traitement des données. Ses principaux objectifs sont les suivants
1. Utilisez un diagramme DAG pour associer des tâches en fonction des dépendances des tâches, ce qui permet de surveiller visuellement l'état d'exécution des tâches en temps réel.
2. Prend en charge une variété de types de tâches : Shell, MR, Spark, SQL (mysql, postgresql, hive, sparksql), Python, Sub_Process, Procedure, etc.
3. Prend en charge la planification planifiée du flux de travail, la planification des dépendances, la planification manuelle, la pause/arrêt/reprise manuelle, et prend également en charge les opérations telles que les tentatives/alarmes échouées, l'échec de la récupération à partir des nœuds spécifiés et les tâches d'arrêt.
4. Prise en charge de la priorité du flux de travail, de la priorité des tâches, du basculement des tâches et de l'alarme/échec d'expiration des tâches
5. Prise en charge des paramètres globaux du flux de travail et des paramètres personnalisés des nœuds
6. Prend en charge le téléchargement et la gestion en ligne des fichiers de ressources, et prend en charge la création et l'édition de fichiers en ligne.
7. Prend en charge la visualisation et le défilement en ligne des journaux de tâches, le téléchargement en ligne des journaux, etc.
8. Mettre en œuvre le cluster HA et parvenir à la décentralisation du cluster maître et du cluster Worker via Zookeeper
9. Prise en charge de la visualisation en ligne de la charge, de la mémoire et du processeur du processeur maître/travailleur
10. Prise en charge de l'affichage de l'arborescence historique d'exécution du flux de travail/du diagramme de Gantt, des statistiques d'état des tâches et des statistiques d'état des processus.
11. Numéro de complément de soutien
12. Prise en charge de la multilocation
13. Soutenir l'internationalisation
14. Il y en a d'autres qui attendent que les partenaires explorent