10 octobre 2023

Amazon RDS Aurora vs RDS MySQL vs MySQL sur EC2 : un guide pour un bon choix.

DĂ©couvrez quelle base de donnĂ©es rĂ©pond le mieux Ă  vos besoins : une analyse dĂ©taillĂ©e de MySQL, MariaDB et Aurora AWS axĂ©e sur les performances et la rentabilitĂ©.

À l’ùre du numĂ©rique dans laquelle nous vivons, rapiditĂ© et rĂ©activitĂ© sont devenues des Ă©lĂ©ments fondamentaux pour la rĂ©ussite de tout projet en ligne. Qu’il s’agisse d’un site institutionnel, d’e-commerce ou d’une plateforme de contenu, la performance est souvent la clĂ© pour se dĂ©marquer de la concurrence et offrir une expĂ©rience utilisateur supĂ©rieure. Cela est particuliĂšrement vrai pour les CMS (Content Management Systems) tels que WordPress, Joomla et Drupal, ainsi que pour les plateformes de commerce Ă©lectronique telles que WooCommerce, Magento et Prestashop, qui nĂ©cessitent une base de donnĂ©es robuste et rapide pour gĂ©rer de gros volumes de donnĂ©es et de donnĂ©es rĂ©elles. transactions temporelles.

Choisir la bonne base de donnĂ©es peut faire la diffĂ©rence entre le succĂšs et l’échec d’une opĂ©ration en ligne. En plus de garantir des performances Ă©levĂ©es, il est Ă©galement crucial de prendre en compte la rentabilitĂ©, en particulier pour les startups et les petites entreprises disposant de budgets limitĂ©s. D’un autre cĂŽtĂ©, les grandes entreprises recherchent des solutions Ă©volutives capables d’évoluer avec elles, sans compromettre la vitesse ou la sĂ©curitĂ©.

Dans cet article, nous proposons une analyse dĂ©taillĂ©e et comparative de trois systĂšmes de gestion de bases de donnĂ©es relationnelles (SGBDR) couramment utilisĂ©s : MySQL, MariaDB et Amazon Aurora. L’objectif est de fournir une image claire de leurs performances, de leurs capacitĂ©s et de leur efficacitĂ© Ă©conomique. Cela vous permettra de prendre une dĂ©cision plus Ă©clairĂ©e, en adaptant la solution choisie aux besoins spĂ©cifiques de votre projet.

À travers une sĂ©rie de tests, nous analyserons diffĂ©rents aspects, notamment la vitesse de traitement, l’évolutivitĂ© et, bien sĂ»r, le coĂ»t. Ces facteurs seront essentiels pour dĂ©terminer quel systĂšme de base de donnĂ©es est le mieux adaptĂ© pour prendre en charge une application Web hautes performances, comme cela pourrait ĂȘtre requis par un site WordPress Ă  fort trafic ou une application Web complexe.

Les prétendants

MySQL : le pionnier qui a standardisĂ© les bases de donnĂ©es

MySQL est l'un des systĂšmes de gestion de bases de donnĂ©es relationnelles les plus anciens et les plus rĂ©pandus dans le monde du Web. Initialement dĂ©veloppĂ© par MySQL AB en 1995, le logiciel a connu de nombreuses Ă©volutions au fil des annĂ©es. L'un des tournants les plus importants a Ă©tĂ© son acquisition par Sun Microsystems en 2008, puis par Oracle en 2010. Si ces acquisitions ont conduit Ă  des avancĂ©es technologiques et Ă  une plus grande intĂ©gration avec d'autres produits Oracle, elles ont Ă©galement soulevĂ© plusieurs problĂšmes. Les critiques portaient par exemple sur les arrĂȘts et licenciements de code, qui Ă©rodaient la nature open source du projet. MalgrĂ© cela, MySQL continue d'ĂȘtre un pilier dans le monde des bases de donnĂ©es, utilisĂ© par des gĂ©ants du Web comme Facebook et YouTube.

MariaDB : la rĂ©volution idĂ©ologique

MariaDB a Ă©tĂ© conçue comme un fork de MySQL en 2009, principalement en rĂ©action aux politiques de marketing et de licence d'Oracle. Essentiellement, il reprĂ©sente une sorte d’évolution « idĂ©ologique » du projet original, en mettant l’accent sur un environnement de dĂ©veloppement plus ouvert et communautaire. MariaDB introduit Ă©galement un certain nombre d'amĂ©liorations techniques par rapport Ă  MySQL, notamment une plus grande efficacitĂ© et des fonctionnalitĂ©s supplĂ©mentaires. Ces avantages ont contribuĂ© Ă  en faire un choix de plus en plus populaire parmi les dĂ©veloppeurs Ă  la recherche d'une alternative robuste Ă  MySQL, sans compromettre la compatibilitĂ©.

Aurora AWS : La puissance du Cloud au service des bases de données

Amazon Aurora est un service de base de donnĂ©es relationnelle gĂ©rĂ© qui offre une compatibilitĂ© avec MySQL et PostgreSQL. Ce moteur de base de donnĂ©es combine la vitesse et la robustesse des systĂšmes commerciaux hautes performances avec la flexibilitĂ© et l'accessibilitĂ© des bases de donnĂ©es open source. Fondamentalement, tous les codes, outils et applications que vous utilisez dĂ©jĂ  avec MySQL ou PostgreSQL peuvent ĂȘtre facilement intĂ©grĂ©s Ă  Aurora. Dans certains cas, Aurora peut fournir un dĂ©bit jusqu'Ă  cinq fois supĂ©rieur Ă  celui de MySQL et trois fois supĂ©rieur Ă  celui de PostgreSQL, sans nĂ©cessiter de modifications substantielles des applications existantes.

En plus de ces fonctionnalités, Aurora se démarque par son systÚme de stockage performant, optimisé pour fonctionner en synergie avec ses moteurs de bases de données. Ce stockage distribué rapide est conçu pour s'adapter automatiquement à vos besoins d'évolution, avec un volume de cluster pouvant atteindre 128 tébioctets (TiB). Aurora automatise et standardise également les procédures de clustering et de réplication de bases de données, qui nécessitent généralement des efforts de configuration et de gestion importants.

Enfin, il est important de noter qu'Amazon Aurora est un composant du plus large Amazon Relational Database Service (Amazon RDS). Amazon RDS est une plateforme Web qui facilite la création, la maintenance et la mise à l'échelle de bases de données relationnelles dans le contexte du cloud computing.

Il est toutefois important de noter que ces avantages ont un prix. Aurora peut ĂȘtre une solution coĂ»teuse, en particulier pour les petites entreprises ou pour des projets aux budgets limitĂ©s, faisant du facteur coĂ»t un Ă©lĂ©ment dĂ©cisif dans le choix de l'adopter ou non.

MĂ©thodologie de test : Comparaison entre MySQL, MariaDB et Aurora sur une instance RDS t4g.medium

AWS RDS (Amazon Web Services Relational Database Service) offre la possibilitĂ© de dĂ©ployer une base de donnĂ©es gĂ©rĂ©e et optimisĂ©e dans le cloud. Les ingĂ©nieurs AWS ont fait un excellent travail en optimisant chaque type d'instance pour la quantitĂ© de RAM et de cƓurs de processeur fournis. Cette prĂ©-configuration par une Ă©quipe d'experts nous permet de comparer les performances relatives des moteurs de bases de donnĂ©es, plutĂŽt que notre capacitĂ© Ă  optimiser un systĂšme de base de donnĂ©es donnĂ©.

PremiĂšre phase de la comparaison

La premiÚre partie de cette comparaison consiste à faire tourner chaque base de données sur une instance RDS db.t4g.medium et à exécuter un test avec HammerDB, un outil d'analyse comparative de bases de données trÚs populaire. Nous explorerons ensuite des instances de plus en plus grandes pour voir quelle base de données évolue le mieux.

L'infrastructure utilisée

Toutes les bases de donnĂ©es de cette partie de la comparaison ont Ă©tĂ© exĂ©cutĂ©es sur une instance db.t4g.medium Ă©quipĂ©e de 2 cƓurs de processeur ARM et de 4 Go de RAM. Les paramĂštres par dĂ©faut incluaient le chiffrement au repos et aucune information sur les performances ni fonctionnalitĂ©s de surveillance avancĂ©es.

  • Aurora
    • Version : Aurora MySQL 3.01.1 (Compatible avec MySQL 8.0.23)
    • Configuration : un seul maĂźtre, pas de rĂ©plication
    • CoĂ»t estimĂ© (peut varier selon l'utilisation) : 100 $ par mois
  • MySQL
    • Version : MySQL 8.0.27
    • Stockage : 100 Go avec stockage GP2
    • Configuration : Pas de veille
    • CoĂ»t estimĂ© : 65,86 $ par mois
  • MariaDB
    • Version : MariaDB 10.5.13
    • Stockage : 100 Go avec stockage GP2
    • Configuration : Pas de veille
    • CoĂ»t estimĂ© : 65,86 $ par mois
  • Extension HammerDB
    • Version : HammerDB 4.3 Linux
    • SystĂšme d'exploitation: Ubuntu 20.04
    • Type d'instance : EC2 t3.medium
    • Placement : dans la mĂȘme zone de disponibilitĂ© que les instances RDS pour minimiser la latence.
    • Connexion : via VNC vers une interface utilisateur Gnome pour lancer des tests et prendre des captures d'Ă©cran.

Exécution du test

Nous avons démarré le compteur de transactions et commencé les tests.

MySQL sur instance moyenne RDS t4.g

DÚs la sortie de la boßte, MySQL a immédiatement enregistré environ 50.000 90 transactions par minute, maintenant ce niveau tout au long du test. Le rapport d'utilisation du processeur affiché sur le tableau de bord AWS indiquait que MySQL utilisait environ XNUMX % de ses cycles de processeur disponibles. C'est un signe clair que la charge de travail est limitée par le processeur plutÎt que par la mémoire, ce qui suggÚre que le goulot d'étranglement des performances réside dans la puissance de calcul et non dans la capacité de mémoire de l'instance.

MariaDB sur l'instance RDS db.t4g.medium

Le profil officiel HammerDB sur Github recommande d'utiliser le pilote MySQL pour exécuter des benchmarks sur MariaDB, bien qu'il existe un pilote spécifique pour MariaDB. Par conséquent, nous conserverons tous les paramÚtres de MariaDB inchangés, à l'exception du nouveau nom d'hÎte et des informations d'identification.

MariaDB démontre rapidement qu'avec cette taille d'instance, ses performances sont supérieures. DÚs le démarrage du test, nous remarquons une augmentation de la vitesse, suggérant que MariaDB est mieux optimisée pour les instances de cette taille que MySQL.

Ce qui m'a surpris, c'est que la vitesse a continué à augmenter. Lors du test, il atteignait réguliÚrement prÚs de 80,000 XNUMX transactions par minute ! Cela suggÚre que MariaDB démarre non seulement avec des performances élevées, mais est également capable de maintenir et d'augmenter ce niveau d'efficacité tout au long du cycle de test.

Aurora sur l'instance RDS db.t4g.medium

Nous Ă©tions trĂšs impatients de voir ce qu'Aurora pouvait faire lors de ce test. Amazon fait beaucoup d'affirmations sur sa vitesse ; par exemple, la page FAQ d'Aurora affirme qu'il est jusqu'Ă  cinq fois plus rapide que MySQL.

Cependant, ce test montre qu'Aurora était à peu prÚs aussi rapide que MySQL pour cette charge de travail spécifique. Malgré les attentes élevées suscitées par les affirmations d'Amazon, les performances réelles n'ont pas montré d'avantage significatif en termes de vitesse par rapport à MySQL dans le contexte de ce test.

Aurora semblait montrer une utilisation du processeur légÚrement inférieure à celle des autres.

Nous avons également vérifié la quantité d'E/S utilisée par Aurora lors des tests, car de nombreux internautes se plaignent du coût étonnamment élevé des E/S. Notre test a culminé à 300 IOPS par seconde.

Au final, la facture attendue pour cette unité fonctionnant sur AWS EU-WEST-2 était d'environ 100 $ par mois.

 

Analyse des résultats du benchmark de performance

Performance mesurée

  • MySQL: EnregistrĂ© 16,855 50,945 commandes traitĂ©es par minute et XNUMX XNUMX transactions par minute.
  • MariaDB: Avec 23,347 76,866 commandes et XNUMX XNUMX transactions par minute, ses performances sont nettement meilleures.
  • Aurora: Il a totalisĂ© 15,781 47,517 commandes et XNUMX XNUMX transactions par minute.

Analyse détaillée des performances

MariaDB a surpassé ses concurrents, MySQL et Aurora, tant en termes de commandes que de transactions traitées par minute. Ces données sont particuliÚrement surprenantes pour Aurora qui, malgré les affirmations d'Amazon concernant ses performances supérieures, n'a montré aucun avantage significatif sur MySQL.

Comparaison coĂ»t-efficacitĂ© : commandes traitĂ©es par dollar dĂ©pensĂ©

Afin de fournir une analyse plus complĂšte et holistique, nous avons Ă©galement Ă©valuĂ© la rentabilitĂ© de chaque base de donnĂ©es. Nous avons utilisĂ© des donnĂ©es de rĂ©fĂ©rence et des coĂ»ts mensuels estimĂ©s pour calculer le nombre de commandes traitĂ©es par dollar dĂ©pensĂ© :

  • Aurora: 6,817,435 XNUMX XNUMX commandes par dollar
  • MySQL: 11,052,459 XNUMX XNUMX commandes par dollar
  • MariaDB: 15,309,508 XNUMX XNUMX commandes par dollar

Sur la base de cet indicateur, MariaDB était la base de données la plus rentable, suivie de MySQL et enfin d'Aurora.

Conclusion : MariaDB comme le meilleur choix

Si l'objectif est de maximiser Ă  la fois les performances et la rentabilitĂ© d'un systĂšme de base de donnĂ©es transactionnelle hautes performances, MariaDB semble ĂȘtre le choix le plus avantageux. Il a surpassĂ© MySQL et Aurora dans les deux aspects dans notre test.

Bien que MySQL reste une option solide pour ceux qui sont dĂ©jĂ  bien intĂ©grĂ©s dans cet Ă©cosystĂšme, si la rentabilitĂ© est une prĂ©occupation, il peut ĂȘtre prudent d'envisager de passer Ă  MariaDB. Aurora, bien que bĂ©nĂ©ficiant d'un certain nombre de fonctionnalitĂ©s avancĂ©es, ne semble pas justifier son prix plus Ă©levĂ©., du moins pour des charges de travail similaires Ă  celles de notre test.

Dans un contexte commercial oĂč chaque milliseconde et chaque centime a un impact significatif, notamment pour ceux qui se concentrent sur les performances web comme dans notre cas, il est essentiel de prendre des dĂ©cisions Ă©clairĂ©es. Nous espĂ©rons que cet article vous fournira les outils dont vous avez besoin pour ce faire.

Informations sur l'auteur

Vous avez des doutes ? Vous ne savez pas par oĂč commencer ? Contactez-nous !

Nous avons toutes les réponses à vos questions pour vous aider à faire le bon choix.

Discute avec nous

Discutez directement avec notre support avant-vente.

0256569681

Contactez-nous par téléphone pendant les heures de bureau 9h30 - 19h30

Contactez-nous en ligne

Ouvrez une demande directement dans l'espace contact.

INFORMATIONS

Managed Server Srl est un acteur italien leader dans la fourniture de solutions systÚme GNU/Linux avancées orientées vers la haute performance. Avec un modÚle d'abonnement peu coûteux et prévisible, nous garantissons que nos clients ont accÚs à des technologies avancées en matiÚre d'hébergement, de serveurs dédiés et de services cloud. En plus de cela, nous proposons des conseils systÚme sur les systÚmes Linux et une maintenance spécialisée en SGBD, sécurité informatique, Cloud et bien plus encore. Nous nous distinguons par notre expertise dans l'hébergement de CMS Open Source de premier plan tels que WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart et Magento, soutenus par un service d'assistance et de conseil de haut niveau adapté aux administrations publiques, aux PME et à toutes tailles.

Red Hat, Inc. dĂ©tient les droits de Red HatÂź, RHELÂź, RedHat LinuxÂź et CentOSÂź ; AlmaLinuxℱ est une marque commerciale d'AlmaLinux OS Foundation ; Rocky LinuxÂź est une marque dĂ©posĂ©e de la Rocky Linux Foundation ; SUSEÂź est une marque dĂ©posĂ©e de SUSE LLC ; Canonical Ltd. dĂ©tient les droits sur UbuntuÂź ; Software in the Public Interest, Inc. dĂ©tient les droits sur DebianÂź ; Linus Torvalds dĂ©tient les droits sur LinuxÂź ; FreeBSDÂź est une marque dĂ©posĂ©e de la FreeBSD Foundation ; NetBSDÂź est une marque dĂ©posĂ©e de la Fondation NetBSD ; OpenBSDÂź est une marque dĂ©posĂ©e de Theo de Raadt. Oracle Corporation dĂ©tient les droits sur OracleÂź, MySQLÂź et MyRocksÂź ; PerconaÂź est une marque dĂ©posĂ©e de Percona LLC ; MariaDBÂź est une marque dĂ©posĂ©e de MariaDB Corporation Ab ; REDISÂź est une marque dĂ©posĂ©e de Redis Labs Ltd. F5 Networks, Inc. dĂ©tient les droits sur NGINXÂź et NGINX PlusÂź ; VarnishÂź est une marque dĂ©posĂ©e de Varnish Software AB. Adobe Inc. dĂ©tient les droits sur MagentoÂź ; PrestaShopÂź est une marque dĂ©posĂ©e de PrestaShop SA ; OpenCartÂź est une marque dĂ©posĂ©e d'OpenCart Limited. Automattic Inc. dĂ©tient les droits sur WordPressÂź, WooCommerceÂź et JetPackÂź ; Open Source Matters, Inc. dĂ©tient les droits sur JoomlaÂź ; Dries Buytaert dĂ©tient les droits sur DrupalÂź. Amazon Web Services, Inc. dĂ©tient les droits sur AWSÂź ; Google LLC dĂ©tient les droits sur Google Cloudℱ et Chromeℱ ; Facebook, Inc. dĂ©tient les droits sur FacebookÂź ; Microsoft Corporation dĂ©tient les droits sur MicrosoftÂź, AzureÂź et Internet ExplorerÂź ; La Fondation Mozilla dĂ©tient les droits sur FirefoxÂź. ApacheÂź est une marque dĂ©posĂ©e de The Apache Software Foundation ; PHPÂź est une marque dĂ©posĂ©e du groupe PHP. CloudFlareÂź est une marque dĂ©posĂ©e de Cloudflare, Inc. ; NETSCOUTÂź est une marque dĂ©posĂ©e de NETSCOUT Systems Inc. ; ElasticSearchÂź, LogStashÂź et KibanaÂź sont des marques dĂ©posĂ©es d'Elastic NV. Ce site n'est affiliĂ©, sponsorisĂ© ou autrement associĂ© Ă  aucune des entitĂ©s mentionnĂ©es ci-dessus et ne reprĂ©sente aucune de ces entitĂ©s de quelque maniĂšre que ce soit. Tous les droits sur les marques et noms de produits mentionnĂ©s sont la propriĂ©tĂ© de leurs titulaires respectifs des droits d'auteur. Toutes les autres marques mentionnĂ©es appartiennent Ă  leurs titulaires. MANAGED SERVERÂź est une marque dĂ©posĂ©e au niveau europĂ©en par MANAGED SERVER SRL Via Enzo Ferrari, 9 62012 Civitanova Marche (MC) Italie.

Retour en haut de page