Data & Analytics Framework

Da “questo dato è mio e lo gestisco io” a “questi dati sono nostri e li gestiamo insieme”

This post is available also in English

Credit: Elisa Botticella

Il “sommerso” è un fenomeno grave che affligge tutta l’Italia. In questo caso non ci stiamo riferendo alla tristemente nota evasione fiscale. Esiste, infatti, un altrettanto ingente capitale da far emergere, e qui l’impresa “di recupero” è tecnologica, organizzativa e normativa. Una grande ricchezza che non riesce ad affiorare e a rendersi utile per i cittadini, le imprese e tutte le pubbliche amministrazioni, perché è parcellizzata, disseminata in luoghi diversi, imprigionata da regole e prassi che ne impediscono il movimento, la condivisione e l’utilizzo ottimale.

È il patrimonio informativo pubblico, quell’enorme insieme di dati che raccontano la realtà di cittadini e imprese — dove e come viviamo, cosa facciamo — e che rappresenta un asset strategico da valorizzare anche con interventi dello Stato, come gli investimenti iniziali pubblici per le telecomunicazioni.

Dati che ci riguardano e di cui tutti abbiamo bisogno per avviare e condurre un’attività e per accedere a servizi pubblici; dati di cui ha bisogno la PA per offrire quei servizi; dati che possono aiutare lo Stato a individuare meglio i problemi della società e a elaborarne le soluzioni; dati con cui il cittadino può conoscere l’azione dello Stato e giudicarne i risultati. L’accesso ai dati e la loro valorizzazione sono componenti fondamentali del nuovo Sistema Operativo del Paese che vorremmo realizzare durante il nostro mandato e che vi racconteremo passo dopo passo su questo canale (e se vuoi aiutarci nella scrittura del capitolo Dati, contribuisci al nostro gruppo di discussione o usa #DatiPubblici).

Il compito è alla nostra portata

In Italia esistono già molte realtà a lavoro su questi temi e che possono mettere a sistema la propria esperienza. Ci sono competenze e risorse di qualità nelle diverse in-house pubbliche con cui stiamo lavorando per costruire le basi tecnologiche del progetto, ma soprattutto esiste una vision condivisa: rendere finalmente disponibili e accessibili alle PP.AA. e a tutta la società civile i dati pubblici, nella consapevolezza che l’accesso al patrimonio informativo pubblico può non soltanto semplificare la vita delle imprese, ma anche offrire nuove occasioni di business.

Immaginate di non dover più riempire l’ennesimo modulo cartaceo inserendo sempre le stesse informazioni o di poter gestire con un click le vostre informazioni anagrafiche e di domicilio, visualizzare la posizione aggiornata della vostra impresa e gestire le comunicazioni con la PA; immaginate città più intelligenti, con edifici che allertano quando hanno danni strutturali, con reti stradali in grado di interagire con strumenti di controllo del traffico e centri di monitoraggio; immaginate di essere in pieno possesso delle informazioni pubbliche, di poter visualizzare come vengono spese le vostre tasse, qual è il livello dei servizi che ricevete e, infine, che tutto questo sia messo a servizio — con le dovute precauzioni in tema di privacy e security — della società civile, che potrà utilizzare i dati pubblici per sviluppare nuovi servizi e creare nuovo valore e occupazione, dando finalmente vita alla tanto invocata API economy. (1)

È una sfida tecnologica e di processo che si può vincere solo con un cambio di mentalità.

Per “uscire dai silos” occorre superare la tradizionale mentalità de “il dato è mio e me lo gestisco io” e abbracciare la convinzione che i dati pubblici siano un patrimonio dello Stato (e quindi di tutte le PP.AA.) e della società civile. Non esisteranno più proprietari, ma soltanto gestori a cui è affidato il compito di raccogliere, gestire e rendere disponibili i dati, ognuno per il proprio ambito di competenza. Occorre una regia attenta e di ampio respiro, che riorganizzi, riunendole, le risorse esistenti e che assicuri la nascita di nuovi progetti già aperti all’interscambio dei dati. Sarà cruciale mettere a sistema le forze positive e i talenti che sono a disposizione: il Team per la Trasformazione Digitale ha iniziato a farlo lavorando in via sperimentale con un pool selezionato di software house dello Stato e Comuni, per costruire il più velocemente possibile un primo prototipo del Data & Analytics Framework. Un’accoppiata tra una piattaforma big data (che acquisisce, elabora e mette a disposizione l’informazione per analisi e per interscambio machine-to-machine) e due team, uno di data scientists, che lavora costantemente sui dati e propone nuovi prototipi e soluzioni, e un altro di esperti di data visualization, che utilizzano lo storytelling visuale per veicolare in modo efficace (e rendere, quindi, più accessibile) l’informazione presente nei dati. Allo stesso tempo stiamo lavorando con CONSIP per acquistare risorse cloud di computing e storage elastici, da utilizzare in maniera complementare al cloud privato in base alle specifiche esigenze.

Credit: Elisa Botticella

È un processo di apertura e razionalizzazione delle risorse informative, che si dovrebbe idealmente sviluppare su un doppio binario: da una parte, i dati pubblici saranno ingeriti in un unico framework centrale che ne garantirà standardizzazione, coerente interconnessione (sarà possibile legare dati provenienti da sorgenti e verticali diversi, ma relativi a un unico fenomeno o entità) e coerenza nella fruizione (API e dashboard tematiche).

In altre parole, sarà possibile utilizzare più fonti per guardare ai fenomeni da diverse angolazioni, direttamente nel framework e senza dover preoccuparsi di ricondurre all’unità dati eterogenei.

Inoltre, le PP.AA. e i comuni che non dispongono di competenze e risorse da poter investire per il disegno e la gestione dell’ennesima infrastruttura, avranno la possibilità di utilizzare le risorse messe a disposizione centralmente dal Data & Analytics Framework (nel cloud ibrido pubblico/privato spiegato sopra). Le PP.AA. potranno “persistere” i dati che hanno attualmente a disposizione, raccoglierne di nuovi (che prima non riuscivano a gestire), utilizzarli come input delle proprie applicazioni proprietarie che interagiscono con il framework centrale via API, darlo in utilizzo ai propri team di data scientists nel caso siano disponibili, ed eventualmente servirsi di un team centrale di esperti.


Da qui in avanti il documento diventa ancora più “geeky” e difficile da comprendere per chi tecnico non è.

Si… può… FARE!

Data & Analytics Framework (DAF) è il fulcro del progetto ed è composto da:

  • una componente di architettura big data che ha il compito di centralizzare e conservare (data lake), elaborare e armonizzare (data engine), e distribuire (layer di comunicazione) i dati, sia in modalità batch che stream real-time. Il tutto privilegiando, ove possibile, software open source;
  • un team di data scientists, data architect e esperti di dominio che provvedono al disegno ed evoluzione concettuale del framework, alla costruzione di modelli di interconnessione di data sources diversi, all’analisi dei dati e sviluppo di modelli di machine learning e alla produzione di data applications in tandem con i team di sviluppo software.

Il funzionamento e le componenti infrastrutturali della piattaforma possono essere meglio esplicitati seguendo il ciclo di vita del dato, dalla sua creazione e ingestione all’utilizzo da parte del consumatore finale. Vi proponiamo di seguito un disegno architetturale di alto livello, e in continua evoluzione, accompagnato da una descrizione delle fasi del ciclo.

1. Data Ingestion

I dati possono provenire da sorgenti diverse: un software di tipo gestionale (e.g. Anagrafica Nazione Popolazione Residente, ANPR), un’applicazione software come risultato del suo utilizzo (e.g. log server apache nel caso di un sito web), stream di dati (e.g. twitter feed, contrattazioni su valute), documenti testuali (e.g. leggi, contratti), cataloghi pubblici. Questi vengono inviati a Kafka che li tratta come code distribuite e li rende disponibili alle componenti che andranno a consumarli. Kafka consentirà di gestire la complessità dovuta all’aumento graduale del perimetro e casi d’uso del DAF oltre ad essere fault-tolerant. Appena ingeriti, i dati vengono salvati in formato as-is in HDFS (file system di Hadoop) per garantire un layer di persistenza al dato grezzo. Lo stesso dato verrà salvato in formato colonnare Parquet o similari (ove possibile, in caso di dato strutturato o semi-struturato) per migliorare le performance alla fase di analisi utilizzando MPP (massively parallel processing) query engine come Impala e/o Hive, tecnologie divenute ormai mature e che rendono possibile SQL like query su sistemi distribuiti.

1* Data Ingestion — Cloud Privato (2)

Per dare una scelta più ampia possibile che possa abbracciare le esigenze delle diverse PP.AA. con cui lavoreremo, abbiamo previsto la coesistenza di cluster installati all’interno dei data center gestiti da un gruppo di software house e istituti della PA (stiamo studiando un progetto di sperimentazione con Sogei, ACI Informatica, InfoCamere e ISTAT). In questi ambienti il dato viene anonimizzato (3) e sottoposto alle manipolazioni necessarie per poi essere consumato. Stiamo lavorando insieme al Garante della Privacy per meglio definire le modalità di anonimizzazione e trattamento dei dati più consone al progetto.

2. Data Processing

Una volta nella piattaforma, il dato ingerito può essere inviato in input, sia in parallelo all’ingestione che come batch separati ad applicazioni (basate ad esempio su Apache Spark) che si occupano di manipolarlo, integrarlo e/o aggregarlo e salvarlo in altri file di testo o colonnari (e.g. parquet) ovvero in database cosiddetti operazionali (i.e. Hbase, Cassandra, MongoDB, Neo4j e simili, a seconda dei casi di utilizzo).

3. Analytics & Prototyping

I dati “grezzi” così come quelli elaborati nella fase precedente possono essere “joined”, aggregati e analizzati da parte del team di data scientists (con diretto accesso tramite query su MPP come Impala o Hive, e analisi interattive con notebook integrati con Apache Spark e R) per estrarre informazioni nascoste nella grande mole e diversità di dati, al fine di utilizzarle per creare non solo nuove applicazioni e migliorare quelle esistenti, ma anche fornire indicazioni ai policy makers. La fase di analisi comprende la costruzione di modelli predittivi, machine learning e logici che rappresenteranno il cuore delle data applications.

4. API e Data Applications

Il dato processato e inserito nei databases operazionali, così come modelli predittivi / machine learning / logici saranno messi a disposizione di 3rd-party applications attraverso un ecosistema di API. Le API saranno sviluppate secondo la logica dei microservices e rappresenteranno il cuore del modello di interoperabilità di dati e servizi all’interno della PA e tra PA e cittadino. Ad esempio, sarà possibile per chi voglia offrire, all’interno della propria app, un servizio di geolocalizzazione dei crimini effettuati negli ultimi 6 mesi, di chiamare l’endpoint dell’API apposita che esporrà i dati richiesti, sempre aggiornati. Così come sarà possibile, nell’App di cittadinanza digitale, inviare al cittadino delle notifiche su temi attraverso il recommendation engine (4) (es. gare pubbliche su argomenti di interesse, leggi che riguardano la sua professione o area geografica, ecc.).

Credit: Elisa Botticella

Il limite a ciò che si può costruire è la fantasia: il dashboard del cittadino fornirà infografiche relative a sé, alla sua famiglia e a ciò che è intorno a lui; il dashboard delle imprese darà la possibilità agli imprenditori di essere aggiornato su ciò che ha a che fare con la sua attività, il settore economico in cui opera e il relativo contesto geografico; un motore di NLP (Natural Language Processing) aiuterà i cittadini a navigare tra l’oceano di leggi, norme, regolamenti e circolari; un recommendation engine utilizzerà i dati a disposizione per anticipare i bisogni dei cittadini e suggerire azioni da effettuare nella panoramica delle app disponibili; gli Open Data non saranno più solo un contenitore di file csv, ma un sistema di API che forniscono un dato sempre aggiornato, correttamente catalogato e di facile ricerca, ma anche esposto attraverso l’utilizzo di tecniche di data visualization che ne rendono facilmente accessibile il contenuto informativo.

Questi sono solo alcuni esempi di ciò che si può fare e per dare impulso alla creatività abbiamo bisogno del vostro aiuto! Quello dei dati è un tema che, siamo sicuri, appassionerà tutta la comunità scientifica e quella dei civic hacker, con cui saremo felici di collaborare. Seguici sul nostro sito e contribuisci con le tue idee partecipando al gruppo di discussione sul tema che trovi qui, e scrivendoci su Twitter con l’hashtag #DatiPubblici.

Credit: Elisa Botticella

(1) Per API Economy si intendono attività economiche che vengono generate attraverso la costruzione e l’utilizzo incrociato di servizi esposti tramite API (Application Programming Interface).

(2) Nella terminologia utilizzata qui, intendiamo per cloud privato quello realizzato all’interno della PA, e per pubblico quello acquistato da società esterne alla PA.

(3) Per anonimizzazione si intendono quelle procedure volte al mascheramento delle generalità utili ad identificare in maniera univoca una persona.

(4) Per recommendation engine si intende un modello di machine learning che cerca di prevedere la preferenza di un utente relativamente ad una lista di item.