Distribución de los datos globalmente con Azure Cosmos DB

SE APLICA A: NoSQL MongoDB Cassandra Gremlin Table

Las aplicaciones actuales deben estar siempre en línea y tener una alta capacidad de respuesta. Para lograr baja latencia y alta disponibilidad, las instancias de estas aplicaciones deben implementarse en centros de datos que están cerca de sus usuarios. Estas aplicaciones se implementan normalmente en varios centros de datos y se denominan "distribuidas globalmente". Las aplicaciones distribuidas globalmente necesitan una base de datos distribuida globalmente que puede replicar de forma transparente los datos en cualquier lugar del mundo para permitir que las aplicaciones funcionen en una copia de los datos que están cerca de los usuarios.

Azure Cosmos DB es un sistema de base de datos distribuido globalmente que permite leer y escribir datos de las réplicas locales de la base de datos. Azure Cosmos DB replica los datos con transparencia en todas las regiones asociadas a la cuenta de Azure Cosmos DB. Azure Cosmos DB es un servicio de base de datos distribuida globalmente que está diseñado para proporcionar baja latencia, escalabilidad elástica del rendimiento, semántica bien definida para la coherencia de datos y alta disponibilidad. En resumen, si la aplicación necesita un tiempo de respuesta rápido en cualquier parte del mundo, si necesita estar siempre en línea y precisa escalabilidad elástica e ilimitada de rendimiento y almacenamiento, considere la posibilidad de crear aplicaciones con Azure Cosmos DB.

Puede configurar sus bases de datos para que se distribuyan de manera global y estén disponibles en cualquiera de las regiones de Azure. Para reducir la latencia, coloque los datos en la ubicación más cercana a la de los usuarios. Elegir las regiones requeridas depende del alcance global de la aplicación y de dónde se encuentran los usuarios. Azure Cosmos DB replica los datos con transparencia en todas las regiones asociadas a la cuenta de Azure Cosmos DB. Proporciona una sola imagen de sistema de los contenedores y la base de datos de Azure Cosmos DB globalmente distribuida, para que la aplicación pueda leer y escribir de manera local.

Nota

Las cuentas sin servidor para Azure Cosmos DB solo pueden ejecutarse en una única región de Azure. Para obtener más información, consulte Uso de recursos sin servidor.

Con Azure Cosmos DB, puede agregar o quitar las regiones asociadas con su cuenta en cualquier momento. La aplicación no necesita pausarse o volver a implementarse para agregar o quitar una región. Azure Cosmos DB está disponible en los cinco entornos en la nube de Azure disponibles para los clientes:

  • La nube pública de Azure, que está disponible globalmente.

  • Microsoft Azure operado por 21Vianet está disponible a través de una asociación única entre Microsoft y 21Vianet, uno de los mayores proveedores de Internet del país en China.

  • Azure Alemania proporciona servicios bajo un modelo de administrador de datos que garantiza que los datos de los clientes permanecen en Alemania bajo el control de T-Systems International GmbH, una subsidiaria de Deutsche Telekom, que actúa como administrador de datos para Alemania.

  • Azure Government está disponible en cuatro regiones en los Estados Unidos para agencias gubernamentales de EE. UU. y sus asociados.

  • Azure Government para el Departamento de Defensa (DoD) está disponible en dos regiones de Estados Unidos para el Departamento de Defensa de EE. UU.

Topología de implementación de alta disponibilidad

Ventajas clave de distribución global

Compilación de aplicaciones globales activo/activo. Con el novedoso protocolo de replicación de escrituras en varias regiones, cada región admite lecturas y escrituras. La capacidad de escrituras en varias regiones también permite:

  • Escalabilidad de escritura y lectura elásticas ilimitada.
  • 99,999 % de disponibilidad de lectura y escritura en todo el mundo.
  • Garantía de lecturas y escrituras atendidas en menos de 10 milisegundos en el percentil 99.

A medida que agrega y quita regiones a la cuenta de Azure Cosmos DB, no es necesario volver a implementar la aplicación ni pausarla, y esta sigue teniendo alta disponibilidad.

Creación de aplicaciones con alta capacidad de respuesta. La aplicación puede realizar casi en tiempo real lecturas y escrituras en todas las regiones que eligió para la base de datos. De manera interna, Azure Cosmos DB controla la replicación de datos entre regiones de una manera que garantiza el nivel de coherencia elegido.

Creación de aplicaciones de alta disponibilidad. Ejecutar una base de datos en varias regiones aumenta la disponibilidad de la base de datos. Si alguna región no está disponible, otras regiones gestionan automáticamente las solicitudes de la aplicación. Azure Cosmos DB ofrece el 99,999 % de disponibilidad de lectura y escritura para las bases de datos de varias regiones.

Mantenimiento de la continuidad empresarial durante interrupciones regionales. Azure Cosmos DB admite la conmutación por error administrada por el servicio durante una interrupción regional. Durante una interrupción regional, Azure Cosmos DB sigue manteniendo sus SLA de rendimiento, coherencia, disponibilidad y latencia. Para ayudar a garantizar que toda la aplicación tiene una alta disponibilidad, Azure Cosmos DB ofrece la API de conmutación por error manual para simular una interrupción regional. Con esta API, puede realizar maniobras de continuidad empresarial regulares.

Escalabilidad global del rendimiento de lectura y escritura. Puede permitir que todas las regiones sean de escritura y que escale lecturas y escrituras en todo el mundo. El rendimiento que la aplicación configura en un contenedor o una base de datos de Azure Cosmos DB se aprovisiona en todas las regiones asociadas con su cuenta de Azure Cosmos DB. El rendimiento aprovisionado se garantiza por Acuerdo de Nivel de Servicio con respaldo financiero.

Elección entre varios modelos de coherencia bien definidos. El protocolo de replicación de Azure Cosmos DB ofrece cinco modelos de coherencia prácticos, intuitivos y bien definidos. Cada modelo tiene un equilibrio entre coherencia y rendimiento. Use estos modelos de coherencia para compilar con facilidad las aplicaciones distribuidas globalmente.

Pasos siguientes

Lea más sobre la distribución global en estos artículos: