Personalização usando o Cosmos DB

Aplicativos de API
Instâncias de Contêiner
Cosmos DB

Ideia da solução

se você quiser nos ver, expanda este artigo com mais informações, como casos de uso em potencial, serviços alternativos, considerações sobre implementação ou diretrizes de preços, fale conosco com GitHub comentários!

Gerar recomendações personalizadas para clientes em tempo real, usando configurações de baixa latência e consistência acessível para insights imediatos

Arquitetura

Diagrama de arquitetura Baixe um SVG dessa arquitetura.

Fluxo de dados

  1. O vendedor/usuário se ins signa em um aplicativo de comércio eletrônico usando suas próprias credenciais.
  2. O vendedor/usuário faz o pedido e o pedido vai para os Aplicativos de API do Azure.
  3. Os dados são armazenados no Cosmos DB (Pedido do Cliente).
  4. O feed de alterações está habilitado no banco Cosmos banco de dados e processa todas as alterações para eventos disponíveis.
  5. Usando Apache Spark no Azure Data Bricks, os dados são treinados e armazenados no banco de dados Cosmos (Product+ User Vectors)
  6. A recomendação mais recente será buscada pela interface do usuário da loja de comércio eletrônico usando Serviço de Contêiner do Azure (APIs de recomendação).

Componentes

Essa arquitetura inclui os seguintes componentes:

  • O Aplicativo Web do Azure faz parte Serviço de Aplicativo do Azure. É um serviço baseado em HTTP para hospedar aplicativos Web, APIs REST e back-ends móveis. Você pode desenvolver usando sua linguagem favorita, seja .NET, .NET Core, Java, Ruby, Node.js, PHP ou Python. Os aplicativos são executados e dimensionados com facilidade em ambientes baseados no Windows e no Linux.

  • O Azure Cosmos DB é um banco de dados de vários modelos que pode atender dados de forma elástica em grande escala. O Azure Cosmos DB foi projetado para aplicativos distribuídos globalmente em um modelo de várias gravação.

  • O feed de alterações fornece um registro persistente de alterações em um contêiner na ordem em que elas ocorrem.

  • Instâncias de Contêiner do Azure executa contêineres sob demanda em um ambiente de Microsoft Azure servidor. Instâncias de Contêiner do Azure é um método de baixo atrito de contêineres em execução que não exige uma instalação completa do Host do Docker ou do Kubernetes.

  • Serviço de Kubernetes do Azure automatiza a implantação, o dimensionamento e o gerenciamento de aplicativos em contêineres, como o modelo de Recomendação.

  • Azure Databricks é uma plataforma de análise de dados otimizada para a plataforma Microsoft Azure serviços de nuvem. Ele oferece dois ambientes para o desenvolvimento de aplicativos com uso intensivo de dados: a Análise de SQL e o Workspace do Azure Databricks.

Considerações

O gerenciamento de API, na frente do serviço de contêiner, oferece uma série de benefícios, como a taxa de versões, controle de versão da API e políticas. Para obter mais informações, consulte Azure API Management.

Escalabilidade

O Microsoft Azure Cosmos DB possibilita configurar a taxa de transferência provisionada padrão (manual) ou de dimensionamento automático nos seus bancos de dados e contêineres. A taxa de transferência provisionada de dimensionamento automático no Microsoft Azure Cosmos DB permite que você dimensione a taxa de transferência (RU/s) do seu banco de dados ou contêiner de forma automática e instantânea. A produtividade é dimensionada com base no uso, sem afetar a disponibilidade, a latência, a produtividade ou o desempenho da carga de trabalho.

Azure Synapse também fornece recursos Apache Spark nativos e pode ser considerado uma opção alternativa para desenvolvimento e treinamento de um modelo de recomendação.

Dimensione o cluster do AKS para atender aos requisitos de desempenho e taxa de transferência. Aumente o número de pods para utilizar totalmente o cluster e escale os nós do cluster para atender à demanda de seu serviço.

Próximas etapas