Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas

Os clientes em setores como bens de consumo embalados, manufatura e varejo estão sempre procurando maneiras de capacitar seus processos operacionais, enriquecendo-os com insights e análises geradas a partir de dados. Tarefas como previsão de vendas afetam diretamente operações como planejamento de matéria-prima, compras, fabricação, distribuição e logística de entrada/saída, e podem ter muitos níveis de impacto, desde um único armazém até instalações de produção em larga escala.

Os representantes e gerentes de vendas usam dados históricos de vendas para fazer previsões informadas sobre tendências futuras de vendas. Os clientes usam o SAP ERP Central Component (ECC) para gerenciar o planejamento da fabricação, venda e distribuição de mercadorias. O módulo de vendas e distribuição (SD) no SAP ECC ajuda a gerenciar pedidos de vendas. Os sistemas SAP são a principal fonte de dados históricos de vendas.

Os representantes e gerentes de vendas têm o conhecimento do domínio e a compreensão profunda de seus dados de vendas. No entanto, eles não têm habilidades de ciência de dados e programação para criar modelos de aprendizado de máquina (ML) que possam gerar previsões de vendas. Eles buscam ferramentas intuitivas e simples de usar para criar modelos de ML sem escrever uma única linha de código.

Para ajudar as organizações a alcançar a agilidade e eficácia que os analistas de negócios buscam, nós introduzido Tela do Amazon SageMaker, uma solução de ML sem código que ajuda a acelerar a entrega de soluções de ML em horas ou dias. O Canvas permite que os analistas usem facilmente os dados disponíveis em data lakes, data warehouses e armazenamentos de dados operacionais; construir modelos de ML; e use-os para fazer previsões interativamente e para pontuação em lotes em conjuntos de dados em massa, tudo sem escrever uma única linha de código.

Neste post, mostramos como trazer dados de pedidos de vendas do SAP ECC para gerar previsões de vendas usando um modelo de ML construído usando o Canvas.

Visão geral da solução

Para gerar previsões de vendas usando dados de vendas SAP, precisamos da colaboração de duas pessoas: engenheiros de dados e analistas de negócios (representantes de vendas e gerentes). Os engenheiros de dados são responsáveis ​​por configurar a exportação de dados do sistema SAP para Serviço de armazenamento simples da Amazon (Amazon S3) usando Fluxo de aplicativos da Amazon, que os analistas de negócios podem executar sob demanda ou automaticamente (com base em agendamento) para atualizar os dados SAP no bucket do S3. Os analistas de negócios são então responsáveis ​​por gerar previsões com os dados exportados usando o Canvas. O diagrama a seguir ilustra esse fluxo de trabalho.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Para este post, usamos SAP Modelo de Aquisição Empresarial NetWeaver (EPM) para os dados de amostra. O EPM é geralmente usado para fins de demonstração e teste no SAP. Ele usa o modelo de processo de negócios comum e segue o paradigma de objeto de negócios (BO) para suportar uma lógica de negócios bem definida. Usamos a transação SAP SEPM_DG (gerador de dados) para gerar cerca de 80,000 pedidos de vendas históricos e criamos uma visão HANA CDS para agregar os dados por ID do produto, data de venda e cidade, conforme mostrado no código a seguir:

@AbapCatalog.sqlViewName: 'ZCDS_EPM_VIEW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Sagemaker canvas sales order'
@OData.publish: true define view ZCDS_EPM as select from epm_v_sales_data as sd
inner join epm_v_bp as bp on sd.bp_id = bp.bp_id { key sd.product_id as productid, bp.city, concat( cast( Concat( Concat( Concat(substring(cast (sd.created_at as abap.char( 30 )), 1, 4), '-'), Concat(substring(cast (sd.created_at as abap.char( 30 )), 5, 2), '-') ), Substring(cast (sd.created_at as abap.char( 30 )), 7, 2) ) as char10 preserving type),' 00:00:00') as saledate, cast(sum(sd.gross_amount) as abap.dec( 15, 3 )) as totalsales }
group by sd.product_id,sd.created_at, bp.city

Na próxima seção, expomos essa visão usando os serviços SAP OData como estrutura ABAP, o que nos permite extrair os dados com o Amazon AppFlow.

A tabela a seguir mostra os dados históricos representativos de vendas da SAP, que usamos neste post.

ID do produto data de venda cidade Vendas totais
P-4 2013-01-02 00:00:00 Quito 1922.00
P-5 2013-01-02 00:00:00 Santo Domingo 1903.00

O arquivo de dados são dados históricos de frequência diária. Tem quatro colunas (productid, saledate, city e totalsales). Usamos o Canvas para construir um modelo de ML que é usado para prever totalsales para productid em uma determinada cidade.

Este post foi organizado para mostrar as atividades e responsabilidades de engenheiros de dados e analistas de negócios para gerar previsões de vendas de produtos.

Engenheiro de dados: extraia, transforme e carregue o conjunto de dados do SAP para o Amazon S3 com o Amazon AppFlow

A primeira tarefa que você executa como engenheiro de dados é executar um trabalho de extração, transformação e carregamento (ETL) em dados históricos de vendas do SAP ECC para um bucket do S3, que o analista de negócios usa como o conjunto de dados de origem para seu modelo de previsão. Para isso, usamos o Amazon AppFlow, pois fornece uma solução pronta para uso Conector SAP OData para ETL (conforme mostrado no diagrama a seguir), com uma interface do usuário simples para configurar tudo o que é necessário para configurar a conexão do SAP ECC ao bucket do S3.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Pré-requisitos

Veja a seguir os requisitos para integrar o Amazon AppFlow ao SAP:

  • SAP NetWeaver Stack versão 7.40 SP02 ou superior
  • Serviço de catálogo (OData v2.0/v2.0) habilitado no SAP Gateway para descoberta de serviço
  • Suporte para paginação do lado do cliente e opções de consulta para SAP OData Service
  • Conexão HTTPS habilitada para SAP

Autenticação

O Amazon AppFlow oferece suporte a dois mecanismos de autenticação para se conectar ao SAP:

  • Basico – Autentica usando o nome de usuário e a senha do SAP OData.
  • OAuth2.0 – Usa a configuração OAuth 2.0 com um provedor de identidade. OAuth 2.0 deve ser habilitado para serviços OData v2.0/v2.0.

Conexão

O Amazon AppFlow pode se conectar ao SAP ECC usando uma interface pública SAP OData ou uma conexão privada. Uma conexão privada melhora a privacidade e a segurança dos dados, transferindo dados por meio da rede privada da AWS em vez da Internet pública. Uma conexão privada usa o serviço VPC endpoint para a instância SAP OData em execução em uma VPC. O serviço de VPC endpoint deve ter o principal de serviço do Amazon AppFlow appflow.amazonaws.com como principal permitido e deve estar disponível em pelo menos mais de 50% das zonas de disponibilidade em uma região da AWS.

Configurar um fluxo no Amazon AppFlow

Configuramos um novo fluxo no Amazon AppFlow para executar um trabalho ETL em dados do SAP para um bucket do S3. Esse fluxo permite a configuração do SAP OData Connector como origem, bucket do S3 como destino, seleção de objeto OData, mapeamento de dados, validação de dados e filtragem de dados.

  1. Configure o SAP OData Connector como uma fonte de dados fornecendo as seguintes informações:
    1. URL do host do aplicativo
    2. Caminho do serviço de aplicativo (caminho do catálogo)
    3. Número da porta
    4. Número do cliente
    5. Idioma de logon
    6. Tipo de conexão (link privado ou público)
    7. Modo de autenticação
    8. Nome da conexão para a configuração
      Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  2. Depois de configurar a origem, escolha o objeto OData e o subobjeto para os pedidos de venda.
    Geralmente, os dados de vendas da SAP são exportados em uma determinada frequência, como mensal ou trimestral para o tamanho completo. Para esta postagem, escolha a opção de subobjeto para a exportação em tamanho real.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  3. Escolha o bucket do S3 como destino.
    O fluxo exporta dados para este bucket.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  4. Escolha Preferência de formato de dados, selecione Formato CSV.
  5. Escolha Preferência de transferência de dados, selecione Agregar todos os registros.
  6. Escolha Preferência de nome de arquivo, selecione Adicionar um carimbo de data/hora ao nome do arquivo.
  7. Escolha Preferência de estrutura de pastas, selecione Nenhuma pasta com carimbo de data/hora.
    A configuração de agregação de registros exporta os dados de vendas em tamanho real do SAP combinados em um único arquivo. O nome do arquivo termina com um carimbo de data/hora no formato AAAA-MM-DDTHH:mm:ss em uma única pasta (nome do fluxo) no bucket do S3. O Canvas importa dados desse arquivo único para treinamento e previsão de modelos.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  8. Configure o mapeamento e as validações de dados para mapear os campos de dados de origem para os campos de dados de destino e habilite as regras de validação de dados conforme necessário.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  9. Você também configura as condições de filtragem de dados para filtrar registros específicos se seu requisito exigir.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  10. Configure seu gatilho de fluxo para decidir se o fluxo é executado manualmente sob demanda ou automaticamente com base em um agendamento.
    Quando configurado para um agendamento, a frequência é baseada na frequência com que a previsão precisa ser gerada (geralmente mensal, trimestral ou semestral).
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Depois que o fluxo é configurado, os analistas de negócios podem executá-lo sob demanda ou com base no agendamento para executar um trabalho de ETL nos dados do pedido de vendas do SAP para um bucket do S3.
  11. Além da configuração do Amazon AppFlow, os engenheiros de dados também precisam configurar um Gerenciamento de acesso e identidade da AWS (IAM) do Canvas para que ele possa acessar outros serviços da AWS. Para obter instruções, consulte Dê aos seus usuários permissões para realizar a previsão de séries temporais.

Analista de negócios: use os dados históricos de vendas para treinar um modelo de previsão

Vamos mudar de marcha e passar para o lado do analista de negócios. Como analista de negócios, estamos procurando um serviço visual de apontar e clicar que facilite a criação de modelos de ML e gere previsões precisas sem escrever uma única linha de código ou ter experiência em ML. O Canvas atende ao requisito como solução de ML sem código.

Primeiro, certifique-se de que sua função do IAM esteja configurada de forma que o Canvas possa acessar outros serviços da AWS. Para obter mais informações, consulte Dê aos seus usuários permissões para realizar a previsão de séries temporais, ou você pode pedir ajuda à sua equipe de engenharia de nuvem.

Quando o engenheiro de dados terminar de configurar a configuração de ETL baseada em Amazon AppFlow, os dados históricos de vendas estarão disponíveis para você em um bucket do S3.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Agora você está pronto para treinar um modelo com o Canvas! Isso geralmente envolve quatro etapas: importar dados para o serviço, configurar o treinamento do modelo selecionando o tipo de modelo apropriado, treinar o modelo e, finalmente, gerar previsões usando o modelo.

Importar dados no Canvas

Primeiro, inicie o aplicativo Canvas a partir do Amazon Sage Maker console ou de seu acesso de logon único. Se você não sabe como fazer isso, entre em contato com seu administrador para que ele possa orientá-lo no processo de configuração do Canvas. Certifique-se de acessar o serviço na mesma região que o bucket do S3 que contém o conjunto de dados histórico do SAP. Você deverá ver uma tela como a seguinte.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Em seguida, conclua as seguintes etapas:

  1. No Canvas, escolha Conjuntos de dados no painel de navegação.
  2. Escolha importação para começar a importar dados do bucket do S3.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  3. Na tela de importação, escolha o arquivo de dados ou objeto do bucket do S3 para importar os dados de treinamento.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Você pode importar vários conjuntos de dados no Canvas. Ele também suporta a criação de junções entre os conjuntos de dados escolhendo Juntar dados, que é particularmente útil quando os dados de treinamento estão espalhados por vários arquivos.

Configurar e treinar o modelo

Depois de importar os dados, conclua as etapas a seguir:

  1. Escolha Modelos no painel de navegação.
  2. Escolha novo modelo para iniciar a configuração para treinar o modelo de previsão.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  3. Para o novo modelo, dê-lhe um nome adequado, como product_sales_forecast_model.
  4. Selecione o conjunto de dados de vendas e escolha Selecione o conjunto de dados.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
    Depois que o conjunto de dados for selecionado, você poderá ver as estatísticas de dados e configurar o treinamento do modelo na guia Build.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  5. Selecionar Vendas totais como a coluna de destino para a previsão.
    Você pode ver Previsão de série temporal é selecionado automaticamente como o tipo de modelo.
  6. Escolha configurar.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  7. No Configuração de previsão de série temporal seção, escolha ID do produto para Coluna ID do item.
  8. Escolha cidade para Coluna do grupo.
  9. Escolha data de venda para Coluna de carimbo de hora.
  10. Escolha dias, entrar 120.
  11. Escolha Salvar.
    Isso configura o modelo para fazer previsões para totalsales por 120 dias usando saledate com base em dados históricos, que podem ser consultados para productid e city.
    Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.
  12. Quando a configuração de treinamento do modelo estiver concluída, escolha Construção padrão para iniciar o treinamento do modelo.

A Modelo de visualização a opção não está disponível para o tipo de modelo de previsão de série temporal. Você pode revisar o tempo estimado para o treinamento do modelo no Analise aba.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

O treinamento do modelo pode levar de 1 a 4 horas para ser concluído, dependendo do tamanho dos dados. Quando o modelo estiver pronto, você poderá usá-lo para gerar a previsão.

Gerar uma previsão

Quando o treinamento do modelo é concluído, ele mostra a precisão da previsão do modelo no Analise aba. Por exemplo, neste exemplo, ele mostra a precisão da previsão como 92.87%.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

A previsão é gerada no Prever aba. Você pode gerar previsões para todos os itens ou um único item selecionado. Também mostra o intervalo de datas para o qual a previsão pode ser gerada.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Como exemplo, escolha o Item único opção. Selecione P-2 para item e Quito para Grupo para gerar uma previsão para o produto P-2 para a cidade Quito para o período de 2017-08-15 00:00:00 a 2017-12-13 00:00:00.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

A previsão gerada mostra a previsão média, bem como o limite superior e inferior da previsão. Os limites de previsão ajudam a configurar uma abordagem agressiva ou equilibrada para o tratamento da previsão.

Você também pode baixar a previsão gerada como um arquivo CSV ou imagem. O arquivo CSV de previsão gerado geralmente é usado para trabalhar offline com os dados de previsão.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

A previsão agora é gerada para os dados da série temporal. Quando uma nova linha de base de dados fica disponível para a previsão, você pode alterar o conjunto de dados no Canvas para treinar novamente o modelo de previsão usando a nova linha de base.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.

Você pode treinar novamente o modelo várias vezes conforme e quando os dados de treinamento forem alterados.

Conclusão

Nesta postagem, você aprendeu como o Amazon AppFlow SAP OData Connector exporta dados de pedidos de vendas do sistema SAP para um bucket do S3 e como usar o Canvas para criar um modelo para previsão.

Você pode usar o Canvas para qualquer cenário de dados de série temporal SAP, como previsão de despesas ou receitas. Todo o processo de geração de previsão é orientado à configuração. Os gerentes e representantes de vendas podem gerar previsões de vendas repetidamente por mês ou trimestre com um conjunto atualizado de dados de maneira rápida, direta e intuitiva, sem escrever uma única linha de código. Isso ajuda a melhorar a produtividade e permite planejamento e decisões rápidas.

Para começar, saiba mais sobre o Canvas e o Amazon AppFlow usando os seguintes recursos:


Sobre os autores

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Brajendra Singh é arquiteto de soluções na Amazon Web Services que trabalha com clientes corporativos. Ele tem um forte histórico de desenvolvedor e é um grande entusiasta de soluções de dados e aprendizado de máquina.

Extraia insights do SAP ERP com soluções de ML sem código com Amazon AppFlow e Amazon SageMaker Canvas PlatoBlockchain Data Intelligence. Pesquisa Vertical. Ai.Davide Gallitelli é um Arquiteto de Soluções Especialista para AI/ML na região EMEA. Ele está baseado em Bruxelas e trabalha em estreita colaboração com clientes em todo o Benelux. Ele é desenvolvedor desde muito jovem, começando a codificar aos 7 anos de idade. Ele começou a aprender IA/ML na universidade e se apaixonou por isso desde então.

Carimbo de hora:

Mais de Aprendizado de máquina da AWS