Ordonnancement de tâches informatiques

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Ordonnancement.

La planification de tâches informatiques 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 CALENDAIRE.

L'ordonnancement de tâches 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 ÉVÉNEMENTIEL.

Sans que cette liste soit limitative, la mise en place d'une solution de planification / ordonnancement doit permettre d'atteindre tout ou partie des objectifs suivants sur des systèmes d’informations hétérogènes :

  1. Contrôler les applications
  2. Optimiser voire réduire les temps de traitement
  3. Garantir une meilleure distribution des ressources
  4. Minimiser les erreurs de lancement de jobs BATCH
  5. Fournir une documentation à jour pour les collaborateurs
  6. Suivre graphiquement de manière centralisée les traitements
  7. Limiter les interventions humaines dans les chaînes de production
  8. Établir des dépendances sans limitation entre les processus et les évènements
  9. Lancer des traitements sur une architecture centralisée et / ou sur une architecture distribuée
  10. Réduire la dépendance des données et résultats de traitements à la disponibilité des collaborateurs
  11. Disposer d'un référentiel et d'une solution commune à toute la production pour assurer souplesse et rapidité
  12. Garantir une disponibilité de la production en proposant des scénarios de reprise et un fonctionnement en mode dégradé

Planification[modifier | modifier le code]

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 scheduler mais un "job scheduler".

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[modifier | modifier le code]

L'ordonnancement permet de définir des enchainements 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 mel(s) avec ou sans pièce(s) jointe(s), un traitement sur une base de données, …

Mise en œuvre[modifier | modifier le code]

La mise en place d'une solution de planification & d'ordonnancement des traitements BATCH pour planifier, exécuter et suivre quotidiennement les traitements informatiques peut être exécutée via des services mutualisés disponibles en SaaS/Cloud (On Demand) ou classiquement sur des infrastructures dédiées (On Premise). Les avantages des deux solutions sont liés à ces modes :

  • SaaS/Cloud :
  • Mise en place initiale dans un délai très réduit
  • Externalisation des ressources humaines liées au paramétrage
  • Qualité d'hébergement très supérieure au niveau moyen constaté
  • Facilité d'adaptation au besoin (hausse ou baisse) sans contrainte
  • Flexibilité financière liée au transfert du CAPEX à l'OPEX
Mais
  • Dépendance de la qualité et de la disponibilité du lien internet de l'entreprise
  • Dédiée :
  • Indépendance totale vis-à-vis d'une infrastructure mutualisée
  • Intégration totale de la solution à son système de pilotage
  • Capacité de modification des paramètres à tout moment

Dans le cadre d'un tel projet d'automatisation des planifications, ordonnancement & lancement des tâches sur des infrastructures hétérogènes, le mode SaaS/Cloud permet de réduire l'ensemble des ressources nécessaires aux opérations de mise en place, paramétrage, formation et pilotage. Les charges de personnel et d'investissement sont réduites dans des proportions très importantes et rendent donc possibles des projets :

  • Nécessitant un démarrage dans un délai quasi-immédiat
  • Pour des structures ne disposant pas de service dédié à la fonction de Production Informatique
  • De durée limitée ne permettant pas un amortissement raisonnable d'une solution acquise en propre
  • Dont le volume d'infrastructures pilotées est extrêmement variable

Éditeurs[modifier | modifier le code]

En France, les principaux acteurs proposant des solutions de planification et / ou d'ordonnancement sont :

  • AXWAY (XOS Automator)
  • UNILINK (Vega)
  • Automic Software France (One Automation - ex UC4)
  • SOS-Paris (Open Source JobScheduler)
  • SMA Solutions (OpCon)
  • Orsyp (Dollar Universe)
  • IBM (Tivoli Workload Scheduler et IBM UrbanCode Deploy)
  • Serena (serena-release-automation)
  • HP (HPOO : HP Operations Orchestration)
  • Computer Associates (Autosys)
  • BMC Software (Control M)
  • Absyss (Visual TOM)

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Lien externe[modifier | modifier le code]