Ordonnancement de travaux informatiques

Il s'agit de l'automatisation de traitement d'une tâche informatique.

Description

L'ordonnancement de travaux informatiques 
Concerne exclusivement la manière de lancer des traitements ("batch") sur un ou plusieurs composants de son système d'information au moyen de progiciels spécifiques. Ces progiciels allient la théorie de l'ordonnancement avec des techniques propres à l'informatique (queues de traitements, gestion de fichiers, équilibrage de charge…). Dans la littérature, est généralement associé au mode dit "évènementiel".

La planification de tâches informatiques 
C'est en général l'étape initiale permettant de définir des lots de traitements homogènes dépendant de conditions calendaires. Ainsi, les lots de traitements pourront être différents les jours ouvrés de ceux des jours de clôture mensuelle. Dans la littérature, est généralement associé au mode dit "calendaire".

Sans que cette liste soit limitative, la mise en place d'une solution d'ordonnancement de travaux informatiques doit permettre d'atteindre tout ou une partie des objectifs suivants sur des systèmes d’informations hétérogènes :
 Contrôler les applications
 Optimiser voire réduire les temps de traitement
 Garantir une meilleure distribution des ressources
 Minimiser les erreurs de lancement de travaux ("jobs")
 Fournir une documentation à jour pour les collaborateurs
 Suivre graphiquement de manière centralisée les traitements
 Limiter les interventions humaines dans les chaînes de production
 Établir des dépendances sans limitation entre les processus et les évènements
 Lancer des traitements sur une architecture centralisée et / ou sur une architecture distribuée
 Réduire la dépendance des données et résultats de traitements à la disponibilité des collaborateurs
 Disposer d'un référentiel et d'une solution commune à toute la production pour assurer souplesse et rapidité
 Garantir une disponibilité de la production en proposant des scénarios de reprise et un fonctionnement en mode dégradé

Planification 

La planification permet de déterminer ce qui doit être réalisé et comment aboutir à cette réalisation. Il s'agit donc de répartir ses traitements dans un temps défini. Elle est souvent confondue avec l'ordonnancement alors qu'elle n'en représente que la première étape. La confusion provient principalement de la traduction du terme scheduler qui désigne la commande cron (UNIX ou Linux) ou la commande at (Windows) ; or l'ordonnanceur n'est pas un «  » mais un «  ».

Pour planifier des traitements, on peut se contenter de définir des heures de lancement. On décalera éventuellement les horaires pour aboutir à une répartition optimale. La gestion devient problématique lorsque les durées de traitements sont variables.

Ordonnancement 

L'ordonnancement permet de définir des enchaînements entre les traitements. Ainsi, on ne lance plus un traitement à une heure définie mais à la suite d'un autre traitement. La notion de traitement peut être assez générale puisqu'il s'agit de toute commande exécutable sur une ou plusieurs machines informatiques.

Les systèmes évolués permettent des enchaînements conditionnés suivant les types de fin (normale, anormale, spécifique ou quelconque) de traitement(s) précédent(s), la détection et / ou le contenu de fichier(s), l'arrivée de mail(s) avec ou sans pièce(s) jointe(s), un traitement sur une base de données, …

Notes et références

Voir aussi

Articles connexes 
 Théorie de l'ordonnancement

Logiciel utilitaire
Programmation concurrente