App intelligenti con Database di Azure per PostgreSQL

Servizio app di Azure
Servizi di intelligenza artificiale di Azure
Database di Azure per PostgreSQL
Azure Machine Learning
Power BI

Idee per le soluzioni

Questo articolo è un'idea di soluzione. Per espandere il contenuto con altre informazioni, ad esempio potenziali casi d'uso, servizi alternativi, considerazioni sull'implementazione o indicazioni sui prezzi, inviare commenti e suggerimenti su GitHub.

Questo articolo presenta una soluzione per automatizzare l'analisi e la visualizzazione dei dati usando l'intelligenza artificiale. I componenti principali della soluzione sono Funzioni di Azure, Servizi cognitivi di Azure e Database di Azure per PostgreSQL.

Architettura

Diagram that shows the dataflow of an intelligent application using Azure Database for PostgreSQL.

Scaricare un file di Visio di questa architettura.

Flusso di dati

  1. Un'attività di Funzione di Azure consente di attivare un'app Funzioni di Azure nella pipeline di Azure Data Factory. Si crea una connessione al servizio collegato e si usa il servizio collegato con un'attività per specificare la funzione di Azure da eseguire.
  2. I dati provengono da più origini, tra cui Archiviazione di Azure e Hub eventi di Azure per i dati con volumi elevati. Quando la pipeline riceve nuovi dati, attiva l'app Funzioni di Azure.
  3. L'app Funzioni di Azure chiama l'API Servizi cognitivi per analizzare i dati.
  4. L'API Servizi cognitivi restituisce i risultati dell'analisi in formato JSON all'app Funzioni di Azure.
  5. L'app Funzioni di Azure archivia i dati e i risultati dell'API Servizi cognitivi in Database di Azure per PostgreSQL.
  6. Azure Machine Learning usa algoritmi di Machine Learning personalizzati per fornire ulteriori informazioni sui dati.
    • Se si sta avvicinando al passaggio di Machine Learning con una prospettiva senza codice, è possibile implementare ulteriori operazioni di analisi del testo sui dati, ad esempio hash delle funzionalità, Word2Vector e estrazione n-gram.
    • Se si preferisce un approccio code-first, è possibile eseguire un modello NLP (Natural Language Processing) open source come esperimento in Machine Learning Studio.
  7. Il connettore PostgreSQL per Power BI consente di esplorare informazioni dettagliate interpretabili dall'utente in Power BI o in un'applicazione Web personalizzata.

Componenti

Dettagli dello scenario

La pipeline automatizzata usa i servizi seguenti per analizzare i dati:

  • Servizi cognitivi usa l'intelligenza artificiale per la risposta alle domande, l'analisi del sentiment e la traduzione testuale.
  • Azure Machine Learning fornisce strumenti di Machine Learning per l'analisi predittiva.

Per archiviare dati e risultati, la soluzione usa Database di Azure per PostgreSQL. Il database PostgreSQL supporta dati non strutturati, query parallele e partizionamento dichiarativo. Questo supporto rende Database di Azure per PostgreSQL una scelta efficace per attività di intelligenza artificiale e Machine Learning a elevato utilizzo di dati.

La soluzione automatizza il recapito dell'analisi dei dati. Un connettore collega Database di Azure per MySQL con strumenti di visualizzazione come Power BI.

L'architettura usa un'app Funzioni di Azure per inserire dati da più origini dati. Si tratta di una soluzione serverless che offre i vantaggi seguenti:

  • Manutenzione dell'infrastruttura: Funzioni di Azure è un servizio gestito che consente agli sviluppatori di concentrarsi sul lavoro innovativo che offre valore all'azienda.
  • Scalabilità: Funzioni di Azure fornisce risorse di calcolo su richiesta, quindi le istanze di funzione vengono ridimensionate in base alle esigenze. Man mano che le richieste cadono, le risorse e le istanze dell'applicazione vengono disattivate automaticamente.

Potenziali casi d'uso

Database di Azure per PostgreSQL è una soluzione basata sul cloud. Di conseguenza, questa soluzione non è consigliata per le applicazioni per dispositivi mobili. È più appropriato per l'analisi downstream nei settori seguenti e altri:

  • Trasporto: previsione della manutenzione
  • Finanza: valutazione dei rischi e rilevamento delle frodi
  • E-commerce: motori di previsione e raccomandazione della varianza dei clienti
  • Telecomunicazioni: Ottimizzazione delle prestazioni
  • Utilità: prevenzione dell'interruzione

Considerazioni

Queste considerazioni implementano i pilastri di Azure Well-Architected Framework, che è un set di set di principi guida che possono essere usati per migliorare la qualità di un carico di lavoro. Per altre informazioni, vedere Framework ben progettato di Microsoft Azure.

  • Per la maggior parte delle funzionalità, l'API Servizi cognitivi per la lingua ha una dimensione massima di 5120 caratteri per un singolo documento. Per tutte le funzionalità, la dimensione massima della richiesta è 1 MB. Per altre informazioni sui limiti di dati e velocità, vedere Limiti del servizio per Il servizio cognitivo di Azure per la lingua.

  • In Database di Azure per PostgreSQL, il volume e la velocità di ingresso determinano la selezione della modalità di servizio e distribuzione. Sono disponibili due servizi:

    • Database di Azure per PostgreSQL
    • Azure Cosmos DB per PostgreSQL, precedentemente noto come modalità Hyperscale (Citus)

    Se si esminano carichi di lavoro elevati di opinioni e recensioni dei clienti, usare Azure Cosmos DB per PostgreSQL. All'interno di Database di Azure per PostgreSQL sono disponibili due modalità: server singolo e server flessibile. Per comprendere quando usare ogni modalità di distribuzione, vedere Che cos'è Database di Azure per PostgreSQL?.

  • Le versioni precedenti di questa soluzione usavano l'API Analisi del testo Servizi cognitivi. Il servizio cognitivo di Azure per il linguaggio ora unifica tre singoli servizi linguistici in Servizi cognitivi: Analisi del testo, QnA Maker e Language Understanding (LUIS). È possibile eseguire facilmente la migrazione dall'API Analisi del testo all'API Servizi cognitivi per il linguaggio. Per istruzioni, vedere Eseguire la migrazione alla versione più recente di Servizi cognitivi di Azure per il linguaggio.

Sicurezza

La sicurezza offre garanzie contro attacchi intenzionali e l'abuso di dati e sistemi preziosi. Per altre informazioni, vedere Panoramica del pilastro della sicurezza.

Tutti i dati in Database di Azure per PostgreSQL vengono crittografati e sottoposti automaticamente a backup. È possibile configurare Microsoft Defender per il cloud per un'ulteriore mitigazione delle minacce. Per altre informazioni, vedere Abilitare Microsoft Defender per database relazionali open source e rispondere agli avvisi.

DevOps

È possibile configurare GitHub Actions per connettersi al database Database di Azure per PostgreSQL usando i relativi stringa di connessione e configurando un flusso di lavoro. Per altre informazioni, vedere Avvio rapido: Usare GitHub Actions per connettersi ad Azure PostgreSQL.

È anche possibile automatizzare il ciclo di vita di Machine Learning usando Azure Pipelines. Per informazioni su come implementare un flusso di lavoro MLOps e compilare una pipeline CI/CD per il progetto, vedere il repository GitHub MLOps con Azure MLOps.

Ottimizzazione dei costi

L'ottimizzazione dei costi riguarda l'analisi dei modi per ridurre le spese non necessarie e migliorare l'efficienza operativa. Per altre informazioni, vedere Panoramica del pilastro di ottimizzazione dei costi.

Servizi cognitivi per la lingua offre diversi piani tariffari. Il numero di record di testo elaborati influisce sul costo. Per altre informazioni, vedere Servizi cognitivi per i prezzi della lingua.

Passaggi successivi