26 juin 2023

La bataille des nuages : GCP vs Azure

Les contributeurs
Michiel De Koninck
Ingénieur en apprentissage automatique et spécialiste du LLM
Aucun élément trouvé.
S'abonner à la newsletter
Partager cet article

Le point de vue des développeurs sur les différences entre GCP et Azure

Amazon a lancé AWS en 2006, Google est entré en scène en 2008 avec GCP et enfin, en 2010, Microsoft a lancé Azure en 2010. Rien de tout cela n'a d'importance en 2023. Le choix typique et complexe à faire est le suivant :

"Quel fournisseur de services d'informatique dématérialisée dois-je choisir pour mon entreprise ?

De nombreux facteurs entrent en jeu dans la recherche d'une décision judicieuse. Nous souhaitons peser sur un seul aspect de cette décision en vous donnant le point de vue d'un développeur sur les différences entre les principaux fournisseurs de cloud . Plus précisément, nous examinons les résultats de notre comparaison entre GCP et Azure.

Une bonne clause de non-responsabilité n'est jamais mauvaise.

Des mots plus sages ont certainement été prononcés, mais nous devons néanmoins ajouter qu'il ne s'agit là que de notre point de vue sur la question. En tant qu'équipe d'experts en IA, nous avons nos propres préférences et nos propres désagréments. Nous ne faisons que présenter notre point de vue, prenez-le avec un grain de sel et n'hésitez pas à commenter vos propres expériences.

Notez qu'il existe déjà de nombreux articles comparant les aspects tarifaires de GCP et d'Azure, nous ne nous y attarderons pas ici. L'objectif est uniquement de comparer les différences fonctionnelles lors de l'élaboration de solutions.

Différences de développement globales

La différence générale d'expérience se résume à ceci : alors que GCP vous prend par la main et vous guide dans son univers de services gérés qui sont très faciles à utiliser, Azure vous permet (et même vous oblige) à faire des choix à un niveau de complexité plus élevé.

Nous présentons ci-dessous une illustration de cette différence. Nous trouvons que la Google Cloud Platform est assez simple à utiliser, alors que pendant le développement sur Azure, vous devrez souvent savoir exactement ce que vous faites et faire des choix clairs en fonction de cela.

Cette comparaison ne permet pas de déterminer avec certitude lequel est le meilleur. Le choix doit plutôt correspondre à vos préférences en matière de développement.

  • GCP : Je ne veux pas être obligé d'entrer dans les détails de la façon dont tout fonctionne sous le capot.
  • Azure : Je veux un contrôle fin à tous les niveaux de mes services
Représentation illustrative de la différence globale dans l'expérience de développement avec GCP vs. Azure

Maintenant, ajoutons du corps à ces affirmations et examinons quelques-uns des services réels offerts par nos amis Google et Microsoft !

Comparaison approfondie des services

Dans cette section, nous passons en revue quelques services en nuage explicites et comparons la manière dont ils sont proposés dans Azure et GCP. Nous vous mettons au défi de repérer la tendance générale.

Ordinateur : Développement et déploiement d'applications

Azure App Service vs Google App Engine

Pour utiliser un Azure App Service, vous devez d'abord créer un App Service Plan.

Alors que GCP vous permet de créer directement un moteur d'application, Azure offre un niveau d'abstraction supplémentaire en définissant l'infrastructure sur laquelle votre application s'exécute en tant que ressource distincte.

L'avantage évident est que vous disposez d'un couplage explicite entre votre application (définie par l'App Service) et l'infrastructure sur laquelle elle s'exécute. En outre, un plan peut prendre en charge plusieurs services applicatifs.

Calcul : Conteneurs sans serveur

Azure Container App vs Google Cloud Run

Pour utiliser une application de conteneur Azure, vous devez d'abord créer un environnement d'application de conteneur.

Conformément à l'idée qui sous-tend les plans de service d'application nécessaires pour les services d'application, vous avez besoin d'un environnement d'application de conteneur pour définir une application de conteneur.

Notez que si Azure vous permet de savoir que vos conteneurs s'exécuteront sur un cluster Kubernetes que vous n'avez pas à gérer. Sur GCP, vous n'avez aucune idée réelle de l'infrastructure sous-jacente : "ça marche, c'est tout".

Calcul : Microservices sans serveur

Azure App Function vs Google Cloud Function

Pour utiliser une Azure App Function, vous devez d'abord créer une Function App.

Une troisième et dernière fois pour ces services de calcul, nous notons la couche supplémentaire de regroupement imposée par Azure. L'idée est à nouveau que vous pouvez regrouper des fonctions qui ont besoin de ressources similaires + avoir des coûts cloud prévisibles pour vos fonctions parce que leur SKU est défini en amont dans la Function App.

Globalement, la même gestion consciente est également possible dans GCP, mais la façon dont Azure vous oblige à allouer vos ressources informatiques par le biais d'une couche découplée, vous oblige à y réfléchir en amont.

Gestion des ressources

Groupes de ressources Azure vs Google ? ??

Pour créer des ressources utiles dans Azure, vous avez d'abord besoin d'un groupe de ressources.

C'est peut-être l'exemple le plus clair de la couche d'abstraction supplémentaire qu'Azure ajoute au mélange. La différence avec GCP est évidente ici : Azure présente les groupes de ressources comme une couche d'abstraction supplémentaire au niveau de l'abonnement (c'est-à-dire au niveau du projet pour GCP) pour permettre une plus grande séparation entre vos composants de nuage. Comme toujours, cette abstraction peut s'avérer utile ou contraignante pour vous.

Apprentissage automatique

Azure Machine Learning vs Google Vertex AI

Pour utiliser les Azure Machine Learning Pipelines, vous devez d'abord créer un cluster de calcul.

En outre, dans Azure, vous devez définir au préalable tous les types de machines utilisés par vos pipelines. Dans Vertex AI Pipelines, vous pouvez exécuter un pipeline en utilisant les "paramètres par défaut" (la modification des machines utilisées n'est qu'une option), tandis que dans Azure Machine Learning Pipelines, vous ne pouvez pas exécuter un pipeline sans définir explicitement l'infrastructure que vous souhaitez utiliser.

Entreposage de données

Azure Synapse vs Google BigQuery

Pour utiliser Azure Synapse, vous devez d'abord créer les données sous forme de blobs dans un compte de stockage.

Il est de notoriété publique que BQ de Google est une puissance absolue. Si vous êtes habitué à la commodité de ses fonctionnalités (par exemple, les données vont directement dans BQ, aucune création explicite de blob n'est requise, vous avez l'impression de travailler avec des ensembles de données et des tables SQL traditionnels), travailler avec le bas niveau de Synapse "assurez-vous de gérer toutes les données de blob vous-même" peut vous sembler un pas en arrière.

Autres : Documentation, SDK/CLI, Terraform...

Outre ces comparaisons au niveau des services, nous souhaitons également dire un mot sur l'état actuel de la documentation Azure/GCP, du SDK/CLI et de Terraform (IAAC-tooling).

Pour toutes ces ressources, nous pensons qu'un grand nombre de ressources liées à Azure ont été modifiées/publiées très récemment ou sont à l'état d'avant-première (note : au moment de la rédaction, nous sommes au deuxième trimestre 2023). Nous constatons une nette différence par rapport à la maturité et à la stabilité des équivalents GCP.

Alors que le fait que beaucoup de choses bougent/ont récemment bougé en ce qui concerne les services Azure peut nous donner l'impression de travailler avec un outillage inachevé à l'heure actuelle, cette différence avec GCP pourrait avoir entièrement disparu d'ici 2024. Il reste à voir si "l'effort supplémentaire actuellement requis pour comprendre l'état de l'outillage Azure" sera plus facilement gérable à l'avenir.

Conclusion

La comparaison des services Azure et GCP présentée ci-dessus devrait vous permettre de comprendre le concept général :

Dans Azure → pour utiliser X, il faut d'abord avoir Y

Grâce à ces couches d'abstraction supplémentaires ajoutées dans l'environnement Azure Cloud, vous pouvez exercer un contrôle plus explicite et plus fin sur votre environnement et votre infrastructure en nuage que vous ne pouvez le faire avec Google Cloud Platform.

C'est à vous de décider si cette couche supplémentaire de contrôle est un fardeau ou une bénédiction pour vous et votre équipe.

Regarder vers l'avenir

Je vois de mon petit œil quelque chose qui commence par un C.
Nuage ?
Oui.
- sketch "Airline Pilots" des Monty Python

Dans cet article, nous n'avons abordé qu'une petite partie de nos connaissances sur le multi-cloud. Comme nous l'avons laissé entendre au début de cet article, il y a encore beaucoup à dire. Prochaine étape : une analyse similaire d'un autre de nos fournisseurs de cloud préférés (indice : commence par "ama" et se termine par "on").

Postes connexes

Voir tout le contenu
Aucun résultat n'a été trouvé.
Il n'y a pas de résultats correspondant à ces critères. Essayez de modifier votre recherche.
Grand modèle linguistique
Modèles de fondation
Entreprise
Personnes
Données Structurées
Chat GPT
Durabilité
Voix et son
Développement frontal
Protection des données et sécurité
IA responsable/éthique
Infrastructure
Hardware et capteurs
MLOps
IA générative
Natural Language Processing
Vision par ordinateur