Cuándo se debe usar Azure Cosmos DB for NoSQL

Completado

Azure Cosmos DB for NoSQL es un servicio de bases de datos NoSQL totalmente administrado para el desarrollo de aplicaciones modernas y de IA. Proporciona tiempos de respuesta garantizados de milisegundos de un solo dígito, disponibilidad del 99,999 % y funcionalidades de base de datos vectoriales, respaldados por acuerdos de nivel de servicio con escalabilidad automática e instantánea.

En escenarios empresariales, Azure Cosmos DB for NoSQL tiene un conjunto completo de contratos de nivel de servicio (SLA) con respaldo financiero que abarcan el rendimiento, la coherencia, la disponibilidad y la latencia.

Casos de uso comunes para Azure Cosmos DB for NoSQL

Como base de datos NoSQL rápida con una API flexible y funcionalidades de indexación y búsqueda de vectores, Azure Cosmos DB for NoSQL es adecuada para muchos tipos y tamaños de aplicaciones. Desde la escala más pequeña hasta aplicaciones de alto rendimiento con ambición global. La velocidad y la flexibilidad hacen que Azure Cosmos DB for NoSQL sea ideal para aplicaciones de IA generativa, web, comerciales, IoT, de juegos y para dispositivos móviles. Azure Cosmos DB for NoSQL es una buena opción para las aplicaciones que requieren flexibilidad, bajo costo, tiempos de respuesta rápidos y la capacidad de escalar a un volumen o velocidad masivos.

IA generativa

Las aplicaciones de IA generativa pueden ser diversas e impredecibles. Estas cargas de trabajo requieren una plataforma de base de datos que sea rentable, con capacidad de respuesta y escalable. Los usuarios pueden almacenar vectores directamente en sus documentos con datos tradicionales sin esquema y vectores de alta dimensión como otras propiedades. Esta coubicación de datos y vectores permite una indexación y búsqueda eficaces, ya que los vectores se almacenan en la misma unidad lógica que los datos que representan. Mantener los vectores y los datos juntos simplifica la administración de datos, las arquitecturas de aplicaciones de IA y la eficacia de las operaciones basadas en vectores.

Diagrama arquitectónico de una carga de trabajo de IA generativa que muestra una aplicación agente de IA multiinquilino para usuarios finales. Los datos nuevos o actualizados se ingieren con la fuente de cambios, se vectorizan y se almacenan. Los usuarios interactúan a través de los agentes de IA que realizan búsquedas vectoriales y generan respuestas con el historial de chat almacenado en Azure Cosmos DB.

En este ejemplo, los clientes toman datos transaccionales y operativos y los vectorizan para ser usados en vectores de búsqueda por múltiples agentes de IA que atienden a los clientes. La fuente de cambios de Azure Cosmos DB se usa para controlar la ingesta y la vectorización de datos nuevos o actualizados, poniéndolos a disposición de los usuarios casi en tiempo real. Los clientes que interactúan con estos agentes generan avisos y finalizaciones que también se almacenan como su historial de chat en Azure Comsos DB y se usan para proporcionar una caché semántica para mejorar el costo y el rendimiento.

Venta minorista y marketing

Azure Cosmos DB for NoSQL es una opción excelente para cargas de trabajo de marketing y venta minorista que pueden experimentar oscilaciones de uso drásticas e inesperadas en cualquier momento a lo largo del año. La escala elástica de Azure Cosmos DB for NoSQL garantiza que la plataforma de base de datos puede controlar las solicitudes durante fases de uso máximo y ahorrar dinero durante las horas de uso estándar.

Diagrama arquitectónico para una carga de trabajo minorista en el que se muestra un explorador del usuario que se conecta al sitio web en Azure App Service compatible con una cuenta de Azure Blob Storage que contiene datos de sitio estáticos. En segundo plano, la aplicación web de App Service usa una cuenta de Azure Cosmos DB for NoSQL con un contenedor para datos de inventario y otro para los datos del carro de la compra, y una instancia de Azure Search que compila un catálogo que se puede buscar mediante la indexación de la cuenta de Azure Cosmos DB for NoSQL con datos de inventario.

En este ejemplo, una aplicación web de JavaScript, creada a partir de contenido almacenado en Azure Blob Storage, usa Azure Cosmos DB for NoSQL como base de datos de respaldo. Se usan varias cuentas para administrar distintas facetas de la solución, como el carro de la compra, el inventario o el catálogo. La solución usa entonces Azure Search para indexar los datos de Azure Cosmos DB para NoSQL, lo que proporciona una experiencia de búsqueda enriquecida a los usuarios finales.

Web y dispositivos móviles

Muchas aplicaciones sociales modernas generan una gran cantidad de contenido generado por el usuario en multitud de cantidades, formas y volúmenes. Azure Cosmos DB for NoSQL es un candidato excelente para esta carga de trabajo, ya que esta API puede almacenar datos de distintos esquemas. Considere la API SQL para datos que puedan tener esquemas que cambian o evolucionan en el tiempo a medida que las iniciativas de la empresa se expanden en áreas nuevas.

Diagrama arquitectónico para una carga de trabajo web en el que se muestra un explorador del usuario que se conecta a una dirección URL que está conectada a Azure Traffic Manager para determinar el destino de redireccionamiento correcto. Después, se conectan tres instancias de Azure App Service en tres regiones de Azure (Norte de Europa, Oeste de EE. UU. y Este de EE. UU.) a una cuenta de Azure Cosmos DB for NoSQL distribuida globalmente.

En este ejemplo, un usuario utiliza una dirección URL para acceder a un sitio web en su explorador. La dirección URL apunta a Azure Traffic Manager que, después, usa un algoritmo integrado para determinar a qué punto de conexión de Azure App Service redirigir al usuario. Como Azure Cosmos DB for NoSQL admite la distribución global, solo se necesita una cuenta que se replique entre varias regiones.

Escenario de módulo

Considere el escenario del principio de este módulo:

Imagine que trabaja como desarrollador principal en una empresa minorista. Su equipo está creando su escaparate web con compatibilidad con agentes de IA para proporcionar una experiencia enriquecida a los usuarios. Está diseñando un nuevo escaparate para que sea accesible desde distintos dispositivos, incluidos los móviles. El equipo espera un pico de demanda cuando se publique el escaparate y se lancen varias ventas de "gran inauguración".

Una parte clave del éxito de la tienda es la capacidad de la empresa de notificar a los usuarios las actualizaciones sobre los envíos, con independencia del dispositivo en el que realicen el pedido o que usen actualmente. El equipo ha trabajado duro en un sistema sofisticado para administrar el seguimiento del estado de un pedido detallado. La estrecha integración de Azure Cosmos DB con otros servicios de Azure le permite considerar la creación de soluciones que utilicen datos de pedidos en Azure Cosmos DB para NoSQL para enviar notificaciones a los dispositivos móviles de los usuarios. Las notificaciones les avisan cuando su paquete se envía o está pendiente de entrega.

Diagrama arquitectónico para una carga de trabajo comercial en el que se muestra un creciente número de usuarios que solicitan productos y una colección de recursos de proceso que controlan las solicitudes de las instancias del escaparate. Detrás de los recursos de proceso, Azure Cosmos DB almacena los datos de compra. Después, Azure Synapse Link conecta Azure Cosmos DB a Azure Synapse Analytics para obtener un análisis más profundo. Por último, Azure Functions se desencadenó fuera de la fuente de cambios y procesó eventos de datos que desencadenan un flujo de trabajo de Azure Logic Apps para realizar operaciones empresariales, como notificar al usuario eventos nuevos en su dispositivo móvil.

Este ejemplo es similar al de la introducción de este módulo. Para ampliar el primer ejemplo, el equipo decidió presentar Azure Cosmos DB for NoSQL como la base de datos elegida. Ahora, el equipo puede usar Azure Synapse Link para preparar y agregar datos para un análisis más profundo mediante Azure Synapse Analytics. El equipo también puede usar servicios como Azure Functions para reaccionar a eventos de datos con Azure Cosmos DB y, después, desencadenar un flujo de trabajo de Azure Logic Apps que envía notificaciones a dispositivos móviles.