MySQL est la base de données open source numéro un de tous les temps dans le monde et un incontournable dans l'espace RDBMS. DigitalOcean construit rapidement sa réputation de cloud pour les développeurs en fournissant une plate-forme cloud abordable, flexible et facile à utiliser avec laquelle les développeurs peuvent travailler. MySQL sur DigitalOcean est un choix naturel, mais quelle est la meilleure façon de déployer votre base de données cloud ? Dans cet article, nous allons comparer les deux principaux fournisseurs, les bases de données gérées DigitalOcean pour MySQL et l'hébergement ScaleGrid MySQL sur DigitalOcean.
En un coup d'œil – TLDR | ||||||
---|---|---|---|---|---|---|
|
Indice de référence des performances de MySQL DigitalOcean
Dans ce benchmark, nous comparons des tailles de plan équivalentes entre ScaleGrid MySQL sur DigitalOcean et DigitalOcean Managed Databases pour MySQL. Nous allons utiliser une taille de plan courante et populaire en utilisant les configurations ci-dessous pour ce test de performances :
Aperçu de la comparaison
Grille d'échelle | DigitalOcean | |
---|---|---|
Type d'instance | Moyen :4 vCPU | Moyen :4 vCPU |
Version MySQL | 8.0.20 | 8.0.20 |
RAM | 8 Go | 8 Go |
SSD | 140 Go | 115 Go |
Type de déploiement | Autonome | Autonome |
Région | SF03 | SF03 |
Soutien | Inclus | Assistance au niveau de l'entreprise incluse avec les tailles de compte supérieures à 500 $/mois |
Prix mensuel | 120 $ | 120 $ |
Comme vous pouvez le voir ci-dessus, ScaleGrid et DigitalOcean offrent les mêmes configurations de plan pour cette taille de plan, à l'exception du SSD où ScaleGrid fournit plus de 20 % de stockage en plus pour le même prix.
Pour garantir les résultats les plus précis dans nos tests de performances, nous exécutons le test quatre fois pour chaque comparaison afin de trouver les performances moyennes en termes de débit et de latence sur les charges de travail intensives en lecture, les charges de travail équilibrées , et les charges de travail intensives en écriture.
Débit
Dans ce benchmark, nous mesurons le débit de MySQL en termes de requêtes par seconde (RPS) pour mesurer l'efficacité de nos requêtes. Pour résumer rapidement les résultats, nous affichons ci-dessous les moyennes de charges de travail intensives en lecture, en écriture et équilibrées pour 150 threads pour ScaleGrid par rapport à DigitalOcean MySQL :
Pour la comparaison commune de 150 threads, ScaleGrid affiche un débit moyen de près de 40 % supérieur à celui de DigitalOcean pour MySQL, avec jusqu'à 46 % de plus débit dans les charges de travail intensives en écriture. |
Benchmark de débit de lecture intensive
Fils clients | ScaleGrid | DigitalOcean | Amélioration de ScaleGrid |
---|---|---|---|
25 | 10 576 | 7 268 | 45,5 % |
50 | 12 374 | 8 598 | 43,9 % |
100 | 12 984 | 9 215 | 40,9 % |
150 | 12 845 | 9 590 | 33,9 % |
175 | 13 247 | 9 720 | 36,3 % |
200 | 12 916 | 9 677 | 33,5 % |
Pour les charges de travail intensives en lecture, ScaleGrid pour MySQL affiche un débit moyen de 39 % supérieur à celui des bases de données gérées DigitalOcean sur tous les nombres de threads.
Benchmark de débit de charge de travail équilibré
Fils clients | ScaleGrid | DigitalOcean | Amélioration de ScaleGrid |
---|---|---|---|
25 | 7 915 | 6 415 | 23,4 % |
50 | 9 725 | 7 613 | 27,7 % |
100 | 11 106 | 8 512 | 30,5 % |
150 | 11 936 | 8 552 | 39,6 % |
175 | 12 287 | 8 447 | 45,5 % |
200 | 12 507 | 8 579 | 45,8 % |
Pour des charges de travail équilibrées, ScaleGrid pour MySQL affiche un débit moyen de 35,4 % supérieur à celui des bases de données gérées DigitalOcean sur tous les nombres de threads. La plus grande amélioration des performances peut être observée dans les lignes de nombre de threads plus élevés de 175 et 200 threads où ScaleGrid atteint un débit supérieur de plus de 45 %.
Benchmark de débit intensif en écriture
Fils clients | ScaleGrid | DigitalOcean | Amélioration de ScaleGrid |
---|---|---|---|
25 | 6 595 | 5 353 | 23,2 % |
50 | 7 781 | 6 384 | 21,9 % |
100 | 9 268 | 7 132 | 29,9 % |
150 | 10 409 | 7 124 | 46,1 % |
175 | 10 338 | 7 075 | 46,1 % |
200 | 10 503 | 7 176 | 46,4 % |
Pour les charges de travail intensives en écriture, ScaleGrid pour MySQL affiche un débit moyen de 35,6 % supérieur à celui des bases de données gérées DigitalOcean sur tous les nombres de threads. Comme vous pouvez le voir dans le tableau ci-dessus, ScaleGrid atteint un débit supérieur de 46 % en nombre de threads de plus de 150 threads sur DigitalOcean.
Latence
Maintenant que nous avons comparé les performances de débit, examinons la latence de ScaleGrid par rapport à DigitalOcean pour MySQL. Nous mesurons la latence en ms de latence au 95e centile, et comparons à nouveau les charges de travail à lecture intensive, à écriture intensive et équilibrées.
Dans le graphique ci-dessus, nous comparons la latence de ScaleGrid à celle de DigitalOcean MySQL sur les charges de travail courantes pour 150 threads, et voyons cela sur moyenne, ScaleGrid atteint une latence inférieure de près de 30 % par rapport à DigitalOcean pour les mêmes configurations de déploiement. |
Réduisez la latence #MySQL de 30 % sur DigitalOcean, avec des performances de débit 40 % supérieuresClick To Tweet
Benchmark de latence intensive en lecture
Fils clients | ScaleGrid | DigitalOcean | Amélioration de ScaleGrid |
---|---|---|---|
25 | 61 | 92 | -33,8 % |
50 | 112 | 152 | -26,4 % |
100 | 213 | 279 | -23,6 % |
150 | 336 | 419 | -19,9 % |
175 | 388 | 496 | -21,8 % |
200 | 456 | 594 | -23,2 % |
En moyenne, ScaleGrid pour MySQL a obtenu une latence inférieure de 24,8 % par rapport aux bases de données gérées DigitalOcean à partir de scénarios à lecture intensive sur tous les nombres de threads.
Benchmark de latence de charge de travail équilibrée
Fils clients | ScaleGrid | DigitalOcean | Amélioration de ScaleGrid |
---|---|---|---|
25 | 39 | 53 | -26,3 % |
50 | 67 | 87 | -23,6 % |
100 | 117 | 158 | -25,7 % |
150 | 170 | 246 | -30,8 % |
175 | 197 | 300 | -34,3 % |
200 | 222 | 342 | -35,1 % |
En moyenne, ScaleGrid pour MySQL a obtenu une latence inférieure de 29,3 % par rapport aux bases de données gérées DigitalOcean à partir de scénarios de charge de travail équilibrés sur tous les nombres de threads. Plus particulièrement, la latence des scénarios de 175 et 200 threads a été réduite de plus d'un tiers chez ScaleGrid.
Si vous déployez également PostgreSQL et que vous souhaitez voir comment ces deux fournisseurs se comparent en termes de débit et de latence, consultez notre Comparaison des performances et des prix de PostgreSQL DigitalOcean - ScaleGrid vs DigitalOcean Managed Publication de bases de données
Benchmark de latence intensive en écriture
Fils clients | ScaleGrid | DigitalOcean | Amélioration de ScaleGrid |
---|---|---|---|
25 | 45 | 55 | -17,5 % |
50 | 74 | 93 | -20,9 % |
100 | 119 | 166 | -28,5 % |
150 | 164 | 261 | -37,4 % |
175 | 192 | 311 | -38,1 % |
200 | 219 | 359 | -38,9 % |
En moyenne, ScaleGrid pour MySQL a obtenu une latence inférieure de 29,3 % par rapport aux bases de données gérées DigitalOcean à partir de charges de travail intensives en écriture sur tous les nombres de threads. En particulier, les scénarios avec 150 threads ou plus ont obtenu une latence inférieure de plus de 37 % à ScaleGrid par rapport à DigitalOcean.
Configuration de l'analyse comparative MySQL
Voici une ventilation des configurations de référence que nous avons utilisées pour comparer les déploiements MySQL chez ScaleGrid et DigitalOcean.
Configuration Sysbench
Configuration | Détails |
---|---|
Outil | Sysbench version 1.0.20 |
Hôte | Région SF03 moyenne (4 processeurs virtuels, 8 Go de RAM) |
# tableaux | 100 |
# lignes par tableau | 2 000 000 |
# fils | 25-200 |
Répartition des nombres aléatoires | Uniforme |
Nous avons utilisé deux gouttelettes DigitalOcean pour comparer chaque instance simultanément.
Paramètres MySQL
Configuration | Grille d'échelle | DigitalOcean |
---|---|---|
Version MySQL | 8.0.20 | 8.0.20 |
innodb_buffer_pool_size | 5 Go | 3,6 Go |
innodb_log_file_size | 1 | 2.2 |
Innodb_io_capacity | 3 000 | 200 |
innodb_io_capacity_max | 6 000 | 2 000 |
binlog_group_commit_sync_delay | 0 | 0 |
DigitalOcean ne vous permet pas de personnaliser vos configurations MySQL, c'est pourquoi elles sont limitées aux valeurs par défaut affichées ici. Chez ScaleGrid, vous pouvez personnaliser vos configurations MySQL afin d'optimiser votre déploiement pour votre cas d'utilisation unique.
Charge de travail intensive en lecture
80 % de lectures et 20 % d'écritures, avec 12 lectures et 3 écritures par transaction.
Charge de travail équilibrée
50 % de lectures et 50 % d'écritures, exécutant 3 sélections, 1 insertion, 1 mise à jour et 1 suppression dans le cadre de chaque transaction.
Charge de travail intensive en écriture
20 % de lectures et 80 % d'écritures, avec 4 écritures et 1 lecture pour chaque transaction.
MySQL sur les tarifs de DigitalOcean
La tarification est bien sûr l'une des considérations les plus importantes lorsqu'il s'agit d'investir dans une infrastructure. Heureusement, comme nous l'avons indiqué ci-dessus, la tarification de ScaleGrid est la même que celle de DigitalOcean pour MySQL en ce qui concerne la RAM et les vCPU dans les déploiements autonomes, à 2 et 3 nœuds :
Bien que le prix soit le même, ScaleGrid offre également, en moyenne, 30 % de stockage en plus pour le même prix que DigitalOcean, et comme nous l'avons découvert ci-dessus, il offre également des performances nettement supérieures. Les deux fournisseurs offrent également un support pour PostgreSQL et Redis au même prix, et ScaleGrid est le seul DBaaS à offrir un support pour la base de données MongoDB® sur DigitalOcean.
ScaleGrid propose également une taille de forfait Nano avec 1 Go de RAM, 1 cœur et 18 Go de stockage pour seulement 10 $/mois. Il s'agit d'un excellent plan abordable pour les projets de développeurs. De plus, ScaleGrid propose un programme de démarrage où les entreprises en démarrage peuvent obtenir 50 % de réduction sur leur hébergement MySQL sur DigitalOcean pendant 12 mois maximum.
Fonctionnalités pour MySQL DigitalOcean
ScaleGrid et DigitalOcean offrent les fonctionnalités DBaaS de base, telles que la mise à l'échelle, les restaurations et les alertes que nous attendons d'un fournisseur de bases de données gérées. Mais, comme tout DBA le sait, la gestion d'un déploiement ne se limite pas aux bases. Jetons un coup d'œil à certaines des fonctionnalités avancées de MySQL proposées entre ScaleGrid et DigitalOcean :
ScaleGrid MySQL | MySQL DigitalOcean | |
---|---|---|
Versions MySQL prises en charge | 5.6.x, 5.7.x, 8.0.x | 8.0.x |
Accès super utilisateur MySQL | Oui | Non |
Options de réplication | Semi-synchrone et asynchrone | Asynchrone |
Gestion et réglage de la configuration MySQL | Oui | Non |
Analyse des requêtes lentes à la demande | Oui | Non |
Assistance 24h/24 et 7j/7 incluse | Oui | Assistance commerciale uniquement disponible pour les comptes supérieurs à 500 $/mois |
Ce ne sont là que quelques-unes des fonctionnalités avancées de gestion de MySQL. Pour comparer la liste complète, consultez la page ScaleGrid vs DigitalOcean MySQL.