Depuis que j’ai commencé mon métier de Data Engineer, j’ai beaucoup entendu parler de Green IT sans pour autant avoir les clés pour agir à mon niveau. J’ai donc écrit ces articles (de base c’était un seul mais ça devenait trop long) pour vous en donner.
Le Green IT, ou informatique verte, désigne l’ensemble des pratiques et des technologies visant à réduire l’impact environnemental de l’informatique. En effet, le secteur numérique représente une part significative de l’empreinte écologique mondiale. Selon un rapport de l’ONU, l’industrie numérique représente environ 4 % des émissions mondiales de CO₂, soit plus que l’aviation civile.
La pollution dans l’informatique est générée par deux facteurs :
- Le matériel : via l’exploitation des ressources naturelles, l’énergie utilisée pour les extraire, les déchets qui en découlent, etc. C’est la principale source de pollution.
- L’énergie consommée pour utiliser ce matériel.
Le but de ces publications va être de vous montrer comment, au travers de vos développements en tant que Data Engineer, vous pouvez être plus écologique (et par la même occasion diminuer vos coûts) en agissant sur la consommation : de la mémoire, d’espace de stockage, de clusters et de bande passante. En effet, agir sur tout cela permettra de diminuer l’énergie consommée par votre SI et réduira les besoins matériels pour le maintenir — qui sont les deux sources de pollution de l’IT.
Certaines des indications que je vais vous donner vous apparaîtront comme du bon sens, et c’est le cas. Mon but premier est d’enclencher cette réflexion sur l’optimisation de l’utilisation de la Data. À une époque où le cloud nous donne une puissance de calcul et de stockage infinis, et où l’IA nous permet de coder plus rapidement (parfois sans se poser de question), prendre du recul sur nos actions et ce qu’on fait “par habitude” peut s’avérer utile.
On ne s’attardera pas sur l’aspect grand public du “consommer moins de matériel” : il existe plein de sites et de sources d’information disponibles.

Petit disclaimer avant de commencer :
- Dans la même veine que l’on éteint l’eau pendant qu’on se brosse les dents, les tips dont je vais parler ont un impact minime à notre niveau sur l’écologie. Cependant, si on réfléchit à plus grande échelle, chacune de nos actions, mise bout à bout, peut considérablement diminuer notre empreinte.
- Je ne vais pas non plus être exhaustif, mais plutôt donner des pistes de réflexion. Il existe des tas d’articles et de chatbots IA qui vous permettront d’aller plus en profondeur sur les sujets que je vais énoncer et qui seront adaptés à votre SI.
- Pas de marketing avec moi. Disons les termes : le Green IT à notre niveau, c’est du FinOps. Les actions sont quasi les mêmes, c’est l’intention qui change.
Dans ce premier article d’une série de 5, nous allons voir la partie DevOps pour partir d’une vision macro. Puis progressivement, nous irons de plus en plus vers un aspect micro avec :
- Le deuxième article sur l’architecture data
- Le troisième sur les workflows
- Le quatrième sur le SQL
- Et le dernier sur Spark
Le DevOps, la base du Green IT
Le rayon d’action du Data Engineer étant assez vaste, il est amené à faire du DevOps. Et le DevOps a un impact central dans le Green IT. Tous les prochains articles auront pour but de réduire la consommation ; ici, on va directement agir sur les conséquences de la consommation.
Cloud public
Aujourd’hui, passer par un cloud public plutôt que d’être en on-premise sera, en majorité, plus écologique.
La mutualisation et l’optimisation des infrastructures, combinées aux engagements de décarbonation des acteurs majeurs comme AWS, Azure et GCP, réduisent l’empreinte carbone du cloud public. À usage équivalent, il émet généralement moins de CO₂ qu’une infrastructure on-premise, même si une politique éco-responsable peut limiter cet écart. Il faut aussi garder en tête que le choix du cloud provider aura également son importance.
De manière générale, pour une même utilisation, passer par un cloud public aura un impact positif sur la consommation énergétique. Le véritable enjeu réside dans l’accès quasi illimité au stockage, à la mémoire et aux autres ressources, ce qui peut réduire la vigilance quant à leur consommation. Et c’est à ce moment-là que l’impact positif de prendre un cloud public diminue.
Pour conserver et accroître la plus-value écologique d’un cloud public, il faudra suivre les conseils qui suivent 😉
Mutualisation de machines
À large échelle, l’utilisation d’un cloud public peut permettre à deux entreprises différentes d’utiliser un même serveur, alors qu’en mode on-premise, elles auraient consommé 2× plus de ressources matérielles et énergétiques (un serveur par entreprise).
On peut également accentuer cet effet au sein d’une même entreprise via le partage de clusters. Si un service a besoin d’un cluster allumé tous les jours, un deuxième service peut être placé dessus afin de mutualiser les coûts. Un cluster en fonctionnement engendre des coûts quoi qu’il arrive ; il est donc préférable d’optimiser son utilisation pour en maximiser le rendement.
En définitive, cela signifie que le cloud provider n’aura pas à utiliser deux clusters différents, optimisant ainsi l’utilisation des ressources telles que le matériel ou l’électricité.
Choix de la localisation
Comme vu dans l’introduction, la consommation matérielle et énergétique sont les deux facteurs polluants dans l’IT. Il va alors de soi que localiser nos clusters dans une zone où l’électricité est verte diminuera notre empreinte. Par exemple, je peux vous conseiller de localiser vos clusters en France, en Islande, au Canada, etc.
Optimiser la manière dont les données sont envoyées entre les différents systèmes (par exemple, entre des serveurs, le cloud et les utilisateurs finaux) peut réduire de manière significative l’empreinte énergétique. En réduisant la distance parcourue par les données et le nombre de sauts nécessaires pour les transférer, il est possible de minimiser l’énergie nécessaire à leur transmission.
Extinction automatique
Petite sécurité toute simple pour nos clusters, bien que cela n’arrive jamais d’oublier d’éteindre un cluster après l’avoir utilisé… (Chose que je n’ai jamais faite 👀) : programmer l’arrêt automatique après un temps de non-utilisation.
Tout comme on ne laisse pas tourner nos PC Gaming RGB i9 32Go 4080 RTX quand on ne s’en sert pas, il en va de même pour les clusters. Rendre le processus automatique évitera les erreurs d’inattention qui peuvent coûter très cher.
⚠️ Attention à ne pas arrêter le cluster trop rapidement, car un redémarrage est aussi coûteux.
Choisir la bonne taille
Cette approche peut sembler évidente, mais il est facile de céder à la simplicité, surtout en l’absence de visibilité sur la consommation. Il est essentiel de choisir un cluster adapté aux besoins réels : allouer 748 Go de RAM pour exécuter un simple script Python n’a aucun intérêt.
Plus un cluster est puissant, plus son impact écologique est important. Il est donc crucial d’évaluer précisément son utilisation et d’opter pour une configuration en adéquation avec la demande.
👉 Une alternative efficace consiste à privilégier des solutions serverless, qui réduisent le risque d’erreur humaine et optimisent automatiquement les ressources en fonction des besoins.
Nous concluons ici la section DevOps. Bien que plus courte que les autres, elle constitue le socle qui amplifiera l’impact des actions à venir.
Dans l’article « Architecture, vers une data plus responsable », nous rentrerons plus directement dans la dimension Data, en identifiant les axes d’amélioration pour une architecture Data plus green 🍃