¿Qué es el emulador de Azure Cosmos DB?

El emulador de Azure Cosmos DB proporciona un entorno local que emula el servicio Azure Cosmos DB diseñado con fines de desarrollo. Mediante el emulador, puede desarrollar y probar su aplicación localmente sin necesidad de crear una suscripción de Azure ni incurrir en gastos de servicio. Cuando esté satisfecho con el funcionamiento de la aplicación en el emulador, puede cambiar a una cuenta de Azure Cosmos DB con fricción mínima.

Importante

No se recomienda el uso del emulador para cargas de trabajo de producción.

Diferencias entre el emulador y el servicio en la nube

El emulador proporciona un entorno en el área de trabajo del desarrollador que no es capaz de simular todos los aspectos del servicio Azure Cosmos DB. Estas son algunas diferencias clave en la funcionalidad entre el emulador y el servicio en la nube equivalente.

Importante

Actualmente, el emulador de Linux tiene soporte limitado para máquinas de desarrolladores que se ejecutan en chips M1 y M2. Una solución temporal consiste en instalar una máquina virtual Windows y ejecutar el emulador en esa plataforma.

  • El panel de Data Explorer del emulador solo se admite en la API para NoSQL y la API para MongoDB.
  • El emulador solo admite el rendimiento aprovisionado. El emulador no admite el rendimiento sin servidor.
  • El emulador usa una clave conocida cuando se inicia. No se puede volver a generar la clave para el emulador en ejecución. Para usar una clave diferente, debe iniciar el emulador con la clave personalizada especificada.
  • El emulador no se puede replicar en otras regiones geográficas ni en varias instancias. Solo se admite una única instancia en ejecución del emulador. El emulador no se puede escalar horizontalmente.
  • El emulador solo admite hasta 10 contenedores de tamaño fijo a 400 RU/s o 5 contenedores de tamaño ilimitado.
  • El emulador solo admite los niveles de coherencia Sesión y Alta. El emulador no es un servicio escalable y no implementa realmente los niveles de coherencia. El emulador solo marca el nivel de coherencia configurado con fines de prueba.
  • El emulador reduce el identificador único de los elementos a un tamaño de 254 caracteres.
  • El emulador admite un máximo de cinco instrucciones JOIN por consulta.

Las características del emulador pueden estar retrasando el ritmo de las nuevas características del servicio en la nube. Podría haber nuevas características y cambios en el servicio en la nube que tengan un pequeño retraso antes de que estén disponibles en el emulador.

Autenticación

Todas las solicitudes realizadas en el emulador se deben autenticar mediante una clave a través de TLS/SSL. El emulador se distribuye con una sola cuenta configurada para usar una clave de autenticación conocida. De forma predeterminada, estas credenciales son las únicas credenciales permitidas para su uso con el emulador:

Value
Punto de conexión localhost:8081
Clave C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==
Cadena de conexión AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;

Sugerencia

Con el emulador de Windows (local), también puede personalizar la clave que usa el emulador. Para obtener más información, vea Argumentos del emulador de Windows.

Importación del certificado del emulador

En algunos casos, es posible que quiera importar manualmente el certificado TLS/SS desde el contenedor en ejecución del emulador en la máquina host. Este paso evita procedimientos incorrectos, como deshabilitar la validación TLS/SSL en el SDK. Para obtener más información, consulte Importar certificado.

Paso siguiente