Introduzione ad Analisi di flusso di Azure

Analisi di flusso di Azure è un motore di elaborazione del flusso completamente gestito progettato per analizzare ed elaborare grandi volumi di dati di streaming con latenze sub-millisecondi. I modelli e le relazioni possono essere identificati nei dati che provengono da diverse origini di input, tra cui applicazioni, dispositivi, sensori, clickstream e feed di social media. Questi modelli possono essere usati per attivare azioni e avviare flussi di lavoro, ad esempio la creazione di avvisi, l'invio di informazioni a uno strumento di creazione di report o l'archiviazione dei dati trasformati per un uso successivo. Analisi di flusso è disponibile anche nel runtime di Azure IoT Edge, consentendo di elaborare i dati direttamente nei dispositivi IoT.

Gli scenari seguenti sono esempi di quando è possibile usare Analisi di flusso di Azure:

  • Streaming della pipeline ETL in Archiviazione di Azure in formato Parquet
  • Applicazioni basate su eventi con database Azure SQL e Azure Cosmos DB
  • Analizzare i flussi di telemetria in tempo reale e i log dalle applicazioni e dai dispositivi IoT
  • Dashboard in tempo reale con Power BI
  • Rilevamento anomalie per rilevare picchi, immersioni e lente modifiche positive e negative nei valori del sensore
  • Analisi geospaziale per la gestione della flotta e veicoli senza conducente
  • Monitoraggio remoto e manutenzione predittiva di risorse di valore elevato
  • Analisi clickstream per determinare il comportamento del cliente

È possibile provare Analisi di flusso di Azure con una sottoscrizione di Azure gratuita.

Pipeline introduttiva di Analisi di flusso

Funzionalità e vantaggi principali

Semplicità d'uso

È possibile iniziare a usare Analisi di flusso di Azure in tutta semplicità. Sono necessari solo pochi clic per connettersi a più origini o sink creando una pipeline end-to-end. Analisi di flusso può connettersi a Hub eventi di Azure e hub IoT di Azure per l'inserimento dei dati in streaming, nonché ad Archiviazione BLOB di Azure per l'inserimento dei dati cronologici. L'input del processo può anche includere dati di riferimento statici o a modifica lenta di Archiviazione BLOB di Azure o del database SQL che possono essere uniti a dati in streaming per eseguire operazioni di ricerca.

Analisi di flusso può indirizzare l'output del processo a molti sistemi di archiviazione, tra cui Archiviazione BLOB di Azure, il database SQL di Azure, Azure Data Lake Storage e Azure Cosmos DB. È anche possibile eseguire analisi in batch con Azure Synapse Analytics o Azure HDInsight sull'output di flusso o inviare l'output a un altro servizio, ad esempio Hub eventi per l'utilizzo o Power BI per la visualizzazione in tempo reale.

Per l'intero elenco di output di Analisi di flusso, vedere Informazioni sugli output di Analisi di flusso di Azure.

Produttività per i programmatori

Analisi di flusso di Azure usa un linguaggio di query SQL che è stato migliorato con potenti vincoli temporali per analizzare i dati in continua evoluzione. È anche possibile creare processi usando strumenti di sviluppo come Azure PowerShell, l'interfaccia della riga di comando di Azure, strumenti di Visual Studio per Analisi di flusso, l'estensione di Analisi di flusso per Visual Studio Code o i modelli di Azure Resource Manager. L'uso di strumenti di sviluppo permette di sviluppare query di trasformazione offline e usare la pipeline di integrazione continua e distribuzione continua per inviare processi ad Azure.

Il linguaggio di query di Analisi di flusso consente di eseguire CEP (Elaborazione eventi complessi) offrendo un'ampia gamma di funzioni per l'analisi dei dati di streaming. Questo linguaggio di query supporta semplici funzioni di manipolazione, aggregazione e analisi dei dati, funzioni geospaziali, criteri di ricerca e rilevamento anomalie. È possibile modificare le query nel portale o con gli strumenti di sviluppo Microsoft e testarle usando i dati di esempio estratti da un flusso live.

È possibile estendere le funzionalità del linguaggio di query definendo e richiamando funzioni aggiuntive. È possibile definire chiamate di funzione in Azure Machine Learning per sfruttare i vantaggi delle soluzioni Azure Machine Learning e integrare funzioni o aggregazioni definite dall'utente in JavaScript o C# per eseguire calcoli complessi come parte di una query di Analisi di flusso.

Soluzione completamente gestita

Analisi di flusso di Azure è un'offerta completamente gestita (PaaS) in Azure. Non è necessario effettuare il provisioning dell'hardware o dell'infrastruttura, nonché aggiornare il sistema operativo o il software. Analisi di flusso di Azure gestisce completamente il processo, quindi è possibile concentrarsi sulla logica di business e non sull'infrastruttura.

Eseguire nel cloud o nella rete perimetrale intelligente

È possibile eseguire Analisi di flusso di Azure nel cloud per l'analisi su ampia scala oppure in IoT Edge o Azure Stack per l'analisi a latenza ultra bassa. Analisi di flusso di Azure usa gli stessi strumenti e lo stesso linguaggio di query sia nel cloud che nella rete perimetrale, consentendo agli sviluppatori di creare architetture realmente ibride per l'elaborazione dello streaming.

Costo totale di proprietà ridotto

Come servizio cloud, Analisi di flusso è ottimizzato in funzione del costo. Non sono previsti costi iniziali e si paga solo per le unità di streaming utilizzate. Non è necessario alcun impegno o provisioning di cluster ed è possibile aumentare le istanze o le prestazioni del processo in base alle esigenze aziendali.

Supporto di carichi di lavoro cruciali

Analisi di flusso di Azure è disponibile in più aree geografiche del mondo ed è progettato per l'esecuzione di carichi di lavoro cruciali, perché soddisfa i requisiti di affidabilità, sicurezza e conformità.

Affidabilità

Analisi di flusso di Azure garantisce un'elaborazione di eventi di tipo exactly-once e la distribuzione di eventi at-least-once, quindi non vengono mai persi eventi. L'elaborazione exactly-once è garantita con uno specifico output, come descritto nell'articolo sulle garanzie di distribuzione degli eventi.

Analisi di flusso di Azure include funzionalità di ripristino predefinite in caso di errori di recapito degli eventi. Analisi di flusso fornisce anche checkpoint predefiniti per mantenere lo stato del proprio lavoro e fornisce risultati ripetibili.

Come servizio gestito, Analisi di flusso garantisce l'elaborazione di eventi con una disponibilità del 99,9% a un livello di granularità di un minuto.

Sicurezza

In termini di sicurezza, Analisi di flusso di Azure crittografa tutte le comunicazioni in ingresso e in uscita e supporta lo standard TLS 1.2. Anche i checkpoint incorporati sono crittografati. Analisi di flusso non archivia i dati in ingresso perché tutta l'elaborazione viene eseguita in memoria. Analisi di flusso supporta anche reti virtuali di Azure durante l'esecuzione di un processo in un cluster di Analisi di flusso.

Conformità

Analisi di flusso di Azure soddisfa più certificazioni di conformità, come descritto nella panoramica della conformità di Azure.

Prestazioni

Analisi di flusso può elaborare milioni di eventi al secondo e può recapitare risultati con latenza estremamente bassa. Consente di aumentare la scalabilità orizzontale per adattarsi ai carichi di lavoro. Analisi di flusso supporta prestazioni più elevate grazie al partizionamento, ovvero consentendo di usare in parallelo ed eseguire query complesse su più nodi di streaming. Analisi di flusso di Azure si basa su Trill, un motore di analisi di flusso in memoria ad alte prestazioni, sviluppato in collaborazione con Microsoft Research.

Passaggi successivi

In questo articolo è stata presentata una panoramica di Analisi di flusso di Azure. È ora possibile approfondire ulteriormente l'argomento e creare il primo processo di Analisi di flusso: