Ideias de soluções
Este artigo descreve uma ideia de solução. Seu arquiteto de nuvem pode usar essa orientação para ajudar a visualizar os principais componentes para uma implementação típica dessa arquitetura. Use este artigo como ponto de partida para projetar uma solução bem arquitetada que se alinhe aos requisitos específicos de sua carga de trabalho.
Este artigo apresenta uma solução para automatizar a análise e visualização de dados usando inteligência artificial (IA). Os principais componentes da solução são Azure Functions, serviços de IA do Azure e Banco de Dados do Azure para PostgreSQL.
Arquitetura
Baixe um Arquivo Visio dessa arquitetura.
Fluxo de dados
- Uma atividade de função do Azure permite que você dispare um aplicativo do Azure Functions no pipeline do Azure Data Factory. Você cria uma conexão de serviço vinculada e usa o serviço vinculado com uma atividade para especificar a função do Azure que deseja executar.
- Os dados vêm de várias fontes, incluindo o Armazenamento do Azure e os Hubs de Eventos do Azure para dados de alto volume. Quando o pipeline recebe novos dados, ele aciona o Aplicativo Azure Functions.
- O aplicativo Azure Functions chama a API de serviços de IA do Azure para analisar os dados.
- A API de serviços de IA do Azure 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 de serviços de IA do Azure no Banco de Dados do Azure para PostgreSQL.
- O Aprendizado de Máquina do Azure usa algoritmos de aprendizado de máquina personalizados para fornecer mais informações sobre os dados.
- Se você estiver abordando a 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 recurso, Word2Vector e extração de n-gramas.
- Se você preferir uma abordagem de código primeiro, poderá executar um modelo de processamento de linguagem natural (NLP) de código aberto como um experimento no estúdio de Machine Learning.
- O conector PostgreSQL para Power BI torna possível explorar insights interpretáveis por humanos no Power BI ou em um aplicativo Web personalizado.
Componentes
- O Serviço de Aplicativo do Azure fornece uma plataforma totalmente gerenciada para rapidamente criar, implantar e colocar em escala aplicativos Web e APIs.
- 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 de função do Azure no Azure Data Factory.
- Hubs de Eventos são uma plataforma de streaming para 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 patches 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 suporta abordagens code-first e no-code.
- O Power BI é uma coleção de serviços de software e aplicativos que exibem informações analíticas e ajudam você a obter insights dos dados.
Detalhes do cenário
O pipeline automatizado usa os seguintes serviços para analisar os dados:
- Os serviços de IA do Azure usam IA para responder a perguntas, análise de sentimentos e tradução de texto.
- O Azure Machine Learning fornece ferramentas de aprendizado de máquina para análise preditiva.
Para armazenar dados e resultados, a solução usa o Banco de Dados do Azure para PostgreSQL. O banco de dados PostgreSQL oferece suporte a dados não estruturados, consultas paralelas e particionamento declarativo. Esse suporte torna o Banco de Dados do Azure para PostgreSQL uma escolha eficaz para tarefas de IA e aprendizado de máquina altamente intensivas em dados.
A solução automatiza a entrega da análise de dados. Um conector vincula o Banco de Dados do Azure para MySQL a ferramentas de visualização como o Power BI.
A arquitetura usa um Aplicativo do 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: o Azure Functions é um serviço gerenciado que permite que os desenvolvedores se concentrem em trabalhos inovadores que agreguem valor aos negócios.
- Escalabilidade: o Azure Functions fornece recursos de computação sob demanda, para que as instâncias de função sejam dimensionadas conforme necessário. Conforme as solicitações caírem, recursos e instâncias de aplicativo cairão automaticamente.
Possíveis casos de uso
O 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 riscos e detecção de fraudes
- E-commerce: Mecanismos de previsão e recomendação de churn de clientes
- Telecomunicações: Otimização de desempenho
- Utilitários: Prevenção de interrupções
Considerações
Estas 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, consulte Microsoft Azure Well-Architected Framework.
Para a maioria dos recursos, a API de Linguagem de IA do Azure 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 Idioma.
No Banco de Dados do Azure para PostgreSQL, o volume e a velocidade de entrada determinam sua seleção de serviço e modo de implantação. Dois serviços estão disponíveis:
- Banco de Dados do Azure para PostgreSQL
- Azure Cosmos DB para PostgreSQL, que anteriormente era conhecido como modo Hyperscale (Citus)
Se você minerar grandes cargas de trabalho de opiniões e avaliações de clientes, use o Azure Cosmos DB para PostgreSQL. No 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 é o Banco de Dados do Azure para PostgreSQL?.
As versões anteriores dessa solução usavam a API de Análise de Texto dos serviços de IA do Azure. A Linguagem de IA do Azure agora unifica três serviços de linguagem individuais nos serviços de IA do Azure: Análise de Texto, QnA Maker e LUIS (Reconhecimento Vocal). Você pode migrar facilmente da API de Análise de Texto para a API de Linguagem de IA do Azure. Para obter instruções, consulte Migrar para a 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 no Banco de Dados do Azure para PostgreSQL são criptografados e armazenados em backup automaticamente. Você pode configurar o Microsoft Defender for Cloud para mitigação adicional de ameaças. Para mais informações, consulte Habilitar o Microsoft Defender para bancos de dados relacionais de código aberto e responder a alertas.
DevOps
Você pode configurar as Ações do GitHub para se conectar ao Banco de Dados do Azure para banco de dados PostgreSQL usando sua cadeia de conexão e configurando um fluxo de trabalho. Para obter mais informações, consulte Guia de início rápido: usar ações do GitHub para se conectar ao Azure PostgreSQL.
Você também pode automatizar seu ciclo de vida de aprendizado de máquina usando o Azure Pipelines. Para obter informações sobre como implementar um fluxo de trabalho MLOps e criar um pipeline de CI/CD para seu projeto, consulte o repositório MLOps do GitHub 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 Azure AI Language 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, consulte 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 de um texto com o serviço de linguagem
- Microsoft Certified: Azure AI Engineer Associate