SlideShare a Scribd company logo
Change is the new normal
Digital Integration Hub per il monitoraggio in near-real time della
logistica: il caso Arcese
CONFLUENT
Data In Motion Tour 2022
Milano
Confluent Kafka
● Investimento sia tattico che strategico.
● Strategico: nuova piattaforma di gruppo “A-Platform”.
● Tattico: possibilità di trasformare il nostro sistema legacy in un sistema “event-driven”.
Transport and Logistics Industry
● Mercato frammentato ed altamente competitivo.
● Bassi margini.
● Servizi visti dai clienti come una “commodity”.
Arcese
● Sviluppo di una piattaforma interna che permetta di rispondere alle sfide di business.
● Basata su un nuovo data model che possa rappresentare tutte le declinazioni di ordine di trasporto che ci
inviano i clienti, senza perdita di informazioni.
● Tra i suoi pillar c’è quello di Orchestration (Kafka).
Challenge
● Richiesta da parte del mercato di “real time visibility”.
● Tempi lunghi tra l’inserimento del dato e la sua disponibilità per successive elaborazioni.
Paradigm
● Il tempo tra l’inserimento del dato e la sua disponibilità deve essere di 5 minuti massimo.
Project Scope (Velocity)
● Trasformare un sistema legacy in un sistema “ad eventi”.
● Lavorando a livello di singola transazione sul database.
● Sfruttando tecnologie moderne di pub/sub (Kafka).
Arcese Track&Trace data pipeline
Actual: il “data journey” può arrivare
a 30’.
New Track&Trace: mediamente
passa 1 minuto dalla produzione
del dato alla sua pubblicazione sul
T&T.
Chi siamo?
Mauro Luchetti
Data Architect
mauro.luchetti@quantyca.it
Siamo un’azienda di consulenza tecnologica italiana specializzata
in data e metadata management.
Realizziamo data platform capaci di gestire l’intero ciclo di vita
del dato, dall'acquisizione fino ad arrivare all’utilizzo sia per finalità
analitiche (BI e AI) che operative (service integration), passando
per tutte le fasi intermedie di consolidamento.
La partnership con Confluent è sempre stata un punto di forza
nella realizzazione di architetture Event Driven.
quantyca.it
Update, Insert, Delete
Entità Coinvolte
TMS
Transportation
Management System
Ordine di
Trasporto
Viaggio
Unità di
Movimentazione
Note
Merci
Pericolose
…
Addebiti
Eventi
Attività
Fermate
Tratte
…
Track & Trace
Stato Ordine
Posizione
dell’Unità di
Movimentazione
Eventi di
Tracking
Problemi architettura AS-IS
Alta latenza verso gli applicativi consumatori del dato, siano essi a finalità
analitiche o operazionali. Per mantenere competitività nel mercato è necessario
pensare a soluzioni Real Time.
L’offloading del dato porta ad avere carico sul sistema sorgente.
Difficoltà nello sviluppo di nuove integrazioni, la messa in produzione di nuovi
servizi necessari al business richiede tempo ed è difficilmente scalabile.
Difficile gestione della Governance, l’accesso al database applicativo non è
univoco.
sistemi
gestionali
storage
operazionale
dati fruibili a
sistemi target
flussi batch
Digital Integration Hub
System of Engagement System Of Insight
System of Records
Legacy
Systems
Application
Layer
Digital
Integration
Hub
Data Gateway
Event-Based Integration Layer
Workload Specific Data Stores
Microservices
Metadata Management
● Layer di Integrazione basato su Eventi
● Storage ad alte performance, sia in ottica di
lettura che di ingestion del dato, con tecnologie
specifiche in base ai casi d’uso
● Insieme di Microservizi cooperanti tra loro per
ricostruire le viste necessarie agli applicativi
● Forte disaccoppiamento tra chi produce e chi
consuma il dato, grazie alla presenza di un Data
Gateway
● Raccolta dei Metadati utili ai fini di avere un
processo di Governance ben definito
Velocity
Legacy Confluent Cloud
Technical
Events
(Speed &
Fidelity)
Domain
Events
(Trusted
Views)
Business
Events
(Ease of
consumption)
Consumers
Data Science
Models
Microservices
Data Driven
Services
Reporting & SelfBI
Kafka
Stream
Kafka
Stream
Access Data Store
Governance
Data Quality Data Lineage Glossary Data Catalog
Analytical
Storage
Graph DB
Operational
Storage
Data Lake
Gestione della Consistenza: Sfide
CONSISTENZA TRANSAZIONALE: Sia il sistema sorgente che
quello target sono costituiti da RDBMS. La consistenza nelle
entità lette è garantita dalla transazionalità, ad è necessario
mantenerla pur avendo nel mezzo Kafka, un sistema non
transazionale.
CONSISTENZA DI ORDINAMENTO: Gli aggiornamenti al
modello devono necessariamente essere eseguiti in modo da
sovrascrivere solo gli stati più aggiornati. Nel caso di viste
aggregate complesse sul sistema sorgente è facile che gli
eventi vengano elaborati in modo non ordinato all’interno di
Kafka.
CONSISTENZA STORICA: Deve sempre essere possibile
ricreare le entità target in qualsiasi momento e senza perdita
di informazione. Kafka permette di avere retention infinita nei
topic ma non sempre questa soluzione è percorribile o
adeguata.
Topic Kafka
Target
Read
Model
Source
Aggregate
Gestione della Consistenza: Soluzioni
Technical
Events
(Speed &
Fidelity)
Domain
Events
(Trusted
Views)
Kafka Streams
Ecosystem
Buffering
Events
Closing
Transactions
Transactions
Metadata
Confluent Cloud
Unified Data Model
Buffering Layer
Business Events
(Ease of consumption)
Fast Storage
Integrità Transazione
Real Time Processing
Kafka Stream (Stateful)
Ordinamento /
Storicizzazione
Batch & near RT
processing
Spring Batch
✓ Soluzione Stateful che garantisce forte consistenza
✓ Fast Storage è un DB SQL compliant, facile integrazione
con le altre tecnologie e conoscenze aziendali
✓ Gli Eventi di Business possono essere arricchiti anche con
informazioni esterne
CDC
Governance
Governance
Data Product
Unified Data Model
Legacy Confluent Cloud
Technical
Events
(Speed &
Fidelity)
Domain
Events
(Trusted
Views)
Business
Events
(Ease of
consumption)
Consumers
Data Science
Models
Microservices
Data Driven
Services
Reporting & SelfBI
Kafka
Stream
Kafka
Stream
Access Data Store
Data Quality Data Lineage Glossary Data Catalog
Analytical
Storage
Graph DB
Operational
Storage
Data Lake
Source aligned Consumer aligned
TMS Trip
(LTL)
TMS
Transport Order
(LTL)
Trip Execution
Transport Order
Management &
Tracking
Open Data Mesh
Obiettivi
L’obiettivo del progetto Open Data Mesh è quello di
realizzare una piattaforma che permetta tramite una
serie di servizi implementati sia a livello di data product
experience plane che a livello di infrastructure utility
plane di gestire l’intero lifecycle di un data product a
partire dal deployment atomico fino ad arrivare alla
dismissione.
Principi
● Declarative
● Tech independent
● Standard agnostic
● Composable through templating
● Flexible in adoption
● Easily extensible
Componenti
● Data Product Descriptor Specification
● Open Data Mesh Platform (Core)
● Open Data Mesh Platform (Adapters)
In sintesi
Data Product Experience Plane
Data Product
Container
Data Product
Meta
App & Infra
Templates
Data Product Descriptor
/Create /Build /Deploy /Connect
Build
Descriptor
Deployment
Descriptor
/PolicyService /MetaService /BuildService /ProvisionService /IntegrationService
Infrastructure Utility Plane
Customer Infrastructure
Tech.
Independent
Adapters
Open Data
Mesh
Platform
Takeaway
Il monitoraggio dell’Ordine di Trasporto e la sua esecuzione nell’ambito LTL è passato da decine di minuti a pochi secondi.
I servizi consumatori non sono più costretti nella rappresentazione dei dati presente sul sistema sorgente, ma leggono da
uno Unified Data Model che rispecchia al meglio i concetti di business.
L’architettura introdotta gestisce alti volumi di dati in real time grazie all’estesa distribuzione di calcolo.
I sistemi sorgenti vengono totalmente scaricati da operazioni di elaborazione dei dati, si effettua offloading verso Confluent
e si collegano dunque i diversi consumatori del dato.
I costi di integrazione si riducono notevolmente, il dato prodotto al fine di essere condiviso è uniforme, non ambiguo e di
qualità certificata, rendendolo facilmente estendibile e scalabile.
A tutti i livelli dell’architettura è possibile raccogliere metadati sempre più necessari ai fini dei processi di governance.
Gestire la transazionalità all’interno di Kafka non è un’operazione semplice, soprattutto quando si
parte da sistemi relazionali e si hanno modifiche a più entità che costituiscono un unico evento di dominio.
Corso Milano, 45 / 20900 Monza (MB)
T. +39 039 9000 210 / F. +39 039 9000 211 / @ info@quantyca.it
www.quantyca.it

More Related Content

Similar to Digital Integration Hub per il monitoraggio in near-real time della logistica: il caso Arcese

API Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole ItaliaAPI Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole Italia
Profesia Srl, Lynx Group
 
ICARO: business cloud accelerator !
ICARO: business cloud accelerator !ICARO: business cloud accelerator !
ICARO: business cloud accelerator !
Paolo Nesi
 
Trasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaroTrasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaro
VMEngine
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)
Sabino Labarile
 
E suap - cloud computing (Italian)
E suap - cloud computing (Italian)E suap - cloud computing (Italian)
E suap - cloud computing (Italian)
Sabino Labarile
 
LARUS 10th - Rampado Omar
LARUS 10th - Rampado OmarLARUS 10th - Rampado Omar
LARUS 10th - Rampado Omar
LARUS Business Automation
 
Fuse webinar
Fuse webinarFuse webinar
Fuse webinar
Ugo Landini
 
Connext ita
Connext itaConnext ita
Connext ita
Simona Giosa
 
Progea Cloud - Databoom Ita
Progea Cloud - Databoom ItaProgea Cloud - Databoom Ita
Progea Cloud - Databoom Ita
Simona Giosa
 
Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)
Herzum Italia
 
OCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaSOCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaS
opencityplatform
 
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioOpen Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Par-Tec S.p.A.
 
Bpos Sales Presentation
Bpos Sales PresentationBpos Sales Presentation
Bpos Sales Presentationmarcotucci
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Codemotion
 
No smart factory without security
No smart factory without securityNo smart factory without security
No smart factory without security
Giuseppe Menin
 
Cloud e innovazione
Cloud e innovazioneCloud e innovazione
Cloud e innovazione
XPeppers
 
Vincenzo cocciolo doc flow
Vincenzo cocciolo doc flowVincenzo cocciolo doc flow
Vincenzo cocciolo doc flowDOCFLOW
 
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...Emanuele Della Valle
 
"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco
"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco
"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco
ThinkOpen
 
OCP Paas_ultima
OCP Paas_ultimaOCP Paas_ultima
OCP Paas_ultima
opencityplatform
 

Similar to Digital Integration Hub per il monitoraggio in near-real time della logistica: il caso Arcese (20)

API Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole ItaliaAPI Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole Italia
 
ICARO: business cloud accelerator !
ICARO: business cloud accelerator !ICARO: business cloud accelerator !
ICARO: business cloud accelerator !
 
Trasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaroTrasformazione digitale fabio-cecaro
Trasformazione digitale fabio-cecaro
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)
 
E suap - cloud computing (Italian)
E suap - cloud computing (Italian)E suap - cloud computing (Italian)
E suap - cloud computing (Italian)
 
LARUS 10th - Rampado Omar
LARUS 10th - Rampado OmarLARUS 10th - Rampado Omar
LARUS 10th - Rampado Omar
 
Fuse webinar
Fuse webinarFuse webinar
Fuse webinar
 
Connext ita
Connext itaConnext ita
Connext ita
 
Progea Cloud - Databoom Ita
Progea Cloud - Databoom ItaProgea Cloud - Databoom Ita
Progea Cloud - Databoom Ita
 
Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)Progetto DrFacto (sintesi)
Progetto DrFacto (sintesi)
 
OCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaSOCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaS
 
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioOpen Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studio
 
Bpos Sales Presentation
Bpos Sales PresentationBpos Sales Presentation
Bpos Sales Presentation
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
 
No smart factory without security
No smart factory without securityNo smart factory without security
No smart factory without security
 
Cloud e innovazione
Cloud e innovazioneCloud e innovazione
Cloud e innovazione
 
Vincenzo cocciolo doc flow
Vincenzo cocciolo doc flowVincenzo cocciolo doc flow
Vincenzo cocciolo doc flow
 
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
 
"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco
"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco
"Sistemi managed in alta affidabilità e in open source" by Andrea Di Marco
 
OCP Paas_ultima
OCP Paas_ultimaOCP Paas_ultima
OCP Paas_ultima
 

More from confluent

Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
confluent
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
confluent
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
confluent
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
confluent
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
confluent
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
confluent
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
confluent
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
confluent
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
confluent
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
confluent
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
confluent
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
confluent
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
confluent
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
confluent
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
confluent
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
confluent
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
confluent
 

More from confluent (20)

Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
 

Digital Integration Hub per il monitoraggio in near-real time della logistica: il caso Arcese

  • 1. Change is the new normal
  • 2. Digital Integration Hub per il monitoraggio in near-real time della logistica: il caso Arcese CONFLUENT Data In Motion Tour 2022 Milano
  • 3.
  • 4.
  • 5. Confluent Kafka ● Investimento sia tattico che strategico. ● Strategico: nuova piattaforma di gruppo “A-Platform”. ● Tattico: possibilità di trasformare il nostro sistema legacy in un sistema “event-driven”. Transport and Logistics Industry ● Mercato frammentato ed altamente competitivo. ● Bassi margini. ● Servizi visti dai clienti come una “commodity”. Arcese ● Sviluppo di una piattaforma interna che permetta di rispondere alle sfide di business. ● Basata su un nuovo data model che possa rappresentare tutte le declinazioni di ordine di trasporto che ci inviano i clienti, senza perdita di informazioni. ● Tra i suoi pillar c’è quello di Orchestration (Kafka).
  • 6. Challenge ● Richiesta da parte del mercato di “real time visibility”. ● Tempi lunghi tra l’inserimento del dato e la sua disponibilità per successive elaborazioni. Paradigm ● Il tempo tra l’inserimento del dato e la sua disponibilità deve essere di 5 minuti massimo. Project Scope (Velocity) ● Trasformare un sistema legacy in un sistema “ad eventi”. ● Lavorando a livello di singola transazione sul database. ● Sfruttando tecnologie moderne di pub/sub (Kafka).
  • 7. Arcese Track&Trace data pipeline Actual: il “data journey” può arrivare a 30’. New Track&Trace: mediamente passa 1 minuto dalla produzione del dato alla sua pubblicazione sul T&T.
  • 8. Chi siamo? Mauro Luchetti Data Architect mauro.luchetti@quantyca.it Siamo un’azienda di consulenza tecnologica italiana specializzata in data e metadata management. Realizziamo data platform capaci di gestire l’intero ciclo di vita del dato, dall'acquisizione fino ad arrivare all’utilizzo sia per finalità analitiche (BI e AI) che operative (service integration), passando per tutte le fasi intermedie di consolidamento. La partnership con Confluent è sempre stata un punto di forza nella realizzazione di architetture Event Driven. quantyca.it
  • 9. Update, Insert, Delete Entità Coinvolte TMS Transportation Management System Ordine di Trasporto Viaggio Unità di Movimentazione Note Merci Pericolose … Addebiti Eventi Attività Fermate Tratte … Track & Trace Stato Ordine Posizione dell’Unità di Movimentazione Eventi di Tracking
  • 10. Problemi architettura AS-IS Alta latenza verso gli applicativi consumatori del dato, siano essi a finalità analitiche o operazionali. Per mantenere competitività nel mercato è necessario pensare a soluzioni Real Time. L’offloading del dato porta ad avere carico sul sistema sorgente. Difficoltà nello sviluppo di nuove integrazioni, la messa in produzione di nuovi servizi necessari al business richiede tempo ed è difficilmente scalabile. Difficile gestione della Governance, l’accesso al database applicativo non è univoco. sistemi gestionali storage operazionale dati fruibili a sistemi target flussi batch
  • 11. Digital Integration Hub System of Engagement System Of Insight System of Records Legacy Systems Application Layer Digital Integration Hub Data Gateway Event-Based Integration Layer Workload Specific Data Stores Microservices Metadata Management ● Layer di Integrazione basato su Eventi ● Storage ad alte performance, sia in ottica di lettura che di ingestion del dato, con tecnologie specifiche in base ai casi d’uso ● Insieme di Microservizi cooperanti tra loro per ricostruire le viste necessarie agli applicativi ● Forte disaccoppiamento tra chi produce e chi consuma il dato, grazie alla presenza di un Data Gateway ● Raccolta dei Metadati utili ai fini di avere un processo di Governance ben definito
  • 12. Velocity Legacy Confluent Cloud Technical Events (Speed & Fidelity) Domain Events (Trusted Views) Business Events (Ease of consumption) Consumers Data Science Models Microservices Data Driven Services Reporting & SelfBI Kafka Stream Kafka Stream Access Data Store Governance Data Quality Data Lineage Glossary Data Catalog Analytical Storage Graph DB Operational Storage Data Lake
  • 13. Gestione della Consistenza: Sfide CONSISTENZA TRANSAZIONALE: Sia il sistema sorgente che quello target sono costituiti da RDBMS. La consistenza nelle entità lette è garantita dalla transazionalità, ad è necessario mantenerla pur avendo nel mezzo Kafka, un sistema non transazionale. CONSISTENZA DI ORDINAMENTO: Gli aggiornamenti al modello devono necessariamente essere eseguiti in modo da sovrascrivere solo gli stati più aggiornati. Nel caso di viste aggregate complesse sul sistema sorgente è facile che gli eventi vengano elaborati in modo non ordinato all’interno di Kafka. CONSISTENZA STORICA: Deve sempre essere possibile ricreare le entità target in qualsiasi momento e senza perdita di informazione. Kafka permette di avere retention infinita nei topic ma non sempre questa soluzione è percorribile o adeguata. Topic Kafka Target Read Model Source Aggregate
  • 14. Gestione della Consistenza: Soluzioni Technical Events (Speed & Fidelity) Domain Events (Trusted Views) Kafka Streams Ecosystem Buffering Events Closing Transactions Transactions Metadata Confluent Cloud Unified Data Model Buffering Layer Business Events (Ease of consumption) Fast Storage Integrità Transazione Real Time Processing Kafka Stream (Stateful) Ordinamento / Storicizzazione Batch & near RT processing Spring Batch ✓ Soluzione Stateful che garantisce forte consistenza ✓ Fast Storage è un DB SQL compliant, facile integrazione con le altre tecnologie e conoscenze aziendali ✓ Gli Eventi di Business possono essere arricchiti anche con informazioni esterne CDC Governance
  • 15. Governance Data Product Unified Data Model Legacy Confluent Cloud Technical Events (Speed & Fidelity) Domain Events (Trusted Views) Business Events (Ease of consumption) Consumers Data Science Models Microservices Data Driven Services Reporting & SelfBI Kafka Stream Kafka Stream Access Data Store Data Quality Data Lineage Glossary Data Catalog Analytical Storage Graph DB Operational Storage Data Lake Source aligned Consumer aligned TMS Trip (LTL) TMS Transport Order (LTL) Trip Execution Transport Order Management & Tracking
  • 16. Open Data Mesh Obiettivi L’obiettivo del progetto Open Data Mesh è quello di realizzare una piattaforma che permetta tramite una serie di servizi implementati sia a livello di data product experience plane che a livello di infrastructure utility plane di gestire l’intero lifecycle di un data product a partire dal deployment atomico fino ad arrivare alla dismissione. Principi ● Declarative ● Tech independent ● Standard agnostic ● Composable through templating ● Flexible in adoption ● Easily extensible Componenti ● Data Product Descriptor Specification ● Open Data Mesh Platform (Core) ● Open Data Mesh Platform (Adapters) In sintesi Data Product Experience Plane Data Product Container Data Product Meta App & Infra Templates Data Product Descriptor /Create /Build /Deploy /Connect Build Descriptor Deployment Descriptor /PolicyService /MetaService /BuildService /ProvisionService /IntegrationService Infrastructure Utility Plane Customer Infrastructure Tech. Independent Adapters Open Data Mesh Platform
  • 17. Takeaway Il monitoraggio dell’Ordine di Trasporto e la sua esecuzione nell’ambito LTL è passato da decine di minuti a pochi secondi. I servizi consumatori non sono più costretti nella rappresentazione dei dati presente sul sistema sorgente, ma leggono da uno Unified Data Model che rispecchia al meglio i concetti di business. L’architettura introdotta gestisce alti volumi di dati in real time grazie all’estesa distribuzione di calcolo. I sistemi sorgenti vengono totalmente scaricati da operazioni di elaborazione dei dati, si effettua offloading verso Confluent e si collegano dunque i diversi consumatori del dato. I costi di integrazione si riducono notevolmente, il dato prodotto al fine di essere condiviso è uniforme, non ambiguo e di qualità certificata, rendendolo facilmente estendibile e scalabile. A tutti i livelli dell’architettura è possibile raccogliere metadati sempre più necessari ai fini dei processi di governance. Gestire la transazionalità all’interno di Kafka non è un’operazione semplice, soprattutto quando si parte da sistemi relazionali e si hanno modifiche a più entità che costituiscono un unico evento di dominio.
  • 18. Corso Milano, 45 / 20900 Monza (MB) T. +39 039 9000 210 / F. +39 039 9000 211 / @ info@quantyca.it www.quantyca.it