Quando você deve usar o Azure Cosmos DB para NoSQL
O Azure Cosmos DB para NoSQL é um serviço de banco de dados NoSQL totalmente gerenciado para desenvolvimento de aplicativos modernos. Ele oferece tempos de resposta garantidos de um dígito em milissegundos e 99,999% de disponibilidade, apoiados por SLAs com escalabilidade automática e instantânea.
Para cenários empresariais, o Azure Cosmos DB para NoSQL tem um conjunto abrangente de SLAs (contratos de nível de serviço) com suporte financeiro que abrangem taxa de transferência, consistência, disponibilidade e latência.
Casos de uso comuns para o Azure Cosmos DB para NoSQL
Como um banco de dados NoSQL rápido com uma API flexível, o Azure Cosmos DB para NoSQL é adequado para aplicativos de alto desempenho com ambição global. A velocidade e a flexibilidade tornam o Azure Cosmos DB para NoSQL excelente para aplicações Web, de retalho, IoT, jogos e móveis. O Azure Cosmos DB para NoSQL é uma boa opção para aplicativos que exigem flexibilidade, baixo tempo de resposta e transações em grande volume ou velocidade.
IoT/telemetria
As cargas de trabalho dos sensores IoT podem ser diversas e imprevisíveis. Essas cargas de trabalho exigem uma plataforma de banco de dados que seja responsiva e capaz de escala elástica para atender às necessidades de tantos ou poucos dispositivos de coleta de dados implantados a qualquer momento. Em muitos casos, as cargas de trabalho de IoT também podem gravar grandes volumes de dados e se beneficiariam de uma plataforma de banco de dados otimizada para gravação. O Azure Cosmos DB para NoSQL é otimizado para cargas de trabalho pesadas de gravação. As operações em um único documento são atômicas com velocidades de gravação indexadas rápidas e previsíveis. O Azure Cosmos DB para NoSQL também é distribuído globalmente e elástico para atender às necessidades de várias cargas de trabalho de IoT.
Neste exemplo, um número crescente de dispositivos IoT está enviando dados do sensor para um Hub IoT do Azure. Em seguida, o Azure Stream Analytics ingere e agrega os dados para armazenamento no Azure Cosmos DB para NoSQL. Em seguida, o Azure Synapse Analytics executa uma análise quase em tempo real sobre os dados usando o Azure Synapse Link for Azure Cosmos DB.
Retalho/marketing
O Azure Cosmos DB para NoSQL é uma ótima opção para cargas de trabalho de varejo e marketing que podem experimentar oscilações dramáticas e inesperadas no uso a qualquer momento ao longo do ano. A escala elástica do Azure Cosmos DB para NoSQL garante que a plataforma de banco de dados possa lidar com solicitações durante o uso de pico e economizar dinheiro fora dos horários de pico.
Neste exemplo, um aplicativo Web JavaScript, criado em conteúdo armazenado no Armazenamento de Blobs do Azure, usa o Azure Cosmos DB para NoSQL como banco de dados de suporte. Várias contas são usadas para gerenciar diferentes facetas da solução, como o carrinho de compras, o estoque ou o catálogo. Em seguida, a solução usa a Pesquisa do Azure para indexar o Azure Cosmos DB para dados NoSQL, fornecendo uma experiência de pesquisa avançada aos usuários finais.
Web/telemóvel
Muitos aplicativos sociais modernos geram uma infinidade de conteúdo gerado pelo usuário que é diverso em quantidade, forma e volume. O Azure Cosmos DB para NoSQL é um ótimo candidato para essa carga de trabalho, pois essa API pode armazenar dados de esquemas variados. Considere a API NoSQL para dados que podem ter esquemas que mudam ou evoluem ao longo do tempo à medida que as iniciativas da empresa se expandem para novas áreas.
Neste exemplo, um usuário está usando uma URL para acessar um site em seu navegador. A URL aponta para o Gerenciador de Tráfego do Azure, que usa um algoritmo interno para determinar para qual ponto de extremidade do Serviço de Aplicativo do Azure redirecionar o usuário. Como o Azure Cosmos DB para NoSQL é capaz de distribuição global, você só precisa de uma conta replicada em várias regiões.
Cenário do módulo
Considere o cenário desde o início deste módulo:
Suponha que você trabalhe como desenvolvedor líder em uma empresa de varejo. A sua equipa está a construir a sua montra online. Você está projetando a nova vitrine para ser acessível em vários dispositivos, incluindo dispositivos móveis. A equipe espera um aumento na demanda quando a vitrine for publicada e várias vendas de "grande abertura" começarem.
Uma parte fundamental do sucesso da sua loja é a capacidade da empresa de notificar os usuários sobre atualizações de envio, independentemente do dispositivo em que eles fazem o pedido ou estão usando no momento. Sua equipe trabalhou duro em um sistema sofisticado para gerenciar o rastreamento detalhado do status do pedido. A integração total do Azure Cosmos DB com outros serviços do Azure, permite que você considere a criação de soluções que usam dados de pedidos no Azure Cosmos DB para NoSQL para enviar notificações para os dispositivos móveis do seu usuário. As notificações alertam-nos quando a sua encomenda é enviada ou está fora para entrega.
Este exemplo é semelhante ao exemplo da introdução deste módulo. Para desenvolver o primeiro exemplo, sua equipe decidiu apresentar o Azure Cosmos DB para NoSQL como o banco de dados de escolha. Agora, sua equipe pode usar o Azure Synapse Link para preparar e agregar dados para análises mais profundas usando o Azure Synapse Analytics. Sua equipe também pode usar serviços como o Azure Functions para reagir a eventos de dados com o Azure Cosmos DB e, em seguida, acionar um fluxo de trabalho de Aplicativos Lógicos do Azure que envia notificações para dispositivos móveis.