Data
Streaming
Network
Orchestrazione
Velocità

Data Streaming

La tecnologia che permette l’elaborazione in tempo reale dei dati
Danilo Cantarella
Senior Software Engineer

Che cos’è lo streaming dei dati

In un mondo sempre più connesso e digitalizzato, la quantità di dati prodotta dalle attività quotidiane aumenta costantemente e l'elaborazione di questi può essere un'operazione costosa in termini di tempo e risorse. Con la tecnologia dello streaming dei dati è possibile elaborarli in tempo reale. Questo permette di trasmettere a un destinatario i dati in modo continuo e costante mentre vengono generati o raccolti, anziché aspettare che vengano raccolti e poi inviati in blocco.

Lo streaming dei dati viene utilizzato in molti contesti, come il monitoraggio di sensori in tempo reale, la raccolta di dati di mercato finanziario, la trasmissione di video in diretta e la condivisione di dati tra applicazioni.

In particolare, nell’orchestrazione delle reti, questa tecnologia viene usata per la trasmissione di dati in tempo reale tra diversi nodi di una rete. Ciò può essere utile in applicazioni come la telemedicina o il controllo remoto di macchinari, dove la trasmissione di dati in tempo reale è essenziale per il funzionamento dell'applicazione. Sempre nell’ambito dell’orchestrazione, lo streaming può essere usato per inviare i dati raccolti dai sensori di una rete o IoT a un server centrale per l’elaborazione in tempo reale. In questo modo, è possibile prendere decisioni rapide e correggere eventuali problemi prima che diventino critici. Inoltre, lo streaming può essere utilizzato anche per la distribuzione di aggiornamenti o di contenuti multimediali all'interno di una rete aziendale consentendo un'installazione o una riproduzione più rapida e senza interruzioni.

Quali sono i vantaggi dello streaming

  • Elaborazione in tempo reale: lo streaming dei dati permette di poter prendere decisioni in tempo reale basate sui dati, rendendo possibile l'analisi e la risposta immediata a eventi critici oltre a poter rispondere più rapidamente ai cambiamenti del contesto.
  • Scalabilità: grazie alla gestione di grandi quantità di dati in modo efficiente e scalabile, è possibile gestirne facilmente i flussi e aumentarne la capacità di elaborazione al crescere del volume di dati. Ciò consente di gestire i dati in modo più efficace ed efficiente.
  • Rapidità: lo streaming dei dati consente di ridurre la latenza tra la raccolta dei dati e la loro elaborazione. Ciò significa che l'elaborazione dei dati può avvenire immediatamente dopo la raccolta, senza dover attendere la raccolta completa di tutti i dati.

Come funziona

Lo streaming dei dati è un processo continuo che prevede la trasmissione di dati in tempo reale e si basa su molteplici architetture; quella più adatta al disaccoppiamento è di tipo publish-subscribe, in cui i dati vengono trasmessi in un flusso continuo e consumati da un sistema di elaborazione dei dati in modo asincrono. Le tecnologie utilizzate per implementare lo streaming dei dati includono Apache Kafka, Amazon Kinesis, Google Cloud Pub/Sub, Microsoft Azure Event Hubs e molti altri. Il processo di streaming di dati generalmente si compone di quattro fasi:
  1. Raccolta dei dati: questi possono essere raccolti da una varietà di fonti, come sensori, database, dispositivi mobili o social media.
  2. Trasmissione dei dati: questi vengono poi trasmessi attraverso una connessione di rete ad un sistema di streaming. La trasmissione può avvenire attraverso una varietà di protocolli, come HTTP, MQTT o WebSocket.
  3. Elaborazione dei dati: questo può includere la pulizia dei dati, la trasformazione dei dati in un formato comune o l'elaborazione di analisi statistiche sui dati.
  4. Visualizzazione dei dati: questi vengono visualizzati in modo che gli utenti possano accedere alle informazioni. La visualizzazione dei dati può avvenire attraverso una varietà di mezzi, come dashboard, grafici, mappe o report.
La tecnologia dello streaming di dati offre, quindi, funzionalità avanzate per la gestione dei flussi, come l'elaborazione dei dati in tempo reale, la scalabilità, la gestione della latenza e l'integrazione con altre tecnologie.

Perché scegliere la soluzione Xacria

La soluzione di Xacria permette di combinare le migliori caratteristiche offerte dallo streaming e dall’orchestrazione, realizzando con XNO un prodotto capace di gestire flussi sia di Network Automation che di Network Orchestration.

XNO, grazie alla sua architettura, garantisce una completa scalabilità sia orizzontale che verticale, risultando dunque altamente scalabile in qualsiasi contesto. Questo permette ad esempio di gestire centinaia di migliaia di apparati senza compromettere le performance del sistema.

Grazie a pattern di streaming perfettamente integrati, con XNO è possibile realizzare processi continui di closed-loop per configurare e monitorare apparati di rete in tempo reale. Collezionando le metriche raccolte è possibile stabilire il traffico di rete, identificare eventuali problemi (come ad esempio la congestione) e intervenire per prevenirli e risolverli.

Questo processo è in linea con le esigenze odierne di tutti gli operatori che stanno effettuando un percorso di evoluzione verso l’automazione per ridurre la necessità di intervento umano nelle operazioni chiave.

La raccolta di questi dati è inoltre in linea con quando indicato in openconfig che definisce un protocollo per la gestione degli apparati, dalla configurazione alla raccolta dei dati streaming di telemetria.

XNO permette dunque di realizzare sistemi completi di automazione e orchestrazione per ottenere un flusso constante in streaming di comunicazione con l’infrastruttura di rete e sfruttare le seguenti funzionalità:
  • Analisi e raccolta dei dati di telemetria in tempo reale per valutare lo stato della rete;
  • Orchestrazione e automatizzazione per il provisioning degli apparati;
  • Controllo dell’infrastruttura attraverso il closed-loop;
  • Integrazione con altri sistemi già esistenti.
Contattaci per maggiori informazioni