Passerelle dédiée Azure Cosmos DB - Vue d’ensemble
S’APPLIQUE À : NoSQL
Une passerelle dédiée est un calcul côté serveur qui est un serveur frontal pour votre compte Azure Cosmos DB. Lorsque vous vous connectez à la passerelle dédiée, elle achemine les requêtes et met en cache les données. À l’instar du débit approvisionné, la passerelle dédiée est facturée à l’heure.
Vue d'ensemble
Vous pouvez approvisionner une passerelle dédiée pour améliorer les performances à grande échelle. La mise en cache est la raison la plus courante pour laquelle vous souhaitez configurer une passerelle dédiée. Lorsque vous approvisionnez une passerelle dédiée, un cache intégré est automatiquement configuré dans celle-ci. Les lectures de point et les requêtes qui ont une correspondance dans le cache intégré n’utilisent aucune de vos unités de requête. L’approvisionnement d’une passerelle dédiée avec un cache intégré permet d’améliorer les charges de travail intensives, réduisant les coûts d’Azure Cosmos DB.
La passerelle dédiée est intégrée à Azure Cosmos DB. Quand vous provisionnez une passerelle dédiée, vous disposez d’un nœud complètement managé qui achemine les requêtes vers les partitions principales. La connexion à Azure Cosmos DB avec la passerelle dédiée offre une latence plus faible et plus prévisible que la connexion à Azure Cosmos DB avec la passerelle standard. Même les échecs du cache verront une amélioration de la latence en comparant la passerelle dédiée et la passerelle standard.
Votre application utilise une passerelle dédiée moyennant des modifications de code minimales. Les comptes Azure Cosmos DB nouveaux et existants peuvent approvisionner une passerelle dédiée pour améliorer les performances de lecture.
Notes
Avez-vous des commentaires sur la passerelle dédiée ? Nous attendons vos remarques ! N’hésitez pas à partager vos commentaires directement avec l’équipe d’ingénierie Azure Cosmos DB :cosmoscachefeedback@microsoft.com
Modes de connexion
Il existe deux modes de connectivité pour Azure Cosmos DB : le mode direct et le mode passerelle. Avec le mode passerelle, vous pouvez vous connecter à la passerelle standard ou à la passerelle dédiée en fonction du point de terminaison que vous configurez.
Se connecter à Azure Cosmos DB dans le mode direct
Quand vous vous connectez à Azure Cosmos DB à l’aide du mode direct, votre application se connecte directement au serveur principal Azure Cosmos DB. Même si vous avez de nombreuses partitions physiques, le routage des requêtes est géré entièrement côté client. Le mode direct offre une faible latence, car votre application peut communiquer directement avec le backend Azure Cosmos DB et n’a pas besoin d’un tronçon réseau intermédiaire. Si vous choisissez de vous connecter en mode direct, vos demandes n’utilisent pas la passerelle dédiée ou le cache intégré.
Se connecter à Azure Cosmos DB à l’aide du mode passerelle
Si vous vous connectez à Azure Cosmos DB à l’aide du mode passerelle, votre application se connecte en premier lieu à un nœud frontal, qui gère le routage de la requête vers les nœuds principaux appropriés. Étant donné que le mode passerelle implique un tronçon réseau supplémentaire, vous pouvez observer une latence légèrement supérieure par rapport au mode direct.
Quand vous vous connectez à Azure Cosmos DB avec le mode passerelle, vous pouvez le faire avec l’une des options suivantes :
- Passerelle standard : si le serveur principal, qui inclut votre débit et votre stockage provisionnés, a une capacité dédiée par conteneur, la passerelle standard est partagée entre plusieurs comptes Azure Cosmos DB. Il est pratique pour de nombreux clients de partager une passerelle standard, car les ressources de calcul consommées par chaque client individuel sont faibles.
- Passerelle dédiée : le backend et la passerelle disposent tous deux d’une capacité dédiée. Le cache intégré nécessite une passerelle dédiée car il requiert un processeur et une mémoire importants, spécifiques à votre compte Azure Cosmos DB.
Vous devez vous connecter à Azure Cosmos DB à l’aide de la passerelle dédiée afin d’utiliser le cache intégré. La passerelle dédiée a un point de terminaison différent de celui fourni avec votre compte Azure Cosmos DB, mais les demandes sont routées de la même manière. Lorsque vous vous connectez à votre point de terminaison de passerelle dédié, votre application envoie une requête à la passerelle dédiée, qui achemine ensuite la requête vers différents nœuds du principal. Si possible, le cache intégré traitera le résultat.
Diagramme de connexion en mode passerelle avec une passerelle dédiée :
Approvisionnement de la passerelle dédiée
Un cluster de passerelle dédié peut être approvisionné dans des comptes d’API pour NoSQL. Un cluster de passerelle dédié peut avoir jusqu’à cinq nœuds par défaut, et vous pouvez ajouter ou supprimer des nœuds à tout moment. Tous les nœuds de passerelle dédiés de votre compte partagent la même chaîne de connexion.
Les nœuds de passerelle dédiés sont indépendants les uns des autres. Lorsque vous approvisionnez plusieurs nœuds de passerelle dédiés, n’importe quel nœud unique peut acheminer une requête donnée. De plus, chaque nœud possède un cache intégré distinct des autres. Les données mises en cache dans chaque nœud dépendent des données qui ont été écrites ou lues récemment par ce nœud spécifique. Si un élément ou une requête est mis en cache sur un nœud, il ne l’est pas nécessairement sur les autres.
Pour le développement, nous vous recommandons de commencer avec un nœud, mais pour la production, vous devez configurer trois nœuds ou plus afin de bénéficier de la haute disponibilité. Découvrez comment approvisionner un cluster de passerelle dédié avec un cache intégré. L’approvisionnement de plusieurs nœuds de passerelle dédiés permet au cluster de passerelle dédié de continuer à acheminer les requêtes et à traiter les données mises en cache, même si l’un des nœuds de passerelle dédiés n’est pas disponible.
La passerelle dédiée est disponible dans les tailles suivantes. Le cache intégré utilise environ 50 % de la mémoire et le reste est réservé aux métadonnées et au routage des demandes vers les partitions back-end.
Nom de la référence SKU | Processeurs virtuels | Mémoire |
---|---|---|
D4s | 4 | 16 Go |
D8s | 8 | 32 Go |
D16s | 16 | 64 Go |
Conseil
Une fois la création effectuée, vous pouvez ajouter ou supprimer des nœuds de passerelle dédiée, mais vous ne pouvez pas modifier la taille des nœuds. Pour changer la taille de vos nœuds de passerelle dédiée, vous pouvez déprovisionner le cluster et le reprovisionner dans une autre taille. Cela entraîne un court temps d’arrêt, sauf si vous changez la chaîne de connexion dans votre application pour utiliser la passerelle standard lors du reprovisionnement.
Il existe plusieurs façons de provisionner une passerelle dédiée :
- Provisionner une passerelle dédiée à l’aide du portail Azure
- Utiliser l’API REST Azure Cosmos DB
- Azure CLI
- Modèle ARM
- Remarque : Vous ne pouvez pas déprovisionner une passerelle dédiée à l’aide de modèles ARM
Notes
Vous ne pouvez pas approvisionner une passerelle dédiée dans les comptes Azure Cosmos DB avec les zones de disponibilitépar requête. Contactez cosmoscachefeedback@microsoft.com pour plus d’informations.
Passerelle dédiée dans les comptes à plusieurs régions
Lorsque vous approvisionnez un cluster de passerelle dédié dans des comptes à plusieurs régions, des clusters de passerelle dédiés identiques sont approvisionnés dans chaque région. Par exemple, considérez un compte Azure Cosmos DB dans les régions USA Est et Europe Nord. Si vous configurez un cluster de passerelle dédié avec deux nœuds D8 dans ce compte, vous auriez quatre nœuds D8 au total - deux dans la région USA Est et deux dans la région Europe Nord. Vous n’avez pas besoin de configurer explicitement des passerelles dédiées dans chaque région, et votre chaîne de connexion reste la même. Il n’y a pas non plus de modifications apportées aux meilleures pratiques pour effectuer des basculements.
Comme les nœuds d’un cluster, les nœuds de passerelle dédiés dans les régions sont indépendants. Il est possible que les données mises en cache dans chaque région soient différentes, en fonction des lectures ou écritures récentes dans cette région.
Limites
La passerelle dédiée présente les limitations suivantes :
- Les passerelles dédiées sont uniquement prises en charge sur les comptes d’API pour NoSQL
- Vous ne pouvez pas utiliser le contrôle d’accès en fonction du rôle (RBAC) pour authentifier les demandes de plan de données routées via la passerelle dédiée
Étapes suivantes
Pour plus d’informations sur l’utilisation des passerelles dédiées, consultez les articles suivants :
- Cache intégré
- Configurer le cache intégré
- FAQ sur le cache intégré
- Vous tentez d’effectuer une planification de la capacité pour une migration vers Azure Cosmos DB ? Vous pouvez utiliser les informations sur votre cluster de bases de données existant pour la planification de la capacité.
- Si vous ne connaissez que le nombre de vCore 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 vCore 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