Tout le monde prétend être rapide – mais notre jeûne est plus rapide ! Au cours des dernières semaines, notre équipe a été occupée à évaluer nos systèmes sur Azure et les résultats ont été fantastiques.
Plus tôt cette année, avant de transférer notre infrastructure existante d'AWS vers Azure, nous avons passé beaucoup de temps à comprendre la structure du cloud Azure et à l'optimiser pour obtenir les meilleures performances. La réalité est qu'Azure est assez différent d'AWS et la stratégie de performance qui fonctionne sur un cloud ne fonctionnera probablement pas sur l'autre. Notre équipe de développement a effectué de nombreux travaux personnalisés sur l'architecture de disque que nous utilisons dans nos clusters. L'objectif était de fournir les meilleures performances de disque sur Azure. Pour plus de détails sur nos offres, consultez notre page Hébergement MongoDB sur Azure.
TL;DR
1. Les performances de l'insert ScaleGrid sont au moins 30 % meilleures que celles des autres fournisseurs de mongo.
2. ScaleGrid fournit systématiquement un débit supérieur d'environ 25 % pour les charges de travail équilibrées (50 % en lecture, 50 % en écriture) et en écriture lourde (95 % en écriture, 5 % en lecture).
L'analyse comparative a été effectuée à l'aide de l'outil d'analyse comparative Yahoo Cloud Server Bemark (YCSB). YCSB est un outil assez populaire pour mesurer les performances de MongoDB. L'équipe MongoDB utilise également YCSB pour démontrer les améliorations de performances de MongoDB 3.0 par rapport à MongoDB 2.x. Vous trouverez ci-dessous les résultats de notre configuration "Large" sur Azure - "Standard A3 - 7 Go de mémoire, 4 cœurs, 8 disques RAID, jusqu'à 4 000 IOPS". Il s'agit d'une configuration assez courante utilisée par les clusters de production sur Azure. Tous les tests ont été effectués dans le centre de données Azure US-East.
1. Insérer les performances
Le test de performances d'insertion mesure la capacité d'insertion brute de vos clusters MongoDB. Ceci est particulièrement important pour les clusters qui hébergent une charge de travail lourde en écriture ou en insertion. Le test a été exécuté avec 16 threads YCSB et la durée moyenne du test était de 2 heures :
Résumé :MongoDirector offre un débit d'insertion de 30 à 40 % supérieur à celui des autres fournisseurs mongo sur Azure.
2. Débit et latence
Des mesures de débit et de latence ont été effectuées à la fois pour des charges de travail équilibrées (50 % de lecture, 50 % d'écriture) et également pour des charges de travail lourdes en écriture (95 % d'écriture, 5 % de lecture) :
Résumé :ScaleGrid offre un débit supérieur de 20 à 25 % pour les charges de travail lourdes en lecture et en écriture, tout en offrant systématiquement une latence plus faible.
Même si nos résultats semblent plutôt bons, la réalité est que nous commençons tout juste à utiliser MongoDB sur Azure. Les options de stockage Premium et de SSD local sur Azure amélioreront encore plus cette référence. Restez à l'écoute pendant que nous lançons ces fonctionnalités en production. Plus de détails sur la méthodologie et les paramètres spécifiques seront fournis par notre équipe de développement dans des publications ultérieures.
Si vous avez des questions spécifiques sur les performances d'une taille particulière ou d'une configuration de cluster MongoDB, veuillez nous contacter à l'adresse [email protected].