1. How to beat Data Gravity with Kafka
Data in Motion tour – Milano, 6 Ottobre 2022
2. Aiutiamo il Sistema Paese
a proteggersi dal rischio
e a crescere in modo sostenibile.
3. OLTRE 3.000
PROFESSIONISTI
2014
CERVED DEBUTTA SUL SEGMENTO MTA
DI BORSA ITALIANA
OLTRE 40M
DI INVESTIMENTI STANZIATI OGNI ANNO
PER AGGIORNARE E ARRICCHIRE I
DATABASE CON NUOVI DATI E FONTI
INFORMATIVE
OLTRE 1.000
RICHIESTE DI INFORMAZIONI AL
MINUTO SU 5,6 MILIONI DI AZIENDE
ATTIVE
600M
EVENTI DI MONITORAGGIO ALL'ANNO
OLTRE 1,1 PETABYTE
DI DATI ARCHIVIATI NEI NOSTRI 1.000 SERVER
Cerved è la data-driven company italiana nata nel 1974, che fornisce ad imprese e istituzioni i dati che guidano le loro
scelte, gli strumenti per interpretarli e un team di persone per trasformarli in azioni.
Siamo leader di mercato perché abbiamo saputo guidare il cambiamento, attraverso l’integrazione di importanti
realtà e l’ingresso in mercati vicini alle nostre attività tradizionali, fino a diventare nel 2014 la prima società quotata
del settore in Italia.
3
Cerved, la data-driven company
4. 4
Una storia che guarda al futuro
FONDAZIONE
Cerved
1974
2009
Bain Capital e Clessidra
acquisiscono e integrano
Centrale dei Bilanci,
Cerved, Lince, Pitagora,
Databank, Finservice e
Consit
CVC acquisisce
Cerved da Bain e
Clessidra
2013
2014
Cerved Information
Solutions S.p.A. - Holding
direzionale del Gruppo
Cerved – debutta sull’MTA
di Borsa Italiana
Cerved Group investe in
SpazioDati, tech-company
fondata nel 2012 specializzata
in big data, sales intelligence
e Lead generation
2014
2016
Cerved Group
acquisisce Click Adv
❨Payclick❩ fondata nel
2006, specializzata in
campagne digital
advertising
Cerved Group acquisisce:
• Proweb Consulting
fondata nel 2009
• SpazioDati
• Bauciweb
fondata nel 2009
2018
• Integrate: startup
specializzata in rating ESG
• Hawk: gruppo specializzato
in soluzioni AML
2020
2019
Cerved Group acquisisce
MBS, fondata nel 1987,
leader nella consulenza
di direzione
2021
Cerved Group Spa entra
in ION Group uno dei
più grandi operatori
Fintech sul mercato
5. ECOSISTEMA DATI
TECNOLOGIE DI
FRONTIERA
APP VALUE BASED
Il più grande ecosistema di dati in Italia, integrabile con quello dei nostri
partner e dei nostri clienti
Patrimonio informativo ricco, unico, distintivo e costantemente in crescita
Le Tecnologie più innovative ed avanzate per la gestione, elaborazione e
visualizzazione dei dati
Machine Learning, Advanced Analytics e Motori Semantici per trasformare i
dati in soluzioni di valore
«App» pronte all’uso, che non necessitano di attività di integrazione sui
sistemi ❨IT Independent❩
App Cerved per generare valore
5
I nostri elementi distintivi
1
2
3
6. 6
Utilizziamo tecnologie di frontiera
«Raw» Data
Insight
Only «Tech» Business
100% GDPR
compliant
Blockchain
Natural Language Processing
>1.000
Server
600M eventi
annui dati in
monitoraggio
>40M€
di investimenti
annui
>1,1 PetaByte di
dati archiviati
Partizioni
di Data Lake
Artificial Intelligence
Graph database
Cyber Security & Criptazione
Semantic
Text
Analytics
Engine
Piattaforma
API
Ergonomia
Cognitiva e di
Service
Design
DATA LAKE
DATA
ELABORATION
DATA FRUIBILITY
& SECURITY
DATA
VISUALIZATION
Fatturazione
elettronica
7. 7
Cerved è una Data-Driven company con un portafoglio di attività diversificato
Marketing Intelligence
Aiutare i nostri clienti a crescere fornendo
insight per decisioni basate sui dati
Ricavi 2021: €73,3M
Mission
Numeri
Aiutare i nostri clienti a gestire tutti i
rischi rilevanti relativi a credito,
compliance, normative e sostenibilità
Ricavi 2021: €287,9M
56,7%
Delle
vendite
Risk Intelligence
Mission
Numeri
Aiutare i nostri clienti a gestire i
loro crediti durante l'intero ciclo di
vita
Ricavi 2021: €146,4M
Credit Management
Mission
Numeri
28,8% delle
vendite
14,5%
delle
vendite
8. Guardiamo l’economia da un punto di vista
privilegiato
1° Agenzia in Europa per rating evasi registrata ESMA
Il dataset più completo su aziende italiane, stakeholder e
patrimonio immobiliare
Il più grande Bureau di pagamenti in Italia ❨PayLine❩
Il più grande operatore indipendente di servizi NPL in Italia
9. Istituzioni locali e internazionali guardano
a Cerved come punto di riferimento per
l'economia italiana
1. Comprese le micro aziende con acquisti su cervedirect.com
95%
delle banche italiane
I nostri clienti
+30.000
aziende1
+150
Pubbliche Autorità
Istituzioni
primarie
che utilizzano
i nostri dati
osservatore chiave sulle PMI per
le consultazioni periodiche
previste dall'articolo IV ❨Country
Surveillance❩
Fornitore di dati sulle
procedure concorsuali e
sui termini di pagamento
delle aziende
Fornitore di indicatore sintetico
del rischio affrontato dalle
aziende e istituzioni finanziarie
Fornitore di dati sulle
procedure concorsuali e sui
termini di pagamento delle
aziende
10. 10
Highlights
Le nostre performance1
1. performance al 31/12/2021
ECONOMICS & MARKETS
89,7%
SODDISFAZIONE
MEDIA CLIENTI
508,1 MILIONI
RICAVI
∼30.000
CLIENTI
GOVERNANCE SOCIAL ENVIRONMENTAL
50%
PRESENZA FEMMINILE
BOARD
70%
INDIPENDENZA
BOARD
11
POLICY ESG
2.800
DIPENDENTI
60%
DIPENDENTI
DONNE
+60.000 ORE
FORMAZIONE EROGATE
83%
ENERGIA ELETTRICA
RINNOVABILE
-9%
CONSUMI
ENERGETICI
-31%
EMISSIONI DI CO2
Cerved è tra i “leader della sostenibilità” nel 2021 e 2022 secondo il Sole24Ore e Statista.
Il riconoscimento premia le aziende che hanno raggiunto importanti risultati in tema ESG.
12. 12
Obiettivo
L’idea della Big Data Platform, nasce per soddisfare l’esigenza specifica del
prodotto «Silos 3 Query» e consiste nel creare un portafoglio clienti che
consenta alle banche di interrogare ed estrarre informazioni dalla propria
banca dati alimentata dai documenti acquistati e archiviati su GridFS di
MongoDB.
13. 13
• Gestire Big Data
• Paradigma CQRS
• Event-Driven Architecture
• Continuous Processing
• Data Lake Cerved delle Business Rules Statiche
Sfide
14. 14
Data Ecosystem Cerved Data Gravity
Sourcing
Liv.2
Sourcing
Liv. 1
REPOS
SYNTH
Mondo Dati Lince
Dati
clienti
NCA
ERG
EBS
HUB
DWH
MBD
Teradata
Tabula
Mongo4
DW
DB4You
XPCH 2
MATCH
NEMO
Quaest
io
LUDO
Tabula
(su AWS)
nephila
G4U
MBD1
R3
Pragma
Splunk CDR
Mambo
CAS
Dedalo
ELK
CSS
CR-RIBA
(Payline)
15. 15
Limiti sulla parte dati
DB Rel
Quaestio
Search
DWH
Rel
Ludo
Search
Nemo
Search XpCache
Portafoglio Tabula
Aracne
Session
Caching
Logging
CDR
Asincronia tra i database
Distonie sui dati
Rigenerazioni full continue
Complessità Manutenzioni
Duplicazione Business Rules
Poca scalabilità ETL
22. 22
Introduzione a Bitrock: Applicazioni Data Intensive
Qualsiasi business può essere visto come una serie di eventi lungo una linea temporale.
La gestione delle informazioni diventa sfida critica per quegli ecosistemi caratterizzati da grande quantità di dati,
grande complessità di dati e grande velocità di cambiamento.
Bitrock offre expertise nello sviluppo di Applicazioni Data Intensive.
Nello specifico, ci occupiamo di Data Streaming, gestito tramite l’Event-Driven Architecture.
PARTNERSHIP STRATEGICHE
Qualsiasi intervento a livello di Back-End deve riflettersi adeguatamente in ambito Front-End. Un Design
User-Centered è infatti necessario per gestire adeguatamente i dati in continuo cambiamento, migliorando così il
processo di decision making e creando valore per il business. Questo implica mettere bisogni e necessità dell’utente
sempre al centro del nostro lavoro, includendolo nel life-cycle progettuale.
APPROCCIO END-TO-END
23. 23
Event-Driven Architecture con Kafka
• Integrazione con servizi legacy in modalità pluggable
• Possibilità di evolvere il sistema senza intaccare i servizi esistenti
• Apertura a migrazione in cloud
• Disaccoppiamento Data ecosystem
• Kafka nuova sorgente dati per i sistemi
• Disaccoppiamento servizi
• Semplificazione dei flussi e dell'architettura
• Batch processing > Streaming near real time
25. Gruppi Cerved: Dall’evento grezzo all’evento di business
CDC
Producer
Raw Events
Aggregator
Basic Events
Aggregator
HL Events
Aggregator
• Cos’è Gruppi Cerved
Algoritmo che analizza tutto il grafo delle aziende italiane, cercando di
determinare quali sono i gruppi di aziende che possono essere raggruppate
come fossero un’entità unica, perché condividono lo stesso management o lo
stesso gruppo di potere che ne controlla le attività.
Cerved
DBs
Dati Business Rules
+ =
• Più di 230.000 gruppi
• Più di 850.000 aziende
nel perimetro (controllo
e semplice possesso)
25
26. Gruppi Cerved: Il problema
• Problema:
• I Gruppi Italiani sono memorizzati su MongoDB allo scopo di favorire il recupero immediato
dell’informazione completa, senza dover eseguire n processi di lettura su DB
• Aggiornare MongoDB vuol dire intercettare tutte le modifiche effettuate sui dati Oracle e
produrre l’aggiornamento, avendo la sicurezza di avere i Gruppi su MongoDB sempre
allineati ad Oracle
• Ma gli eventi generati dalla struttura relazionale e intercettati tramite CDC sono tanti
Tabula
GRUPPO
SINTESI_GRUPPO
SINTESI_GRUPPO_COMPLESSO CAPO_GRUPPO
CAPO_GRUPPO_PF
STRUTTURA_GRUPPO
COMPONENTE_GRUPPO
GERARCHIA_GRUPPI
CAPO_GRUPPO_PG
Cerved
DBs
26
27. Aggregazione di eventi eterogenei: Punto di partenza
• I dati sorgente sono separati su tabelle differenti.
• Con il CDC siamo in grado di produrre un changelog di eventi su Kafka creando un topic per tabella.
27
28. Aggregazione di eventi eterogenei: Possibili approcci
• ksqlDB
• Consumer + Producer API
• Utilizzo di un topic eterogeneo intermedio
• Kafka Streams
28
29. ksqlDB
• ksqlDB offre una sintassi SQL-like per la creazione di streams.
• Partendo da n topics con schemi differenti, abbiamo la necessità di aggregarli
tramite un’operazione di JOIN in maniera incrementale.
• Limitazioni: Molteplici topic intermedi, molteplici query persistenti potenzialmente lunghe o complesse.
29
30. Consumer & Producer API
• Consumare i messaggi da differenti topic utilizzando diversi Consumers Kafka.
• Aggregare i dati in memoria tramite una cache condivisa.
• Pubblicare il risultato finale dell'aggregazione su un topic di output tramite un Producer Kafka.
• Limitazioni: Gestione manuale delle finestre temporali per l'aggregazione, introduzione e mantenimento di uno
stato mutabile all'interno dell'applicazione, necessità di gestione di failover in case di errori o riavvii.
30
31. Utilizzo di un topic eterogeneo intermedio
• Utilizzando name strategy differenti è possibile ottenere topic eterogenei che contengono differenti schemi di dati.
• RecordNameStrategy consente di registrate uno schema per entità.
• TopicRecordNameStrategy consente di registrare uno schema per entità per topic.
• Limitazioni: Necessità di introdurre un nuovo topic che contiene gli stessi dati dei topic in input, aumento di
schemi duplicati registrati nello Schema Registry.
31
32. Kafka Streams
• Consumare tutti i differenti topic con un unico consumer e deserializzare gli aventi
come record Avro generici (SpecificRecord).
• Aggregare tutti gli eventi applicando a ogni diverso tipo di messaggio la logica di
aggregazione necessaria.
32
33. • event-gruppi-aggregator
• 9 CDC input topics
• aggregazione degli eventi CDC con window-size= 1min
• event.gruppi.repartition = topic interno necessaria per la ripartizione dei CDC topics
• event.gruppi.changelog = topic interno utilizzato da Kafka Streams per fault-tolerance
• event.gruppi = output topic
Gruppi Cerved: Come è stato implementato
gruppo capogruppo capogruppo_pf capogruppo_pg
componente_grupp
o
gerarchia_grupp
i
struttura_grupp
o
sintesi_gruppo
sintesi_gruppo_compless
o
event_gruppi_repartition
event_gruppi_changelog
event_gruppi
state
33
34. Gruppi Cerved: Dall’evento grezzo all’evento di business
CDC
Producer
event-gruppi-aggregator
event.gruppi.repartition
event.gruppi.changelog
event.gruppi
cdc.gruppi.tableN
cdc.gruppi.table2
cdc.gruppi.table1
ntabula.gruppi
gruppi-sink-connector Tabula gruppi-source-connector
Evento di Business
34