- Qu’est-ce que le traitement des charges de travail par lots ?
- Une histoire du traitement par lots
- Exemples de traitement par lots
- Avantages et inconvénients du traitement par lots
- Systèmes modernes de traitement par lots
- Le traitement par lots prend le chemin du cloud
- Orchestration des charges de travail par lots
- L’avenir du traitement par lots
- Brian McHugh
Qu’est-ce que le traitement des charges de travail par lots ?
Le traitement des charges de travail par lots fait référence à des groupes de travaux (lots) qui sont planifiés pour être traités en même temps. Traditionnellement, les charges de travail par lots sont traitées pendant les fenêtres de lots, des périodes où l’utilisation globale du CPU est faible (généralement la nuit). La raison en est double :
- Les charges de travail par lots peuvent nécessiter des UC élevées, occupant des ressources qui sont nécessaires à d’autres processus opérationnels pendant la journée de travail
- Les charges de travail par lots sont généralement utilisées pour traiter des transactions et produire des rapports, par exemple, en rassemblant tous les enregistrements de ventes qui ont été créés au cours de la journée de travail
Aujourd’hui, le traitement par lots est effectué par des planificateurs de tâches, des systèmes de traitement par lots, des solutions d’automatisation de la charge de travail et des applications natives des systèmes d’exploitation. L’outil de traitement par lots reçoit les données d’entrée, tient compte des exigences du système et coordonne l’ordonnancement pour le traitement de gros volumes. Le traitement par lots diffère du traitement en flux dans la mesure où le traitement par lots nécessite des informations non continues.
Une histoire du traitement par lots
Le traitement par lots prend racine dans la préhistoire des ordinateurs. Dès 1890, le Bureau du recensement des États-Unis utilisait une tabulatrice électromécanique pour enregistrer les informations du recensement américain. Herman Hollerith, qui a inventé la tabulatrice, a ensuite fondé la société qui est devenue IBM.
Au milieu du 20e siècle, les travaux par lots étaient exécutés en utilisant des données perforées sur des cartes. Dans les années 1960, avec le développement de la multiprogrammation, les systèmes informatiques ont commencé à exécuter plusieurs travaux par lots en même temps pour traiter des données provenant de bandes magnétiques au lieu de cartes perforées.
A mesure que les ordinateurs centraux évoluaient et devenaient plus puissants, davantage de travaux par lots étaient exécutés et des applications ont donc été développées pour s’assurer que les travaux par lots n’étaient exécutés que lorsque les ressources étaient suffisantes, afin d’éviter les retards. Cela a contribué à donner naissance aux systèmes modernes de traitement par lots.
Exemples de traitement par lots
Les cas d’utilisation du traitement par lots se retrouvent dans les banques, les hôpitaux, la comptabilité et tout autre environnement où un grand ensemble de données doit être traité. Par exemple, les générations de rapports sont exécutées après la fermeture de l’entreprise, lorsque toutes les transactions par carte de crédit ont été finalisées. Les sociétés de services publics recueillent des données sur l’utilisation des clients et exécutent des processus par lots pour déterminer la facturation.
Dans un autre cas d’utilisation, une société de gestion de données financières exécute des processus par lots pendant la nuit qui fournissent des rapports financiers directement aux banques et aux institutions financières qu’elles servent.
Avantages et inconvénients du traitement par lots
Le traitement par lots est utile car il fournit une méthode de traitement de grandes quantités de données sans occuper les ressources informatiques clés. Si un prestataire de soins de santé doit mettre à jour des dossiers de facturation, il pourrait être préférable d’exécuter un lot de nuit, lorsque les demandes sur les ressources seront faibles.
De même, le traitement par lots aide à réduire les temps d’arrêt en exécutant les tâches lorsque les ressources informatiques sont disponibles.
Les outils de traitement par lots, cependant, sont souvent limités en termes de portée et de capacité. Des scripts personnalisés sont souvent nécessaires pour intégrer le système batch à de nouvelles sources de données, ce qui peut poser des problèmes de cybersécurité lorsque des données sensibles sont incluses. Les systèmes batch traditionnels peuvent également être mal équipés pour gérer les processus qui nécessitent des données en temps réel, par exemple le traitement des flux ou des transactions.
Votre centre de données suit-il le rythme de l’activité ?
Explorez comment vous pouvez surmonter la complexité du centre de données avec une solution de planification des tâches d’entreprise.
Systèmes modernes de traitement par lots
Les systèmes modernes de traitement par lots offrent une gamme de fonctionnalités qui facilitent la gestion des charges de travail à haut volume par les équipes. Cela peut inclure l’automatisation basée sur les événements, les contraintes et la surveillance en temps réel. Ces capacités modernes permettent de s’assurer que les lots ne s’exécutent que lorsque toutes les données nécessaires sont disponibles, ce qui réduit les retards et les erreurs.
Afin de réduire davantage les retards, les systèmes modernes de traitement par lots incluent des algorithmes d’équilibrage de la charge pour s’assurer que les travaux par lots ne sont pas envoyés à des serveurs ayant une faible mémoire ou un nombre insuffisant de CPU disponibles.
En attendant, des capacités avancées de planification de la date et de l’heure permettent de programmer des lots tout en tenant compte des jours fériés personnalisés, des calendriers fiscaux, des fuseaux horaires multiples, et bien plus encore.
Toutefois, en raison du besoin croissant de données en temps réel et de la complexité croissante du traitement moderne des données, de nombreuses organisations informatiques optent pour des plateformes d’automatisation et d’orchestration des charges de travail qui fournissent des outils avancés pour la gestion et l’intégration des données.
Le traitement par lots prend le chemin du cloud
Le service informatique moderne est diversifié, distribué et dynamique. Au lieu de s’appuyer sur des mainframes homogènes et des centres de données sur site, les processus batch sont exécutés dans des environnements hybrides. Il y a une bonne raison à cela.
Comme mentionné précédemment, les processus batch sont fréquemment gourmands en ressources. Aujourd’hui, avec la croissance du big data et des transactions en ligne, les charges de travail par lots peuvent demander beaucoup. L’exploitation de l’infrastructure cloud donne au service informatique la possibilité de provisionner des ressources de calcul en fonction de la demande, au lieu de devoir installer des serveurs physiques qui, pendant une bonne partie de la journée, seraient probablement inactifs.
La quantité de données que le service informatique doit gérer pour répondre aux besoins de l’entreprise continue de croître, et les outils de charge de travail par lots évoluent pour répondre à ces besoins. Par exemple, l’informatique ne dispose pas des ressources nécessaires pour exécuter manuellement chaque processus ETL, ou pour configurer, provisionner et déprovisionner manuellement les VM. Au lieu de cela, les outils de charge de travail par lot sont utilisés pour automatiser et orchestrer ces tâches dans des processus de bout en bout.
Par exemple, un outil d’automatisation et d’orchestration peut être utilisé pour déplacer les données dans et hors de divers composants d’un cluster Hadoop dans le cadre d’un processus de bout en bout qui comprend le provisionnement des VM, l’exécution de tâches ETL dans une plateforme de BI, puis la livraison de ces rapports par e-mail.
A mesure que les organisations deviennent plus dépendantes des ressources et des applications basées sur le cloud, la capacité à orchestrer la planification des tâches et les charges de travail par lots sur des plateformes disparates deviendra critique.
Orchestration des charges de travail par lots
Les outils d’automatisation et d’orchestration sont de plus en plus extensibles, plusieurs solutions d’automatisation des charges de travail fournissant déjà des connecteurs universels et des adaptateurs API REST à faible code qui permettent d’intégrer pratiquement n’importe quel outil ou technologie sans script.
C’est important, car au lieu d’avoir des planificateurs de tâches, des outils d’automatisation et des processus batch fonctionnant en silos, l’informatique peut utiliser un outil d’orchestration de la charge de travail pour gérer, surveiller et dépanner de manière centralisée toutes les tâches batch.
Les outils d’orchestration de l’informatique peuvent, par exemple, générer et stocker automatiquement des fichiers journaux pour chaque instance batch, ce qui permet à l’informatique d’identifier rapidement les causes profondes lorsque des problèmes surviennent. La surveillance et les alertes en temps réel permettent à l’IT de réagir ou de prévenir les retards, les échecs et les exécutions incomplètes, accélérant ainsi les temps de réponse lorsque des problèmes surviennent.
Les redémarrages automatiques et les flux de travail de remédiation automatique sont également de plus en plus courants, tandis que les travaux par lots peuvent être hiérarchisés pour garantir la disponibilité des ressources au moment de l’exécution.
En outre, les outils extensibles de charge de travail par lots permettent de consolider les scripts et les applications par lots hérités, ce qui permet à l’informatique de simplifier et de réduire les coûts opérationnels.
L’avenir du traitement par lots
Les outils traditionnels de planification par lots ont cédé la place à des plateformes d’automatisation et d’orchestration hautes performances qui offrent l’extensibilité nécessaire pour gérer le changement. Ils permettent à l’informatique de fonctionner dans des environnements hybrides et multi-clouds et peuvent réduire considérablement le besoin d’intervention humaine.
Les algorithmes d’apprentissage automatique sont utilisés pour allouer intelligemment les VM aux charges de travail par lots afin de réduire les temps morts et les ressources inutilisées. Ceci est essentiel pour les équipes qui gèrent des exécutions de charges de travail à haut volume ou avec un grand nombre de serveurs virtuels ou basés sur le cloud.
Avec l’apprentissage automatique fonctionnant en temps réel, des ressources supplémentaires peuvent être réservées si une charge de travail critique pour le SLA risque d’être dépassée. Cela inclut le provisionnement de machines virtuelles ou basées sur le cloud supplémentaires en fonction de la demande dynamique. Couplé à l’auto-remédiation, cela fournit un outil puissant pour s’assurer que la prestation de services n’est pas retardée pour l’utilisateur final ou le client externe.
À long terme, l’informatique devient plus diversifiée et distribuée, et les types de charges de travail dont l’informatique est responsable vont continuer à se développer. La maturation de nouvelles technologies -intelligence artificielle, IoT, edge computing- exercera de nouvelles pressions sur les équipes informatiques pour qu’elles intègrent rapidement de nouvelles applications et technologies.
L’informatique évolue rapidement, mais certaines choses, comme le traitement par lots, restent les mêmes.
Vous êtes prêt à voir comment nous rendons l’automatisation de la charge de travail facile ?
Programmez une démonstration pour voir nos experts exécuter des tâches qui correspondent à vos cas d’utilisation dans ActiveBatch. Obtenez des réponses à vos questions et découvrez à quel point il est facile de créer et de maintenir vos travaux dans ActiveBatch