7 min de lecture
Maintenant disponible sur Scalingo - MongoDB 3.4
Nous venons d'activer la possibilité de mettre à niveau vos bases de données MongoDB vers la version 3.4, qui est également la nouvelle version par défaut lorsque vous provisionnez une base de données. Pour ceux qui sont encore bloqués sur la branche 3.2.x, nous avons également publié une nouvelle image pour MongoDB 3.2.16. Comme d'habitude, la mise à niveau est un processus facile en un clic.

Nous venons d'activer la possibilité de mettre à niveau vos bases de données MongoDB vers la version 3.4, qui est également la nouvelle version par défaut lorsque vous provisionnez une base de données. Pour ceux qui sont encore bloqués sur la branche 3.2.x, nous avons également publié une nouvelle image pour MongoDB 3.2.16. Comme d'habitude, la mise à niveau est un processus simple en un clic.
Processus de mise à niveau
En préambule, examinons comment mettre à niveau votre base de données sur Scalingo. Comme d'habitude, le processus de mise à niveau sur Scalingo est aussi simple que de cliquer sur un bouton sur le tableau de bord de la base de données. L'image suivante montre le message que vous verrez sur votre tableau de bord si vous utilisez la dernière version 3.2 (c'est-à-dire MongoDB 3.2.16 au moment de la rédaction) :

Cette mise à niveau peut prendre un certain temps pour les plus grandes bases de données. Pendant le processus, votre base de données sera mise hors ligne. Si vous attendez que le groupe de réplicas soit libéré dans quelques semaines, vous pourrez mettre à niveau votre base de données sans temps d'arrêt.
La version 3.4.7 a été publiée. Comme d'habitude, vous pouvez trouver les images Docker correspondantes sur notre dépôt Docker hub.
Il est fortement conseillé de tester que votre code fonctionne toujours avec la nouvelle version de la base de données. Pour faciliter cette tâche, vous pouvez tirer la version de MongoDB dont vous avez besoin depuis notre dépôt Docker hub public et la tester localement, avec votre code, sur votre station de travail avant de mettre à jour. Vous pouvez également obtenir le même conteneur que nous avons construit pour votre application et qui fonctionne sur notre infrastructure en utilisant notre ajout d'image Docker.
Quoi de neuf dans MongoDB 3.4
MongoDB 3.4 a été publié un an après son prédécesseur, la version 3.2. Cette année de travail a permis à l'équipe MongoDB de vous fournir de nouvelles fonctionnalités intéressantes. Nous allons aborder dans cette section certaines des modifications les plus importantes.
Pour avoir une vue d'ensemble des nouveautés de cette version, vous pouvez consulter la note de version sur le site officiel de MongoDB.
MongoDB 3.4 réussit les tests Jepsen
Début février 2017, une nouvelle extrêmement excitante s'est répandue dans le monde entier, la foule est descendue dans la rue pour célébrer et applaudir l'équipe MongoDB : MongoDB 3.4 réussit les tests Jepsen !
Eh bien... Ce n'est peut-être pas comme ça que cela s'est passé et vous n'avez peut-être jamais entendu parler de ces tests Jepsen, mais cette nouvelle est vraiment importante.
L'initiative Jepsen vise à améliorer la sécurité des systèmes distribués (bases de données, files d'attente, systèmes de consensus, etc.). À cet égard, ils donnent des conférences, des analyses publiques et des cours de formation. Mais ce qui nous intéresse dans cet article, c'est la suite de tests Jepsen : un ensemble de tests de résistance qui mettent un système distribué sous pression avec des échecs extrêmes et des conditions de concurrence aléatoires telles que des horloges non synchronisées et des échecs répétés. Certains considèrent que le passage des tests Jepsen est une référence en matière d'évaluation de la cohérence et de la sécurité des données dans les systèmes distribués.
Plus d'informations dans cet article de blog MongoDB.
Collation multilingue
D'un point de vue plus technique, MongoDB 3.4 apporte une amélioration significative dans la manière dont les chaînes de caractères sont triées. Pour les langues non anglaises, les règles pour comparer deux chaînes sont parfois un peu compliquées. MongoDB a mis en œuvre les règles de comparaison pour plus de 100 langues et régions. Vous pouvez le configurer sur vos propres bases de données en ajoutant une collation à vos index.
Traitement graphique natif
La flexibilité du schéma des bases de données MongoDB vous permet de construire des structures de données vraiment complexes. Certains d'entre vous ont peut-être représenté un graphique ou des hiérarchies de type arbre. Une telle structure met souvent au jour des relations indirectes ou transitives. Par exemple, nous pouvons représenter la structure de l'entreprise Alphabet Inc. comme un arbre. Alphabet Inc. possède de nombreuses entreprises telles que Nest, Calico, DeepMind et Google Inc. Google Inc. possède elle-même Ads, Cloud, YouTube ou Android. Indirectement, Alphabet possède Android.
Pour interroger de telles informations, MongoDB introduit le nouveau pipeline d'agrégation graphLookup. Les développeurs peuvent spécifier une profondeur maximale et appliquer des filtres pour ne rechercher que les nœuds du graphique qui répondent à des prédicats de requête spécifiques.
Plus d'informations dans la documentation officielle.
Quelques changements de compatibilité
Comme pour toute nouvelle version, MongoDB déprécie certaines fonctionnalités et abandonne le support de certaines anciennes fonctionnalités obsolètes. Vous pouvez trouver une liste complète dans la documentation officielle. Vous voudrez peut-être consulter ce document pour vous assurer que votre code fonctionnera toujours avec MongoDB 3.4.
Après une mise à niveau de MongoDB 3.2 à 3.4, certaines nouvelles fonctionnalités ne sont accessibles que si le paramètre featureCompatibilityVersion est mis à jour à 3.4. Notez que pendant le processus de mise à niveau d'une base de données Scalingo, nous mettons à jour ce paramètre.

Étienne Michon
Docteur en informatique, Étienne Michon occupe actuellement le poste d'ingénieur R&D chez Scalingo. Il était l'un des premiers employés de Scalingo et il contribue grandement à faire grandir ce blog grâce à ses articles techniques de qualité.
Restez informé
Recevez des articles et des mises à jour de la plateforme dans votre boîte de réception.
Prêt à déployer en toute confiance ?
Découvrez des déploiements sans temps d'arrêt, une mise à l'échelle automatique intelligente et une infrastructure entièrement gérée. Commencez à déployer vos applications sur Scalingo dès aujourd'hui.
Aucune carte de crédit requise • Déployez en quelques minutes • Annulez à tout moment





