Étapes d’optimisation post-migration lors de l’utilisation de l’API Azure Cosmos DB pour MongoDB
S’APPLIQUE À : MongoDB
Important
Veuillez lire ce guide dans son intégralité avant de suivre les étapes postmigration.
Ce guide de postmigration de MongoDB fait partie d'une série consacrée à la migration de MongoDB. Les principales étapes de migration de MongoDB sont la prémigration, la migration proprement dite et la postmigration, comme indiqué ci-dessous.
Présentation de la postmigration
Après avoir migré les données stockées dans la base de données MongoDB vers l’API Azure Cosmos DB pour MongoDB, vous pouvez vous connecter à Azure Cosmos DB et gérer les données. Ce guide fournit les étapes que vous pouvez effectuer après la migration. Pour connaître les étapes de migration, consultez le tutoriel Migrer MongoDB vers l’API Azure Cosmos DB pour MongoDB.
Suivez les étapes ci-dessous pour effectuer une postmigration :
- Optimiser la stratégie d’indexation
- Configurer la distribution mondiale à l’aide de l’API Azure Cosmos DB pour MongoDB
- Définir le niveau de cohérence
- Connecter (basculer) votre application
- Ajuster pour bénéficier de performances optimales
Notes
La seule étape obligatoire après la migration consiste à modifier la chaîne de connexion dans votre application pour qu'elle pointe vers votre nouveau compte Azure Cosmos DB. Toutes les autres étapes postmigration sont des optimisations recommandées pour améliorer les performances de la couche de données. Toutefois, si vous procédez immédiatement au basculement de l'application sans passer par les autres étapes, votre application verra immédiatement l'impact d'une indexation et d'une cohérence non optimales. Plus précisément, si vous procédez au basculement avant de configurer vos index, l'application peut voir une baisse immédiate de prix/performances. Sachez que ce problème peut être résolu – une fois l'index optimisé, Azure Cosmos DB devrait souvent surpasser la solution de statu quo en termes de prix et de performances.
Conditions préalables
Dans ce guide, nous supposons que vous tenez un registre de la progression de votre migration à l'aide d'un document de suivi tel qu'une feuille de calcul. Si ce n'est déjà fait, nous vous recommandons de lire le Guide de prémigration afin d'obtenir des conseils sur la création d'une feuille de calcul de migration du patrimoine de données, la découverte de vos ressources MongoDB existantes et la planification de votre migration.
Optimiser la stratégie d’indexation
Afin d'optimiser le prix et les performances, nous vous recommandons de passer en revue votre feuille de calcul de migration du patrimoine de données et de concevoir une configuration d'index pour chaque ressource.
- Nous vous recommandons en fait de planifier vos index pendant la phase de prémigration. Ajoutez une colonne à votre feuille de calcul de migration du patrimoine de données pour les paramètres d'index.
Les versions 3.6 du serveur Azure Cosmos DB for MongoDB et les versions ultérieures indexent automatiquement le champ _id (et uniquement ce champ). Ce champ ne peut pas être supprimé. Elle applique automatiquement l'unicité du champ _id par clé de partition. Pour indexer des champs supplémentaires, appliquez les commandes de gestion d’index MongoDB. Cette stratégie d’indexation par défaut est différente de celle d’Azure Cosmos DB for NoSQL, qui indexe tous les champs par défaut.
Avec la version 3.2 du serveur Azure Cosmos DB for MongoDB, tous les champs de données sont automatiquement indexés par défaut lors de la migration des données vers Azure Cosmos DB. Dans de nombreux cas, cette stratégie d’indexation par défaut est acceptable. En général, la suppression des index optimise les requêtes d’écriture, et l’application de la stratégie d’indexation par défaut (autrement dit, l’indexation automatique) optimise les requêtes de lecture.
Les capacités d’indexation fournies par Azure Cosmos DB incluent l’ajout d’index composites, d’index uniques et d’index de durée de vie (index TTL). L'interface de gestion des index est mappée avec la commande createIndex(). Pour en savoir plus, consultez Indexation dans Azure Cosmos DB et Indexation dans l'API Azure Cosmos DB pour MongoDB.
- Appliquez ces paramètres d'index pendant la postmigration.
- Azure Database Migration Service migre automatiquement les collections MongoDB avec des index uniques. Toutefois, les index uniques doivent être créés avant la migration. Azure Cosmos DB ne prend pas en charge la création d’index uniques quand il existe déjà des données dans vos collections. Pour plus d’informations, consultez Clés uniques dans Azure Cosmos DB.
Distribuer vos données dans le monde
Azure Cosmos DB est disponible dans toutes les régions Azure à travers le monde.
- Suivez les instructions de l'article Distribuer les données à l'échelle mondiale sur l'API Azure Cosmos DB pour MongoDB afin de distribuer vos données dans le monde entier. Après avoir sélectionné le niveau de cohérence par défaut pour votre compte Azure Cosmos DB, vous pouvez associer une ou plusieurs régions Azure (en fonction de vos besoins de distribution mondiale). Pour une haute disponibilité et une continuité d’activité, nous recommandons toujours une exécution dans au moins deux régions. Vous pouvez consulter les conseils d’optimisation du coût des déploiements dans plusieurs régions dans Azure Cosmos DB.
Définir le niveau de cohérence
Azure Cosmos DB offre cinq niveaux de cohérence bien définis. Pour en savoir plus sur les correspondances entre les niveaux de cohérence MongoDB et Azure Cosmos DB, consultez Niveaux de cohérence et API Azure Cosmos DB. Le niveau de cohérence par défaut est le niveau de cohérence de la session. Le changement du niveau de cohérence est facultatif, et vous pouvez l’optimiser pour votre application. Pour changer le niveau de cohérence à l’aide du portail Azure :
- Accédez au panneau Cohérence par défaut sous Paramètres.
- Sélectionnez votre niveau de cohérence
La plupart des utilisateurs laissent le niveau de cohérence sur le paramètre de cohérence de session par défaut. Toutefois, il existe des compromis entre disponibilité et performances pour différents niveaux de cohérence.
Connecter ou basculer votre application
Le traitement du basculement ou de la connexion de votre application vous permet de basculer votre application pour qu'elle utilise Azure Cosmos DB une fois la migration terminée. Effectuez les étapes ci-dessous :
- Dans une nouvelle fenêtre, connectez-vous au portail Azure.
- Dans le portail Azure, dans le volet gauche, ouvrez le menu Toutes les ressources et recherchez le compte Azure Cosmos DB vers lequel vous avez migré vos données.
- Ouvrez le panneau Chaîne de connexion. Le volet droit contient toutes les informations dont vous avez besoin pour vous connecter à votre compte.
- Utilisez les informations de connexion dans la configuration de votre application (ou d’autres emplacements pertinents) afin de refléter la connexion de l’API Azure Cosmos DB pour MongoDB dans votre application.
Pour plus d’informations, consultez la page Connecter une application MongoDB à Azure Cosmos DB.
Ajuster pour bénéficier de performances optimales
L'indexation, la distribution à l'échelle mondiale et la cohérence peuvent toutes être facilement configurées et reconfigurées en fonction de vos besoins. Par conséquent, après avoir basculé votre application, nous vous recommandons de surveiller ses performances et, si nécessaire, d'ajuster ces paramètres en fonction de ses exigences.
Étapes suivantes
- Vous tentez d’effectuer une planification de la capacité pour une migration vers Azure Cosmos DB ?
- Si vous ne connaissez que le nombre de vCores et de serveurs présents dans votre cluster de bases de données existant, lisez Estimation des unités de requête à l’aide de vCores ou de processeurs virtuels
- Si vous connaissez les taux de requêtes typiques de votre charge de travail de base de données actuelle, lisez la section concernant l’estimation des unités de requête à l’aide du planificateur de capacité Azure Cosmos DB
- Connecter une application MongoDB à Azure Cosmos DB
- Se connecter à un compte Azure Cosmos DB à l’aide de Studio 3T
- Guide pratique pour distribuer à l’échelle mondiale des lectures par l’intermédiaire de l’API Azure Cosmos DB pour MongoDB
- Faire expirer des données avec l’API Azure Cosmos DB pour MongoDB
- Niveaux de cohérence dans Azure Cosmos DB
- Indexation dans Azure Cosmos DB
- Unités de requête dans Azure Cosmos DB