Ideias de soluções
Este artigo é uma ideia de solução. Se você quiser que expandamos o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações de implementação ou orientação de preços, informe-nos fornecendo feedback do GitHub.
Este artigo apresenta uma solução para automatizar a análise e visualização de dados usando inteligência artificial (IA). Os componentes principais da solução são o Azure Functions, os Serviços Cognitivos do Azure e o Banco de Dados do Azure para PostgreSQL.
Arquitetura
Transfira um ficheiro do Visio desta arquitetura.
Fluxo de dados
- Uma atividade do Azure Function permite acionar um Aplicativo do Azure Functions no pipeline do 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 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 Cognitivos para analisar os dados.
- A API de 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 resultados da API de Serviços Cognitivos no Banco de Dados do Azure para PostgreSQL.
- O Azure Machine Learning usa algoritmos personalizados de aprendizado de máquina para fornecer mais informações sobre os dados.
- Se você estiver abordando a etapa de aprendizado de máquina com uma perspetiva sem código, poderá implementar outras operações de análise de texto nos dados, como hash de recursos, Word2Vetor e extração de n-gramas.
- Se preferir uma abordagem code-first, você pode 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 informações 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 criar, implantar e dimensionar rapidamente 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 da função do Azure no 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, escalabilidade elástica, 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 aprendizado de máquina. 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 de análise 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 Cognitivos usam IA para resposta a perguntas, análise de sentimentos e tradução de texto.
- O Azure Machine Learning fornece ferramentas de aprendizagem automática 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 suporta 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 da infraestrutura: o Azure Functions é um serviço gerenciado que permite que os desenvolvedores se concentrem em trabalhos inovadores que agreguem valor ao negócio.
- Escalabilidade: o Azure Functions fornece recursos de computação sob demanda, para que as instâncias de função sejam dimensionadas conforme necessário. À medida que as solicitações caem, os recursos e as instâncias de aplicativos caem automaticamente.
Potenciais casos de utilização
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 deteção de fraudes
- E-commerce: Mecanismos de previsão e recomendação de rotatividade de clientes
- Telecomunicações: Otimização de desempenho
- Utilitários: Prevenção de interrupções
Considerações
Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.
Para a maioria dos recursos, o Cognitive Service for Language API 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 limites de dados e taxa, consulte Limites de serviço para o Serviço Cognitivo do Azure para Idioma.
No Banco de Dados do Azure para PostgreSQL, seu volume e velocidade de entrada determinam sua seleção de serviço e modo de implantação. Estão disponíveis dois serviços:
- Base 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 desta solução utilizavam a API de Análise de Texto dos Serviços Cognitivos. O Serviço Cognitivo do Azure para Idiomas agora unifica três serviços de idioma individuais nos Serviços Cognitivos: Análise de Texto, QnA Maker e Compreensão de Idiomas (LUIS). Você pode migrar facilmente da API de Análise de Texto para a API do Serviço Cognitivo para Idiomas. Para obter instruções, consulte Migrar para a versão mais recente do Serviço Cognitivo do Azure para Idioma.
Segurança
A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.
Todos os dados no Banco de Dados do Azure para PostgreSQL são automaticamente criptografados e copiados . Você pode configurar o Microsoft Defender for Cloud para mitigação adicional de ameaças. Para obter 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 GitHub MLOps com Azure ML.
Otimização de custos
A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.
O Cognitive Service for Language oferece vários níveis de preços. O número de registros de texto que você processa afeta seu custo. Para obter mais informações, consulte Serviço cognitivo para preços de idiomas.
Próximos passos
- Visão geral do Azure Functions
- Atividade do Azure Function 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 Idioma?
- Como usar os recursos do serviço de idioma de forma assíncrona
- Console de teste do Azure Cognitive Services for Language API
- 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
- Extraia informações do texto com o Serviço de idiomas
- Certificado pela Microsoft: Azure AI Engineer Associate