Idee per le soluzioni
Questo articolo è un'idea di soluzione. Per espandere il contenuto con altre informazioni, ad esempio casi d'uso potenziali, servizi alternativi, considerazioni sull'implementazione o indicazioni sui prezzi, inviare commenti e suggerimenti su GitHub.
Questo articolo descrive un'architettura basata su eventi serverless che usa Hub eventi di Azure e Funzioni di Azure per inserire e filtrare un flusso di dati per l'archiviazione del database.
Architettura
Flusso di dati
- Gli eventi arrivano all'hub eventi di input.
- La funzione di de-batch e filtro di Azure viene attivata per gestire l'evento. Questo passaggio filtra gli eventi indesiderati e de-batch gli eventi ricevuti prima di inviarli all'hub eventi di output.
- Se la funzione di de-batch e filtro di Azure non riesce a archiviare correttamente l'evento, l'evento viene inviato all'hub eventi Deadletter 1.
- Gli eventi in arrivo nell'hub eventi di output attivano la funzione di Trasformazione di Azure. Questa funzione di Azure trasforma l'evento in un messaggio per l'istanza di Azure Cosmos DB.
- L'evento viene archiviato in un database di Azure Cosmos DB.
- Se la funzione di trasformazione di Azure non riesce a archiviare correttamente l'evento, l'evento viene salvato nell'hub eventi Deadletter 2.
Componenti
- Hub eventi inserisce il flusso di dati. Hub eventi è progettato per scenari di flusso di dati con velocità effettiva elevata.
- Funzioni di Azure è un'opzione di calcolo senza server. Usa un modello basato su eventi, in cui un frammento di codice (una funzione) viene richiamato da un trigger.
- Azure Cosmos DB è un servizio di database multimodelle disponibile in modalità serverless basata sul consumo. Per questo scenario, la funzione di elaborazione eventi archivia i record JSON usando Azure Cosmos DB per NoSQL.
Dettagli dello scenario
Questa idea di soluzione descrive una variante di un'architettura basata su eventi serverless che usa Hub eventi e Funzioni di Azure per inserire ed elaborare un flusso di dati. I risultati vengono scritti in un database per l'archiviazione e la revisione futura dopo che vengono de-batch e filtrati.
Per altre informazioni sui concetti di base, considerazioni e approcci per l'elaborazione di eventi serverless, vedere l'architettura di riferimento per l'elaborazione di eventi serverless .
Potenziali casi d'uso
Un caso d'uso comune per l'implementazione di un modello di elaborazione del flusso di eventi end-to-end include il servizio di inserimento di streaming di Hub eventi per ricevere ed elaborare eventi al secondo usando una logica di de-batch e trasformazione implementata con funzioni altamente scalabili e attivate dall'hub eventi.
Autori di contributi
Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai collaboratori seguenti.
Autore principale:
- Rajasa Savant | Senior Software Development Engineer
Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.
Passaggi successivi
- Documentazione di Hub eventi di Azure
- Introduzione a Funzioni di Azure
- Documentazione di Funzioni di Azure
- Panoramica di Azure Cosmos DB
- Scegliere un'API in Azure Cosmos DB
Risorse correlate
- L'elaborazione di eventi serverless è un'architettura di riferimento che descrive in dettaglio un'architettura tipica di questo tipo, con esempi di codice e considerazioni importanti.
- Il monitoraggio dell'elaborazione di eventi serverless offre una panoramica e indicazioni sul monitoraggio di architetture basate su eventi serverless come questa.
- Azure Kubernetes nell'elaborazione del flusso di eventi descrive una variante di un'architettura basata su eventi serverless in esecuzione in Azure Kubernetes con scalabilità KEDA.
- Lo scenario di collegamento privato nell'elaborazione del flusso di eventi è un'idea di soluzione per implementare un'architettura simile in una rete virtuale con endpoint privati, al fine di migliorare la sicurezza.