Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Amazon Web Services

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Amazon Web Services

Este é um post convidado co-escrito com Babu Srinivasan do MongoDB.

À medida que as indústrias evoluem no atual cenário empresarial acelerado, a incapacidade de ter previsões em tempo real representa desafios significativos para as indústrias que dependem fortemente de insights precisos e oportunos. A ausência de previsões em tempo real em vários setores apresenta desafios comerciais prementes que podem impactar significativamente a tomada de decisões e a eficiência operacional. Sem insights em tempo real, as empresas lutam para se adaptar às condições dinâmicas do mercado, antecipar com precisão a demanda dos clientes, otimizar os níveis de estoque e tomar decisões estratégicas proativas. Setores como Finanças, Varejo, Gestão da Cadeia de Abastecimento e Logística enfrentam o risco de oportunidades perdidas, aumento de custos, alocação ineficiente de recursos e incapacidade de atender às expectativas dos clientes. Ao explorar estes desafios, as organizações podem reconhecer a importância da previsão em tempo real e explorar soluções inovadoras para superar estes obstáculos, permitindo-lhes manter-se competitivas, tomar decisões informadas e prosperar no atual ambiente de negócios acelerado.

Ao aproveitar o potencial transformador do nativo do MongoDB série temporal recursos de dados e integrá-los com o poder de Tela do Amazon SageMaker, as organizações podem superar esses desafios e desbloquear novos níveis de agilidade. O gerenciamento robusto de dados de séries temporais do MongoDB permite o armazenamento e a recuperação de grandes volumes de dados de séries temporais em tempo real, enquanto algoritmos avançados de aprendizado de máquina e recursos preditivos fornecem modelos de previsão precisos e dinâmicos com o SageMaker Canvas.

Nesta postagem, exploraremos o potencial de usar dados de série temporal do MongoDB e SageMaker Canvas como uma solução abrangente.

Atlas MongoDB

Atlas MongoDB é uma plataforma de dados de desenvolvedor totalmente gerenciada que simplifica a implantação e o dimensionamento de bancos de dados MongoDB na nuvem. É um armazenamento baseado em documentos que fornece um banco de dados totalmente gerenciado, com textos completos e vetores integrados. Pesquisar, suporte para Geospatial consultas, charts e suporte nativo para eficiência série temporal recursos de armazenamento e consulta. O MongoDB Atlas oferece fragmentação automática, escalabilidade horizontal e indexação flexível para ingestão de dados de alto volume. Entre todos, os recursos nativos de série temporal são um recurso de destaque, tornando-o ideal para gerenciar um grande volume de dados de série temporal, como dados de aplicativos críticos para os negócios, telemetria, logs de servidor e muito mais. Com consultas, agregações e análises eficientes, as empresas podem extrair insights valiosos de dados com registro de data e hora. Ao usar esses recursos, as empresas podem armazenar, gerenciar e analisar dados de séries temporais com eficiência, permitindo decisões baseadas em dados e ganhando vantagem competitiva.

Tela do Amazon SageMaker

Tela do Amazon SageMaker é um serviço de aprendizado de máquina visual (ML) que permite que analistas de negócios e cientistas de dados criem e implantem modelos de ML personalizados sem exigir qualquer experiência em ML ou escrever uma única linha de código. SageMaker Canvas oferece suporte a vários casos de uso, incluindo previsão de séries temporais, que permite às empresas prever com precisão a demanda futura, as vendas, os requisitos de recursos e outros dados de séries temporais. O serviço utiliza técnicas de aprendizagem profunda para lidar com padrões de dados complexos e permite que as empresas gerem previsões precisas mesmo com dados históricos mínimos. Ao usar os recursos do Amazon SageMaker Canvas, as empresas podem tomar decisões informadas, otimizar os níveis de estoque, melhorar a eficiência operacional e aumentar a satisfação do cliente.

A IU do SageMaker Canvas permite integrar perfeitamente fontes de dados da nuvem ou no local, mesclar conjuntos de dados sem esforço, treinar modelos precisos e fazer previsões com dados emergentes – tudo sem codificação. Se você precisar de um fluxo de trabalho automatizado ou integração direta do modelo de ML em aplicativos, as funções de previsão do Canvas podem ser acessadas por meio de APIs.

Visão geral da solução

Os usuários persistem seus dados de série temporal transacional no MongoDB Atlas. Por meio do Atlas Data Federation, os dados são extraídos para o bucket do Amazon S3. O Amazon SageMaker Canvas acessa os dados para construir modelos e criar previsões. Os resultados da previsão são armazenados em um bucket S3. Usando os serviços MongoDB Data Federation, as previsões são apresentadas visualmente por meio de gráficos MongoDB.

O diagrama a seguir descreve a arquitetura da solução proposta.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Pré-requisitos

Para esta solução, usamos o MongoDB Atlas para armazenar dados de séries temporais, o Amazon SageMaker Canvas para treinar um modelo e produzir previsões e o Amazon S3 para armazenar dados extraídos do MongoDB Atlas.

Certifique-se de ter os seguintes pré-requisitos:

Configurar cluster MongoDB Atlas

Crie um cluster MongoDB Atlas gratuito seguindo as instruções em Crie um cluster. Configure o Acesso ao banco de dados e Acesso à rede.

Preencher uma coleção de série temporal no MongoDB Atlas

Para os propósitos desta demonstração, você pode usar um conjunto de dados de amostra de Kaggle e carregue o mesmo no MongoDB Atlas com o MongoDB ferramentas , de preferência Bússola MongoDB.

O código a seguir mostra um conjunto de dados de amostra para uma coleção de série temporal:

{ "store": "1 1", "timestamp": { "2010-02-05T00:00:00.000Z"}, "temperature": "42.31", "target_value": 2.572, "IsHoliday": false
}

A captura de tela a seguir mostra os dados de série temporal de amostra no MongoDB Atlas:

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Crie um intervalo S3

Crie um bucket S3 na AWS, onde os dados da série temporal precisam ser armazenados e analisados. Observe que temos duas pastas. sales-train-data é usado para armazenar dados extraídos do MongoDB Atlas, enquanto sales-forecast-output contém previsões do  Canvas.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Crie a Federação de Dados

Configurar o Federação de Dados no Atlas e registre o bucket S3 criado anteriormente como parte da fonte de dados. Observe que três bancos de dados/coleções diferentes são criados na federação de dados para cluster Atlas, bucket S3 para dados MongoDB Atlas e bucket S3 para armazenar os resultados do Canvas.

As capturas de tela a seguir mostram a configuração da federação de dados.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Configure o serviço de aplicativo Atlas

Criar o Serviços de aplicativos MongoDB para implantar as funções para transferir os dados do cluster MongoDB Atlas para o bucket S3 usando o $ out agregação.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Verifique a configuração da fonte de dados

Os serviços de aplicativo criam um novo nome de serviço Altas que precisa ser referido como serviços de dados na função a seguir. Verifique se o Nome do serviço Atlas foi criado e anote-o para referência futura.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Crie a função

Configure os serviços do aplicativo Atlas para criar o gatilho e funções. Os gatilhos precisam ser programados para gravar os dados no S3 em uma frequência de período baseada na necessidade do negócio para treinar os modelos.

O script a seguir mostra a função para gravar no bucket S3:

exports = function () { const service = context.services.get(""); const db = service.db("") const events = db.collection(""); const pipeline = [ { "$out": { "s3": { "bucket": "<S3_bucket_name>", "region": "<AWS_Region>", "filename": {$concat: ["<S3path>/<filename>_",{"$toString": new Date(Date.now())}]}, "format": { "name": "json", "maxFileSize": "10GB" } } } } ]; return events.aggregate(pipeline);
};

Função de amostra

A função pode ser executada por meio da guia Executar e os erros podem ser depurados usando os recursos de log nos Serviços de Aplicativo. Além disso, os erros podem ser depurados usando o menu Logs no painel esquerdo.

A captura de tela a seguir mostra a execução da função junto com a saída:

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Criar conjunto de dados no Amazon SageMaker Canvas

As etapas a seguir pressupõem que você criou um domínio e um perfil de usuário do SageMaker. Se você ainda não tiver feito isso, certifique-se de configurar o Domínio e perfil de usuário do SageMaker. No perfil do usuário, atualize seu bucket S3 para ser personalizado e forneça o nome do bucket.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Quando terminar, navegue até SageMaker Canvas, selecione seu domínio e perfil e selecione Canvas.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Crie um conjunto de dados que forneça a fonte de dados.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Selecione a origem do conjunto de dados como S3

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Selecione o local dos dados no bucket S3 e selecione Criar conjunto de dados.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Revise o esquema e clique em Criar conjunto de dados

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Após a importação bem-sucedida, o conjunto de dados aparecerá na lista conforme mostrado na captura de tela a seguir.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Treine o modelo

A seguir, usaremos o Canvas para configurar o treinamento do modelo. Selecione o conjunto de dados e clique em Criar.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.
Crie um nome de modelo, selecione Análise preditiva e selecione Criar.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Selecione a coluna de destino

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Em seguida, clique em Configurar modelo de série temporal e selecione item_id como a coluna ID do item.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Selecionar tm para a coluna de carimbo de data/hora

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Para especificar o período de tempo que você deseja prever, escolha 8 semanas.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Agora você está pronto para visualizar o modelo ou iniciar o processo de construção.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Depois de visualizar o modelo ou iniciar a construção, seu modelo será criado e poderá levar até quatro horas. Você pode sair da tela e retornar para ver o status de treinamento do modelo.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Quando o modelo estiver pronto, selecione o modelo e clique na versão mais recente

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Revise as métricas do modelo e o impacto da coluna e, se estiver satisfeito com o desempenho do modelo, clique em Prever.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Em seguida, escolha Previsão em lote e clique em Selecionar conjunto de dados.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Selecione seu conjunto de dados e clique em Escolher conjunto de dados.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Em seguida, clique em Iniciar previsões.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Observe um trabalho criado ou observe o progresso do trabalho no SageMaker em Inferência, trabalhos de transformação em lote.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Quando o trabalho for concluído, selecione-o e anote o caminho do S3 onde o Canvas armazenou as previsões.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

Visualize dados de previsão em gráficos Atlas

Para visualizar os dados de previsão, crie o Gráficos Atlas do MongoDB com base nos dados federados (dados de previsão da Amazon) para previsões P10, P50 e P90, conforme mostrado no gráfico a seguir.

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.

limpar

  • Exclua o cluster MongoDB Atlas
  • Excluir configuração da Federação de Dados Atlas
  • Excluir aplicativo Atlas Application Service
  • Exclua o intervalo S3
  • Excluir conjuntos de dados e modelos do Amazon SageMaker Canvas
  • Exclua os gráficos do Atlas
  • Sair do Amazon SageMaker Canvas

Conclusão

Nesta postagem, extraímos dados de séries temporais da coleção de séries temporais do MongoDB. Esta é uma coleção especial otimizada para armazenamento e velocidade de consulta de dados de série temporal. Usamos o Amazon SageMaker Canvas para treinar modelos e gerar previsões e visualizamos as previsões em gráficos Atlas.

Para obter mais informações, consulte os recursos a seguir.


Sobre os autores

Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.Igor Alekseev é Arquiteto de Soluções de Parceiro Sênior na AWS no domínio de Dados e Análise. Em sua função, Igor está trabalhando com parceiros estratégicos, ajudando-os a criar arquiteturas complexas e otimizadas para AWS. Antes de ingressar na AWS, como Arquiteto de Dados/Soluções, ele implementou muitos projetos no domínio de Big Data, incluindo vários data lakes no ecossistema Hadoop. Como Engenheiro de Dados, ele esteve envolvido na aplicação de IA/ML para detecção de fraudes e automação de escritórios.


Acelerando o tempo de obtenção de insights com coleções de séries temporais do MongoDB e Amazon SageMaker Canvas | Inteligência de dados PlatoBlockchain da Amazon Web Services. Pesquisa vertical. Ai.Babu Srinivasan
é Arquiteto de Soluções de Parceiro Sênior no MongoDB. Em sua função atual, ele está trabalhando com a AWS para criar as integrações técnicas e arquiteturas de referência para as soluções AWS e MongoDB. Ele tem mais de duas décadas de experiência em tecnologias de banco de dados e nuvem. Ele é apaixonado por fornecer soluções técnicas para clientes que trabalham com vários integradores de sistemas globais (GSIs) em várias regiões geográficas.

Carimbo de hora:

Mais de Aprendizado de máquina da AWS