Dal Blog di Confluent
Un altro grande risultato per il nostro team: uno dei nostri progetti di ricerca e sviluppo basati sull’Event Stream Processing è sul sul blog ufficiale di Confluent.
L’ Event Stream Processing è in crescita tra i business cases in precedenza basati sul batch data processing. Negli ultimi anni, l’Event stream processing si è rivelato particolarmente importante quando il processo decisionale deve avvenire nell’arco di millisecondi (ad esempio nella cybersecurity e nell’intelligenza artificiale), nei casi in cui il valore aziendale si basa da calcoli di dati event-based (ad esempio nell’industria 4.0 e nelle applicazioni di domotica) e, infine, quando la trasformazione, l’aggregazione o il trasferimento di dati residenti in sorgenti eterogenee comporta gravi limitazioni (ad esempio nei sistemi legacy e nell’integrazione della supply chain).
Il nostro team di ricerca e sviluppo ha deciso di avviare un POC interno basato su Kafka Streams e Confluent Platform (principalmente Confluent Schema Registry e Kafka Connect) per dimostrare l’efficacia di questi componenti in quattro aree specifiche:
- Raffinamento dei dati: filtrare i dati grezzi per servirli a consumatori mirati, scalando le applicazioni grazie al risparmio di I/O.
- Resilienza del sistema: utilizzo dell’ecosistema Apache Kafka® , comprese le librerie di monitoraggio e di streaming, per fornire un sistema resiliente.
- Aggiornamento dei dati: ottenere i dati più aggiornati dalle fonti utilizzando Kafka.
- Ottimizzazione delle risorse della macchina: separare le pipeline di elaborazione dei dati e sfruttare l’elaborazione parallela dei dati e il non-blocking IO per massimizzare la capacità dell’hardware.
Queste quattro aree possono avere un impatto sulla raccolta dei dati e sull’efficienza del sistema, migliorando le prestazioni del sistema e limitando il più possibile i rischi operativi, aumentando così le opportunità di margine di profitto e fornendo sistemi più flessibili e resilienti.
In Bitrock affrontiamo la complessità del software attraverso una progettazione domain-driven, adottando il concetto di bounded contexts e garantendo un’architettura modulare attraverso un sistema loose coupling, ed in caso di necessità realizziamo anche architetture di microservizi.
Grazie alla loro natura immutabile, gli eventi si prestano perfettamente a diventare la nostra unica fonte di conoscenza in quanto unità autonome di fatti relativi al business. Il nostro team ha scelto la piattaforma Confluent per la sua capacità di implementare un’architettura di microservizi asincrona che può evolvere nel tempo, supportata da un registro persistente di eventi immutabili pronto per essere utilizzato in modo indipendente dai clienti.
Questo ha ispirato il nostro team a creare una dashboard che si avvale delle pratiche sopra descritte per presentare chiaramente i dati elaborati a un utente finale, in particolare il traffico aereo, che fornisce un flusso aperto e quasi in tempo reale di dati sempre aggiornati.
Se vuoi leggere l’articolo completo e scoprire tutti i dettagli del progetto, l’architettura, i risultati e la roadmap, clicca qui: https://bit.ly/3c3hQfP.