Architettura di Analytics per Eventi a Bassa Latenza

Costruire pipeline di dati per grandi spazi fisici è difficile.

Un evento con 20.000 persone crea problemi diversi rispetto a una normale web app. In una web app, gli utenti sono distribuiti in diversi fusi orari. In una struttura, migliaia di persone creano picchi di dati contemporaneamente.

L'elaborazione batch o il long-polling causeranno ritardi. Nel controllo della folla, un ritardo di 15 minuti è un fallimento. Si finisce per reagire a problemi passati invece di prevenirli.

Per ottenere una velocità inferiore al secondo, è necessario uno stream continuo dall'hardware edge alla propria dashboard.

Ecco lo schema per una pipeline di telemetria resiliente.

Livello 1: Edge Compute Offline-First

È necessaria una latenza inferiore a 5 ms. È inoltre necessario gestire le interruzioni di rete. Utilizza nodi edge con una cache locale in-memory come Redis. Replica il tuo database cloud su questi nodi prima dell'inizio dell'evento.

Quando un partecipante scansiona un tag, il sistema controlla la cache locale. Questo evita di passare per internet e mantiene il flusso ai varchi.

Livello 2: Ingestione Asincrona tramite MQTT

Le reti delle strutture sono spesso instabili. Usa MQTT perché è leggero. I nodi edge pubblicano messaggi a un broker cloud. Il broker instrada quindi i dati verso le code di ingestione.

Livello 3: WebSocket Full-Duplex

Non far richiedere gli aggiornamenti al frontend. Usa i WebSocket per mantenere una connessione persistente con il tuo API gateway. Ciò garantisce che il team operativo veda i cambiamenti sul campo in meno di un secondo.

Questa configurazione consente ai team di individuare immediatamente picchi di folla o bassi livelli di coinvolgimento. È possibile reindirizzare il personale prima che si formi un collo di bottiglia.

Come ottimizzi l'hardware IoT per folle dense? Condividi le tue opinioni qui sotto.

Fonte: https://dev.to/stampiq/architecting-low-latency-real-time-event-analytics-at-scale-from-edge-rfid-to-websockets-3098