1. Pourquoi avez-vous besoin de mesurer le flux de travail
1, un système complet d'analyse de données comprend généralement un grand nombre d'unités de tâches: script shell, programme Java, programme Mapraduce, script de Hive, etc.
2, il y a une période de temps entre les unités de tâches et dépend de l'avant et de l'arrière
3, afin d'organiser de tels plans de mise en œuvre complexes, il faut un système de planification de flux de travail Oui pour organiser la mise en œuvre ]
Par exemple, nous pouvons avoir une telle demande et un système d'entreprise pour créer des données brutes de 20 g tous les jours. Nous devons le gérer tous les jours. Le processus de démarquage est le suivant:
1, d'abord synchroniser les données d'origine avec Hadoop HDFS;
2, avec le cadre de calcul de MapReduce, les données d'origine sont nettoyées et les données créées stockées dans de nombreuses tables nid d'abeille sous la forme d'une table de partition;
3, la prise de traitement doit être effectuée sur plusieurs tables de la nid d'abeille, obtenir une grande table de donnéesHIVE,4, des données détaillées seront effectuées dans différentes analyses statistiques, ce qui entraîne des informations sur les rapports de résultats;
5, Nécessité de synchroniser des données résultant par analyse statistique pour le système d'entreprise pour les appels de service.
Lundi, mettant en œuvre la planification des travaux
Spécification de tâches simples: Utilisation du crontab de Linux pour déterminer;
Calendrier des tâches complexes: plate-forme de planification du développement ou prêt à établir des systèmes de planification open source, tels que Ooisize, Azkaban, etc Systèmes de planification des processus Emplois Général
Il existe actuellement de nombreux flux de travail des viande de viande Le domaine de Hadoop, travail général de flux mesurant Oozie, Azkaban, cascade, Hamake et al
4, Outils Divers planification, comparaisonLe tableau suivant est les principales caractéristiques des quatre comparaisons de Le worklow de Meastlow ci-dessus, bien que les scènes de la demande que ce processus de travail puisse être résolue essentiellement de l'œdèmeCombinaison, il existe une différence significative des idées de conception, des utilisateurs cibles, des scripts d'applications, etc. Lors de la création d'options techniques, reportez-vous à
[
] Comparaison La meilleure planification populaire sur le marché, a choisi la correspondance des détails suivants concernent des options techniques de consultation. Dans l'ensemble, Ooisize est comparé au système de planification robuste, mais une configuration plus complexe. Si vous n'êtes pas intéressé par certaines fonctionnalités, l'horaire de lumière Azkaban est un très bon objet candidat.
Les détails sont les suivants:
Les deux peuvent planifier des tâches de feuille de travail MapReduce, cochon, Java et de script
2, processus de fonctionnement de définition
Azkaban Utilisez le fichier d'attribut pour déterminer le flux de travail
Oozie Utilisez le fichier XML pour identifier le flux de travail
3, connectez le Processus de travail
Azkaban prend en charge la transmission en direct, par exempleComme les paramètres prennent en charge INPORTOOZIE et EL expressions, tels que les paramètres de support INPUTOOZIE et EL expressions, par exemple {FS: DirSize (myInputDir)}
4, Temps d'exécution
Temps d'exécution de l'Azkaban en fonction de
Tâches d'application basées sur l'ozie basées sur les données de temps et de saisie5, Gestion des ressources
Azkaban a une plus proche Contrôle des droits, tels que lecture / lecture / lecture / brûlage / exécution, etc.
Oozie n'a pas de contrôles de privilège stricts
6, mise en œuvre de flux de travail
Azkaban comporte deux modes de fonctionnement du mode de serveur solo (Server exécutant et déployer un serveur Web dans le même bouton) et le mode multi-serveur (serveur exécutable et serveur Web peuvent être déployés dans différents nœuds)
Oozie en tant que serveur de processus, supportez plusieurs utilisateurs et de nombreux processus de travail . 7. Gestion des flux de travail Azkaban prend en charge le navigateur et le processus d'opération du mode Ajax Oozie prend en charge la commande de ligne de repos HTTP, Java API, processus de processus de navigation Haut de la page 6, Azkaban introduit Azkaban est une série de tâches de processus de travail de masse pour une liaison à la source ouverte. Utilisé pour exécuter un ensemble d'emplois et de procédures dans un ordre spécifique dans le flux de travail. Azkaban définit le format de fichier KV pour établir une dépendance entre les tâches et fournir une maintenance d'interface utilisateur Web facile à utiliser et suivre votre flux de travail. Il présente les éléments suivants: 1, interface utilisateur Web 2, pratique pour télécharger le flux de travail 3, Paramètres pratiques entre les tâches 4, planification du flux de travail 5, Authentification / Autorisation (Autorité des travaux) 6, peut tuer et redémarrer le flux de travail 7, mécanisme de prise de moduleEt peut boucher 8, espace de travail de projet 9, connectez-vous et vérifiez le flux de travail et la tâche . Les tâches de planification d'Azkaban peuvent avoir ces types 1, scripts 2, programme Java 3, M. 4, programme d'étincelles 5, SQL de la ruche 6, Script Python 7, SQOP Mission