Ideias de solução
Este artigo é uma ideia de solução. Se você quiser expandir o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações de implementação ou diretrizes de preços, informe-nos fornecendo comentários do GitHub.
Este artigo apresenta uma solução para automatizar a análise e a visualização de dados usando IA (inteligência artificial). Os principais componentes da solução são Azure Functions, Serviços Cognitivos do Azure e Banco de Dados do Azure para PostgreSQL.
Arquitetura
Baixe um arquivo PNG dessa arquitetura.
Fluxo de dados
- Uma atividade do Azure Function permite disparar um aplicativo Azure Functions no pipeline Azure Data Factory. Você cria uma conexão de serviço vinculado e usa o serviço vinculado com uma atividade para especificar a Função do Azure que deseja executar.
- Os dados são provenientes de várias fontes, incluindo o Armazenamento do Azure e Hubs de Eventos do Azure para dados de alto volume. Quando o pipeline recebe novos dados, ele dispara o aplicativo Azure Functions.
- O aplicativo Azure Functions chama a API dos Serviços Cognitivos para analisar os dados.
- A API dos Serviços Cognitivos retorna os resultados da análise no formato JSON para o aplicativo Azure Functions.
- O aplicativo Azure Functions armazena os dados e os resultados da API dos Serviços Cognitivos em Banco de Dados do Azure para PostgreSQL.
- O Azure Machine Learning usa algoritmos de machine learning personalizados para fornecer mais informações sobre os dados.
- Se você estiver se aproximando da etapa de aprendizado de máquina com uma perspectiva sem código, poderá implementar outras operações de análise de texto nos dados, como hash de recursos, Word2Vector e extração de n-gram.
- Se você preferir uma abordagem de primeiro código, poderá executar um modelo NLP (processamento de linguagem natural) de software livre como um experimento no Estúdio do Machine Learning.
- O conector do PostgreSQL para Power BI possibilita explorar insights interpretáveis por humanos no Power BI ou em um aplicativo Web personalizado.
Componentes
- Serviço de Aplicativo do Azure fornece uma plataforma totalmente gerenciada para criar, implantar e dimensionar aplicativos Web e APIs rapidamente.
- O Functions é uma plataforma de computação sem servidor orientada a eventos. Para obter informações sobre como usar uma atividade para executar uma função como parte de um pipeline do Data Factory, consulte Atividade do Azure Function em Azure Data Factory.
- Os Hubs de Eventos são uma plataforma de streaming de Big Data totalmente gerenciada.
- Os Serviços Cognitivos fornecem um conjunto de serviços de IA e APIs que você pode usar para criar inteligência cognitiva em aplicativos.
- O Banco de Dados do Azure para PostgreSQL é um serviço de banco de dados relacional totalmente gerenciado. Ele fornece alta disponibilidade, dimensionamento elástico, aplicação de patch e outros recursos de gerenciamento para PostgreSQL.
- O Azure Machine Learning é um serviço de nuvem que você pode usar para treinar, implantar e automatizar modelos de machine learning. O estúdio dá suporte a abordagens de código e sem código.
- O Power BI é uma coleção de serviços de software e aplicativos que exibem informações de análise e ajudam você a derivar insights de dados.
Detalhes do cenário
O pipeline automatizado usa os seguintes serviços para analisar os dados:
- Os Serviços Cognitivos usam IA para respostas a perguntas, análise de sentimento e tradução de texto.
- O Azure Machine Learning fornece ferramentas de machine learning para análise preditiva.
Para armazenar dados e resultados, a solução usa Banco de Dados do Azure para PostgreSQL. O banco de dados PostgreSQL dá suporte a dados não estruturados, consultas paralelas e particionamento declarativo. Esse suporte torna Banco de Dados do Azure para PostgreSQL uma opção eficaz para tarefas de IA e machine learning altamente intensivas em dados.
A solução automatiza a entrega da análise de dados. Um conector vincula Banco de Dados do Azure para MySQL com ferramentas de visualização como o Power BI.
A arquitetura usa um aplicativo Azure Functions para ingerir dados de várias fontes de dados. É uma solução sem servidor que oferece os seguintes benefícios:
- Manutenção de infraestrutura: Azure Functions é um serviço gerenciado que permite que os desenvolvedores se concentrem em trabalhos inovadores que fornecem valor para o negócio.
- Escalabilidade: Azure Functions fornece recursos de computação sob demanda, portanto, as instâncias de função são dimensionadas conforme necessário. À medida que as solicitações caem, os recursos e as instâncias de aplicativo são suspensos automaticamente.
Possíveis casos de uso
Banco de Dados do Azure para PostgreSQL é uma solução baseada em nuvem. Como resultado, essa solução não é recomendada para aplicativos móveis. É mais apropriado para análise downstream nos seguintes setores e outros:
- Transporte: previsão de manutenção
- Finanças: Avaliação de risco e detecção de fraudes
- Comércio eletrônico: mecanismos de previsão e recomendação de rotatividade do cliente
- Telecomunicações: otimização de desempenho
- Utilitários: prevenção contra interrupções
Considerações
Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios de orientação que podem ser usados para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.
Para a maioria dos recursos, a API do Serviço Cognitivo para Linguagem tem um tamanho máximo de 5120 caracteres para um único documento. Para todos os recursos, o tamanho máximo da solicitação é de 1 MB. Para obter mais informações sobre dados e limites de taxa, consulte Limites de serviço para o Serviço Cognitivo do Azure para Linguagem.
Em Banco de Dados do Azure para PostgreSQL, o volume e a velocidade de entrada determinam a seleção do modo de serviço e implantação. Dois serviços estão disponíveis:
- Banco de Dados do Azure para PostgreSQL
- Azure Cosmos DB for PostgreSQL, que anteriormente era conhecido como modo de Hiperescala (Citus)
Se você minerar grandes cargas de trabalho de opiniões e revisões do cliente, use o Azure Cosmos DB for PostgreSQL. Em Banco de Dados do Azure para PostgreSQL, dois modos estão disponíveis: servidor único e servidor flexível. Para entender quando usar cada modo de implantação, consulte O que é Banco de Dados do Azure para PostgreSQL?.
As versões anteriores dessa solução usavam os Serviços Cognitivos Análise de Texto API. O Serviço Cognitivo do Azure para Linguagem agora unifica três serviços de linguagem individuais nos Serviços Cognitivos: Análise de Texto, QnA Maker e LUIS (Reconhecimento vocal). Você pode migrar facilmente da API Análise de Texto para a API do Serviço Cognitivo para Linguagem. Para obter instruções, consulte Migrar para a versão mais recente do Serviço Cognitivo do Azure para Linguagem.
Segurança
A segurança fornece garantias contra ataques deliberados e o abuso de seus dados e sistemas valiosos. Para saber mais, confira Visão geral do pilar de segurança.
Todos os dados em Banco de Dados do Azure para PostgreSQL são criptografados e copiados automaticamente. Você pode configurar Microsoft Defender para Nuvem para mitigação adicional de ameaças. Para obter mais informações, consulte Habilitar Microsoft Defender para bancos de dados relacionais de software livre e responder a alertas.
DevOps
Você pode configurar GitHub Actions para se conectar ao banco de dados Banco de Dados do Azure para PostgreSQL usando sua cadeia de conexão e configurando um fluxo de trabalho. Para obter mais informações, consulte Início Rápido: use GitHub Actions para se conectar ao PostgreSQL do Azure.
Você também pode automatizar o ciclo de vida do machine learning usando o Azure Pipelines. Para obter informações sobre como implementar um fluxo de trabalho do MLOps e criar um pipeline de CI/CD para seu projeto, consulte o repositório do GitHub MLOps com o Azure ML.
Otimização de custo
A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.
O Serviço Cognitivo para Linguagem oferece vários tipos de preço. O número de registros de texto que você processa afeta seu custo. Para obter mais informações, confira Preços do Serviço Cognitivo para Linguagem.
Próximas etapas
- Visão geral do Azure Functions
- Atividade de função do Azure no Azure Data Factory
- Hubs de Eventos do Azure — uma plataforma de streaming de Big Data e um serviço de ingestão de eventos
- O que são os Serviços Cognitivos do Azure?
- O que é o Serviço Cognitivo do Azure para Linguagem?
- Como usar recursos do Serviço de Linguagem de maneira assíncrona
- Console de teste dos Serviços Cognitivos do Azure para API de Linguagem
- Usar o DirectQuery para vincular o PostgreSQL ao Power BI
- Criar um cluster do Azure Cosmos DB for PostgreSQL no portal do Azure
- Tutorial: Consumir modelos do Azure Machine Learning no Power BI
- Extrair insights do texto com o serviço de Linguagem
- Microsoft Certified: Azure AI Engineer Associate