Così Cerved rivede l'architettura dati

Gestire dati in costante crescita in modo resiliente, elastico e stabile. È l’obiettivo che si è fissata Cerved in un progetto con Bitrock.

cerved bitrock

 

La costante crescita della mole di dati è una sfida per ogni impresa, con la necessità di riorganizzarsi sulla base di sistemi modulari e distribuiti. In Cerved, è emersa l’esigenza di progettare architetture di dati in grado di elaborare e fornire risultati in modo resiliente, elastico e scalabile.

Cerved con Bitrock

La collaborazione con Bitrock nasce dall’obiettivo di continuare a raccogliere sempre più dati per continuare a fornire i servizi finanziari necessari all’analisi del rischio di credito, alle soluzioni di marketing, alla gestione dei crediti deteriorati e inesigibili.

L’architettura complessiva di Cerved aveva criticità di replicazione di dati e logiche di business, di scalabilità degli ETL, di capacità di aggiornamento real time di tutti i sistemi. Una conseguenza dell’inevitabile utilizzo di soluzioni NOSQL per potere sfruttare il patrimonio informativo di Cerved con algoritmi intelligenti. Al contrario, secondo l’effetto definito “Data Gravity” da Dave McCroy, dovrebbero essere i servizi e le applicazioni a “essere spinti” verso i dati.

Ma una situazione certamente non adatta all’attuale scenario, in cui servizi e applicazioni hanno bisogno di maggiore larghezza di banda e minore latenza nell’accesso dei dati.

I nodi da risolvere

Servizi e applicazioni avrebbero quindi bisogno di maggiore larghezza di banca e di minore latenza nell’accesso ai dati. Nell’architettura Cerved, in particolare, Bitrock ha individuato tre punti critici:

  • un unico data model, che costringe le applicazioni ad adattarsi;
  • diverse viste degli stessi dati, che dovrebbero concordare;
  • un processo batch-based, che rallenta l’acquisizione dei dati.

Un piano per evolvere l'architettura dati

Ne è nato un piano d’azione evolutivo per un’architettura in grado di aggiornare i dati velocemente e in modo affidabile. La scelta è ricaduta sulla piattaforma Kafka per disegnare una nuova architettura con componenti che reagiscano agli eventi di sistema e possano produrre eventi ad alto livello che possono essere usati nelle applicazioni finali, separando i componenti e  i write model dai read model (CQRS) per ottimizzare la produzione e il consumo dei dati.

È stato così progettato, definito e implementato un POC su Apache Kafka, di concerto con i responsabili dell'architettura software e il reparto commerciale di Cerved. «Con Kafka – afferma Antonello Mantuano, Head of Software Engineering di Cerved Group – abbiamo trovato la soluzione alla Data Gravity. L’approccio streaming e Kafka sono il carburante per decollare verso un’architettura dati modulare, ad alta prestazione e pulita, dove poter sfruttare al meglio nosql, bigdata, cloud, microservices, ecc.».

I vantaggi ottenuti

La concentrazione dei dati all’interno dell’azienda per ridistribuirli ai servizi e alle applicazioni, inserendo una piattaforma streaming al centro dell’architettura, ha portato a una serie di risultati. La replicazione continua dei dati, con processi quasi in tempo reale e regole aziendali centralizzate. Ma anche una maggiore affidabilità, con un approccio modulare che ha portato a un miglioramento generale dell’efficienza operativa, con latenze di pochi millisecondi ed event-time processing.

«Sulla base di questi risultati – conclude Damiano Tarantino, Head of Architecture and Infrastructure di Cerved – i prossimi passi nella nostra evoluzione generale dell’architettura saranno: una vera piattaforma per i microservice, dove ogni dispositivo è un’unità indipendente dislocabile, e una data mesh con un cambiamento da un bacino di dati centralizzato a un ecosistema di prodotti data che convivono».