Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Cosmos DB vous permet de configurer le débit standard (manuel) ou de mise à l’échelle automatique pour les bases de données et les conteneurs. La mise à l’échelle automatique ajuste le débit (RU/s) pour qu’elle corresponde à votre charge de travail, ce qui garantit des performances élevées et une efficacité des coûts.
Cas d’utilisation
Le débit provisionné à la mise à l’échelle automatique est idéal pour les charges de travail critiques avec des modèles de trafic variables ou imprévisibles, et qui nécessitent des contrats de niveau de service (SLA) pour des performances et une mise à l’échelle élevées. La mise à l'échelle automatique par défaut fait évoluer les charges de travail en fonction de la région et de la partition les plus actives. Pour les charges de travail non uniformes qui ont différents modèles de charges de travail entre les régions et les partitions, cette mise à l’échelle peut entraîner des scale-ups inutiles. La mise à l'échelle dynamique ou la mise à l'échelle automatique dynamique est une amélioration de la mise à l'échelle automatique provisionnée qui permet la mise à l'échelle de ces charges de travail non uniformes de manière indépendante en fonction de l'utilisation, au niveau de chaque région et de chaque partition. La mise à l’échelle dynamique permet d’économiser des coûts si vous rencontrez souvent des partitions chaudes ou si plusieurs régions sont présentes.
Avantages de la mise à l’échelle automatique
Les bases de données et conteneurs Azure Cosmos DB configurés avec un débit approvisionné en mode de mise à l’échelle automatique présentent les avantages suivants :
Simple : la mise à l’échelle automatique simplifie la gestion des RU/s en éliminant la nécessité d’un script personnalisé ou d’une mise à l’échelle manuelle.
Évolutifs : Les bases de données et les conteneurs mettent automatiquement à l’échelle le débit approvisionné le cas échéant. Les connexions client et les applications ne sont pas interrompues et il n’y a aucun impact sur les contrats de niveau de service Azure Cosmos DB.
Rentable : la mise à l’échelle automatique optimise les RU/s et les coûts en effectuant un scale-down lorsqu’elles ne sont pas utilisées. Vous payez uniquement les ressources dont vos charges de travail ont besoin par heure. Si vous utilisez la totalité
Tmaxpour 66 % ou moins d’heures en un mois, la mise à l’échelle automatique peut réduire les coûts. La mise à l’échelle dynamique rend également l’ajout d’une région secondaire pour une haute disponibilité plus économique, car chaque région et chaque partition s’adapte indépendamment en fonction de l’utilisation. Apprenez-en davantage sur la façon de choisir entre l’article de débit provisionné standard (manuel) et de mise à l’échelle automatique.Hautement disponible : les bases de données et les conteneurs avec mise à l’échelle automatique utilisent le back-end Azure Cosmos DB distribué à l’échelle mondiale et tolérant aux pannes pour garantir la durabilité et la disponibilité des données.
Cas d’utilisation de la mise à l’échelle automatique
Les cas d’utilisation pour la mise à l’échelle automatique sont les suivants :
Charges de travail imprévisibles ou variables : Lorsque vos charges de travail ont des pics variables ou imprévisibles dans le cadre de l’utilisation, la mise à l’échelle automatique vous aide à mettre à l’échelle automatiquement vers le bas ou vers le haut en fonction de l’utilisation. Les exemples incluent des sites web de vente au détail avec des modèles de trafic saisonnier, des charges de travail IoT avec des pics d’utilisation quotidiens et des applications métier avec des pics d’utilisation occasionnels. La mise à l’échelle automatique élimine la nécessité d’allouer manuellement le débit pour les pics ou la capacité moyenne.
Nouvelles applications : si vous développez une nouvelle application et que vous ne savez pas le débit (RU/s) nécessaire, la mise à l’échelle automatique simplifie la prise en main. Vous pouvez commencer avec le point de départ de la mise à l'échelle automatique de 100 à 1000 RU/s, surveiller votre utilisation et déterminer la capacité RU/s appropriée au fil du temps.
Applications rarement utilisées : si vous avez une application utilisée uniquement pendant quelques heures plusieurs fois par jour, semaine ou mois, par exemple une application à faible volume, un site web ou un blog. La mise à l'échelle automatique ajuste la capacité pour gérer les pics d'utilisation et diminue lorsqu'ils sont terminés.
Charges de travail de développement et de test :si votre équipe ou vous-même utilisez des bases de données et des conteneurs Azure Cosmos DB pendant les heures de travail, mais que vous n’en avez pas besoin la nuit ou pendant le week-end, la mise à l’échelle automatique vous permet de réduire les coûts en réduisant au minimum en cas de non-utilisation.
Charges de travail/requêtes de production planifiées : Si vous avez une série de demandes, d’opérations ou de requêtes planifiées que vous souhaitez exécuter pendant les périodes d’inactivité, vous pouvez le faire facilement avec la mise à l’échelle automatique. Lorsque la charge de travail s’exécute, le débit est automatiquement mis à l’échelle vers la valeur requise et diminue ensuite.
La création d’une solution personnalisée à ces problèmes nécessite beaucoup de temps et ajoute de la complexité à la configuration ou au code de votre application. La mise à l’échelle automatique met en œuvre les scénarios prêts à l’emploi ci-dessus et élimine la nécessité d’une mise à l’échelle personnalisée ou manuelle de la capacité.
Cas d'utilisation de la mise à l'échelle dynamique
Les cas d’utilisation de la mise à l’échelle dynamique incluent :
- Charges de travail de bases de données qui ont une région primaire à trafic élevé et une région passive secondaire pour la récupération d’urgence.
- Avec la mise à l’échelle dynamique, l’obtention de la haute disponibilité avec plusieurs régions est plus rentable. La région secondaire effectue un scale-down de manière indépendante et automatique lorsqu’elle est inactive. La région secondaire effectue également un scale-up de manière automatique lorsqu’elle devient active et lors de la gestion du trafic de la réplication d’écriture de la région principale.
- Charges de travail de bases de données multirégions
- Ces charges de travail connaissent souvent une répartition inégale des demandes entre les régions en raison de la croissance et des chutes du trafic naturel tout au long de la journée. Par exemple, une base de données est active pendant les heures d’ouverture sur les fuseaux horaires distribués dans le monde entier.
Fonctionnement du débit de mise à l’échelle automatique
Lors de la configuration de conteneurs et de bases de données avec mise à l’échelle automatique, vous devez spécifier le débit maximal Tmax requis. Azure Cosmos DB met à l’échelle le débit T afin que 0.1*Tmax <= T <= Tmax. Par exemple, si vous définissez le débit maximal à 20 000 RU/s, le débit peut varier entre 2 000 et 20 000 RU/s. La mise à l’échelle est automatique et instantanée, vous pouvez donc consommer jusqu’à l’approvisionnement Tmax à tout moment sans délai.
Vous êtes facturé pour chaque heure pour le débit T le plus élevé auquel le système est mis à l’échelle pendant cette heure. Lorsque la mise à l’échelle dynamique est activée, la mise à l’échelle est basée sur l’utilisation de RU/s à chaque partition physique et région. Comme chaque partition et chaque région évoluent indépendamment, cette facturation peut conduire à des économies de coûts pour les charges de travail non uniformes, car les mises à l'échelle inutiles sont évitées.
Le point d’entrée pour le débit Tmax maximal de mise à l’échelle automatique est de 1 000 RU/s, avec une mise à l’échelle comprise entre 100 et 1 000 RU/s. Vous pouvez définir Tmax par incréments de 1 000 RU/s et modifier la valeur à tout moment.
Par exemple, si une collection a 1 000 RU/s et 2 partitions, chaque partition peut monter en puissance jusqu’à 500 RU/s. Pendant une heure d’activité, l’utilisation ressemble à ceci :
| Région | Séparation | Débit | Utilisation | Remarques |
|---|---|---|---|---|
| Écrire | P1 | < = 500 RU/s | 100 % | 500 RU/s composées de 50 RU/s utilisées pour les opérations d’écriture et 450 RU/s pour les opérations de lecture. |
| Écrire | P2 | < = 200 RU/s | 40 % | 200 RU/s comprenant toutes les opérations de lecture. |
| Lire | P1 | < = 150 RU/s | 30 % | 150 RU/s comprenant 50 RU/s utilisées pour les écritures répliquées à partir de la région d’écriture. 100 RU/s sont utilisés pour les opérations de lecture dans cette région. |
| Lire | P2 | < = 50 RU/s | 10 % |
Sans mise à l’échelle dynamique, le système met à l’échelle toutes les partitions de manière uniforme en fonction de la partition la plus chaude. Dans cet exemple, étant donné que la partition la plus chaude avait une utilisation de 100 %, toutes les partitions des régions d'écriture et de lecture sont mises à l'échelle à 1 000 RU/s, ce qui porte le nombre total de RU/s à 2 000 RU/s.
Avec la mise à l’échelle dynamique, chaque partition et le débit de la région sont mis à l’échelle indépendamment, ce qui entraîne un total de 900 RU/s, ce qui reflète mieux le modèle de trafic réel et réduit les coûts.
Activation de la mise à l'échelle automatique sur les ressources existantes
Pour activer la mise à l'échelle automatique sur une base de données ou un conteneur existant, utilisez le portail Azure, l'interface CLI ou PowerShell. Basculez entre la mise à l’échelle automatique et le débit approvisionné standard (manuel) à tout moment. Pour plus d’informations, consultez cette documentation.
Limites de débit et de stockage pour la mise à l’échelle automatique
Pour toute valeur de Tmax, la base de données ou le conteneur stocke un total de 0.1 * Tmax GB. Une fois cette quantité de stockage atteinte, le nombre maximal de RU/s augmente automatiquement en fonction de la nouvelle valeur de stockage sans impacter votre application.
Par exemple, si vous démarrez avec des RU/S maximales de 50 000 (avec une mise à l’échelle de 5000 à 50 000 RU/s), vous pouvez stocker jusqu’à 5 000 Go de données. Si le stockage dépasse 5 000 Go, par exemple atteindre 6 000 Go, le nouveau nombre maximal de RU/s devient de 60 000 RU/s (est mis à l’échelle entre 6 000 et 60 000 RU/s).
Quand vous utilisez le débit RU/s au niveau de la base de données avec la mise à l’échelle automatique, les 25 premiers conteneurs peuvent partager un débit maximal de 1 000 RU/s (évoluant entre 100 et 1 000 RU/s), à condition que vous ne dépassiez pas 100 Go de stockage. Pour plus d’informations, consultez cette documentation.
Activation de la mise à l’échelle dynamique
La mise à l’échelle dynamique est activée par défaut pour tous les comptes Azure Cosmos DB créés après le25 septembre 2024. Les clients qui souhaitent activer cette fonctionnalité pour leurs comptes plus anciens peuvent le faire par programme via Azure PowerShell, CLI, API REST ou à partir du volet fonctionnalités du portail Azure, comme indiqué :
Accédez à votre compte Azure Cosmos DB dans le portail Azure.
Sélectionnez la page Fonctionnalités.
Recherchez et activez la fonctionnalité de mise à l’échelle dynamique (par région et par partition automatique).
Important
La fonctionnalité est activée au niveau du compte, de sorte que tous les conteneurs de mise à l’échelle automatique et les bases de données de débit partagé de mise à l’échelle automatique au sein du compte ont automatiquement cette fonctionnalité appliquée. L’activation de cette fonctionnalité n’affecte pas les ressources du compte qui utilisent un débit manuel. Les ressources manuelles doivent être modifiées en mise à l’échelle automatique pour tirer parti de la mise à l’échelle dynamique. L’activation de cette fonctionnalité n’a aucun temps d’arrêt ni impact sur les performances. Cette fonctionnalité n’est pas applicable aux comptes serverless. Cette fonctionnalité est prise en charge sur tous les clouds.
Surveillance des métriques
Vous pouvez utiliser les mesures suivantes pour surveiller la mise à l'échelle automatique et la mise à l'échelle dynamique :
| Nom de métrique | Définition | Utilisation de la métrique |
|---|---|---|
| Débit approvisionné | Affiche les RU/s les plus élevées agrégées mises à l’échelle sur l’heure et représente le nombre total de RU/s mises à l’échelle pour l’heure. | Vous pouvez utiliser la métrique Provisioned Throughput pour voir les RU/s pour lesquelles vous êtes facturé par heure. Avec la mise à l’échelle automatique, vous êtes facturé en fonction de la partition la plus active pour chaque heure, et la même chose s’applique à toutes les partitions et régions. Avec la mise à l’échelle automatique dynamique, nous vous facturons les RU/s les plus élevées agrégées par heure au niveau de chaque partition et région. |
| Consommation de RU normalisée | Cette métrique représente le rapport entre Les RU/s consommées et les RU/s approvisionnées au niveau de chaque partition et région. | Utilisez cette métrique pour déterminer si le débit maximal de mise à l’échelle automatique est insuffisamment approvisionné ou trop approvisionné. Si la valeur de la métrique est constamment à 100 % et que votre application voit la limitation du débit (code d’erreur 429), vous avez peut-être besoin de plus de RU/s. En revanche, si la valeur de cette métrique est faible et qu’il n’y a pas de limitation de débit, il peut y avoir de la place pour optimiser et réduire le nombre de RU/s. En savoir plus sur l’interprétation et le débogage des erreurs de code 429 de limitation de débit. La métrique Normalized RU Consumption reflète les RU/s consommées dans la région secondaire en raison du trafic de réplication en écriture à partir du serveur principal, en plus de tout trafic de lecture sur le serveur secondaire. |
| RU mises à l’échelle automatiquement | Affiche le débit provisionné à l’échelle dynamique à chaque niveau de partition et à chaque niveau de région uniquement pour les comptes avec mise à l’échelle automatique dynamique. | Utilisez cette métrique pour voir comment les partitions de chaque région sont mises à l’échelle indépendamment en fonction de leur utilisation. Utilisez les métriques Azure Monitor, Autoscaled RU, pour analyser la façon dont la nouvelle mise à l’échelle automatique est appliquée entre les partitions et les régions. Filtrez selon le compte et le conteneur de base de données que vous souhaitez, puis filtrez ou fractionnez en fonction de la métrique Physical PartitionID. Cette métrique montre toutes les partitions à travers leurs différentes régions. |
Important
Nous vous recommandons d’utiliser la fonctionnalité de mise à l’échelle dynamique native d’Azure Cosmos DB pour gérer votre capacité. Toutefois, si nécessaire, la métrique consommation de RU normalisée dans Azure Monitor peut être utilisée pour prendre des décisions de mise à l’échelle par programmation. D’autres approches, telles que l’utilisation de l’appel ReadThroughputAsync() dans les kits de développement logiciel Azure Cosmos DB (SDK) pour obtenir la valeur ProvisionedThroughput, ou l’utilisation de la métrique ProvisionedThroughput dans Azure Monitor n’est pas recommandée et entraîne des résultats incorrects. Ces métriques représentent le débit facturé avec un délai et ne doivent pas être utilisées pour les décisions de mise à l’échelle.
Comparaison : conteneurs configurés en mode manuel contre débit de mise à l’échelle automatique
Pour plus d’informations, consultez cette documentation sur le choix entre le débit standard (manuel) et le débit de mise à l’échelle automatique.
| Conteneurs avec débit standard (manuel) | Conteneurs avec débit de mise à l’échelle automatique | |
|---|---|---|
| Débit approvisionné (RU/s) | Approvisionné manuellement. | Mise à l’échelle automatique et instantanée en fonction des modèles d’utilisation de la charge de travail. |
| Limitation du nombre de demandes/opérations (429) | Peut se produire si la consommation dépasse la capacité approvisionnée. | Cela ne se produit pas si vous consommez un nombre de RU/s dans la plage de débit de mise à l’échelle automatique configurée. |
| Planification de la capacité | Vous devez planifier la capacité et définir le débit exact dont vous avez besoin. | Le système gère automatiquement la planification et la gestion de la capacité. |
| Tarification | Vous payez pour les RU/s approvisionnées manuellement par heure, selon le tarif horaire standard (manuel). | Vous payez par heure le nombre de RU/s le plus élevé pour lequel le système effectue un scale-up dans l’heure. Pour les comptes à une seule région d’écriture, vous payez le nombre de RU/s utilisé sur une base horaire, en utilisant le taux horaire de RU/s de mise à l’échelle automatique. Pour les comptes à plusieurs régions d’écriture, aucuns frais supplémentaires ne s’appliquent au mode de mise à l’échelle automatique. Vous payez le débit utilisé sur une base horaire en utilisant le même taux horaire de RU/s pour les écritures multirégions. |
| Idéal pour les types de charges de travail | Charges de travail prévisibles et stables | Charges de travail imprévisibles et variables |
Migrer le débit approvisionné standard vers une mise à l’échelle automatique
Les utilisateurs qui souhaitent migrer de nombreuses ressources du débit approvisionné standard vers la mise à l’échelle automatique peuvent utiliser un script Azure CLI pour migrer toutes les ressources de débit d’un abonnement Azure vers la mise à l’échelle automatique.
Contenu connexe
- Examinez le FAQ sur la mise à l’échelle automatique.
- Découvrez comment choisir entre le débit manuel et la mise à l'échelle automatique.
- Découvrez comment allouer le débit de mise à l’échelle automatique sur une base de données ou un conteneur Azure Cosmos DB.
- En savoir plus sur le partitionnement dans Azure Cosmos DB.