Qu’est-ce que l’émulateur de Azure Cosmos DB ?

L’émulateur Azure Cosmos DB fournit un environnement local qui émule le service Azure Cosmos DB conçu à des fins de développement. À l’aide de l’émulateur, vous pouvez développer et tester votre application localement, sans créer d’abonnement Azure ou entraîner des coûts de service. Lorsque vous êtes satisfait de la façon dont votre application fonctionne avec l'émulateur, vous pouvez passer à l'utilisation d'un compte Azure Cosmos DB avec un minimum de friction.

Important

Nous vous déconseillons d’utiliser l’émulateur pour les charges de travail de production.

Tip

Visitez notre nouvelle galerie d’exemples pour obtenir les derniers exemples de création de nouvelles applications

Différences entre l’émulateur et le service cloud

L'émulateur fournit un environnement sur votre espace de travail développeur qui n'est pas capable de simuler chaque aspect du service Azure Cosmos DB. Voici quelques différences clés dans les fonctionnalités entre l’émulateur et le service cloud équivalent.

Important

Actuellement, l'émulateur Linux ne prend pas en charge les ordinateurs de développement s'exécutant sur la série apple silicon ou Microsoft puces ARM. Une solution de contournement temporaire consiste à installer une machine virtuelle Windows et à exécuter l’émulateur sur cette plateforme.

Vous pouvez également utiliser le nouvel émulateur de Azure Cosmos DB linux (préversion).

  • Le volet Data Explorer de l'émulateur n'est pris en charge que dans l'API pour NoSQL et l'API pour MongoDB.
  • L’émulateur prend uniquement en charge le débit provisionné. L’émulateur ne prend pas en charge le débit serverless.
  • L’émulateur utilise une clé connue au démarrage. Vous ne pouvez pas régénérer la clé pour l’émulateur en cours d’exécution. Pour utiliser une autre clé, vous devez démarrer l’émulateur avec la clé personnalisée spécifiée.
  • L’émulateur ne peut pas être répliqué entre des régions géographiques ou plusieurs instances. Une seule instance en cours d’exécution de l’émulateur est prise en charge. L’émulateur ne peut pas être extensible.
  • L’émulateur prend idéalement en charge jusqu’à 10 conteneurs de taille fixe à 400 RU/s ou 5 conteneurs de taille illimitée. Théoriquement, vous pouvez créer davantage de conteneurs, mais vous pouvez rencontrer une dégradation des performances avec l’émulateur.
  • L’émulateur prend uniquement en charge les niveaux de cohérence forte et de session. L’émulateur n’est pas un service évolutif et n’implémente pas réellement les niveaux de cohérence. L’émulateur signale uniquement le niveau de cohérence configuré à des fins de test.
  • L’émulateur contrainte l’identificateur unique des éléments à une taille de 254 caractères.
  • L’émulateur prend en charge un maximum de cinq JOIN instructions par requête.

Les fonctionnalités de l'émulateur peuvent prendre du retard par rapport au rythme des nouvelles fonctionnalités du service de cloud. Il peut y avoir de nouvelles fonctionnalités et des modifications dans le service cloud qui ont un petit délai avant qu’elles ne soient disponibles dans l’émulateur.

Authentication

Chaque requête effectuée sur l’émulateur doit être authentifiée à l’aide d’une clé sur TLS/SSL. L’émulateur est fourni avec un seul compte configuré pour utiliser une clé d’authentification connue. Par défaut, ces informations d’identification sont les seules informations d’identification autorisées à être utilisées avec l’émulateur :

Value
Point de terminaison localhost:8081
Clé C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==
chaîne de connexion AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;

Tip

Avec l’émulateur Windows (local), vous pouvez également personnaliser la clé utilisée par l’émulateur. Pour plus d’informations, consultez arguments de l’émulateur Windows.

Importer un certificat d’émulateur

Dans certains cas, vous pouvez souhaiter importer manuellement le certificat TLS/SS à partir du conteneur en cours d’exécution de l’émulateur sur votre ordinateur hôte. Cette étape évite les mauvaises pratiques telles que la désactivation de la validation TLS/SSL dans le Kit de développement logiciel (SDK). Pour plus d’informations, consultez importer un certificat.

Étape suivante