pyhton ou rust ingénierie data projet performances volume

Python vs Rust, quel langage est le plus adapté à votre projet Data ?

indétrônable Python en ingénierie de la Data ? la langage de programmation Rust pourrait bien lui voler la vedette !

Au niveau des langages de programmation, Python reste incontournable mais Rust intéresse de plus en plus d’ingénieurs data … D’ailleurs Meta le recommande désormais avec C++ et Python qui est désormais davantage cantonné aux applications de Data Science ou de Machine Learnings. Microsoft estime quant à lui que C et C++ ne sont pas assez sûrs pour les logiciels critiques et investit de plus en plus dans Rust.

Pourquoi cet engouement ?

  • Rust permet de garantir un haut niveau de performance dans le traitement de larges volumes de données et offre un bien meilleur niveau de sécurité et de contrôle de qualité du code.
  • Il revient moins cher que Python qui est beaucoup lourd lors de la mise en production. Python nécessite en effet plus de tests et peut générer des interruptions en production. C’est plus facile – et plus précoce – d’identifier d’éventuel bugs avec Rust !
  • Il permet aussi de mieux optimiser le stockage des données et l’usage en mémoire. Il a en effet la particularité d’allouer la mémoire par un système de gestion de la propriété au moment de la compilation. Ainsi, les données inutilisées sont nettoyées automatiquement sans que personne n’ait besoin de penser à allouer ou libérer de la mémoire. Alors que les cloud providers appliquent des tarifs élevés lorsque les entreprises nécessitent plus de mémoires ou de nœuds, c’est un vrai avantage !

Certes la communauté est encore un peu réduite mais elle est très active.

Un inconvénient ? Oui, la courbe d’apprentissage est plus longue que les autres langages (partez sur deux semaines !) et comme Rust reste tout de même encore récent, vous n’avez pas encore toutes les ressources et autres bibliothèques dont vous pourriez avoir besoin (cf STACK OVERFLOW).

Trois raisons pour lesquels vous devriez sérieusement envisager de passer à Rust ?

  1. Vous avez besoin de traiter de grandes quantités de données
  2. Votre projet exige des performances élevées
  3. Vous menez des opérations très gourmandes en CPU comme l’exécution d’algorithmes

Et trois raisons pour lesquelles vous avez bien raison d’utiliser ce bon vieux Python (il remonte à 1991)

  1. Vous avez besoin d’un langage simple, flexible et facile à coder (accessible même aux débutants)
  2. Votre projet consomme beaucoup d’IA et de ML
  3. Vous êtes davantage dans la data science et les performances ne sont pas l’enjeu principal

Sources :