Capitolo 1 Introduzione all’ambito della Data Quality
1
Introduzione all’ambito della Data Quality
Sempre più i dati gestiti dalle entità organizzate sono in formato elettronico e, quindi, sempre
più importante è la corretta gestione e manipolazione degli stessi. In questo capitolo, dopo
aver illustrato l’importanza della Data Quality (DQ) e proposto alcune definizioni del termine,
vengono introdotte le dimensioni principali di DQ, presentati i vari tipi di dato e di sistema
informativo ed infine classificate le metodologie connesse alla DQ. Obiettivo principale del
capitolo è dunque presentare le prospettive rilevanti che rendono la DQ un importante tema da
comprendere e analizzare.
Importanza della Data Quality
La bassa qualità dei dati si ripercuote sulla vita di ogni persona, più o meno direttamente. Ad
esempio, il fatto di ricevere una lettera in ritardo, o di non riceverla affatto, è comunemente
imputato a malfunzionamenti nel servizio postale, mentre spesso è dovuto a problemi di
qualità dei dati, tipicamente un errore nell’indirizzo contenuto nella base di dati. Allo stesso
modo il fatto di ricevere due o più copie identiche di una stessa lettera inviata da un servizio
automatico spesso è indice della presenza nella base di dati di un indirizzo duplicato. La
qualità dei dati è molto importante per l’efficienza generale di un’organizzazione. [3]
A partire dagli anni ’90 le imprese hanno iniziato ad implementare un’ampia varietà di
applicazioni di business, ciascuna con un focus differente: CRM (Customer Relationship
Management), ERP (Enterprise Resource Planning), SCM (Supply Chain Management). Il
motivo che spingeva all’adozione di questi sistemi era che ciascuno poteva migliorare un
processo di business aggregando e controllando i dati per quella specifica funzione. Qualche
anno dopo molte aziende disponevano di una certa varietà di tali sistemi, ma essi erano tra
loro separati; ciò ha portato a problemi quali la presenza di dati non standardizzati, mancanti,
non corretti, duplicati, inconsistenti, etc.. Quindi, nel momento in cui alcune imprese hanno
tentato di integrare i loro diversi sistemi, hanno spesso fallito, proprio perché non hanno
considerato in modo adeguato i problemi di data quality. Il processo di integrazione, infatti, è
molto complesso, ad esempio per una banca non è per nulla semplice fornire ai propri clienti
un’unica lista con tutti i loro conti correnti e fondi. Un processo altrettanto complesso è la
fusione di più organizzazioni, la quale prevede l’integrazione dei sistemi legacy delle entità
coinvolte. Tale integrazione richiede compatibilità e interoperatività a tutti i livelli del sistema
informativo. [16]
Capitolo 1 Introduzione all’ambito della Data Quality
2
Creare, mantenere, migliorare la qualità dei dati è quindi, un processo core e senza fine dato
che stiamo vivendo la cosiddetta ”Information Age”. Le organizzazioni infatti, gestiscono
milioni o miliardi di dati; alcuni sono aggiornati di frequente, altri non vengono toccati per
anni; alcune attività di data entry vengono svolte da personale addestrato, altre sono svolte
direttamente dai clienti o da partner che dispongono di standard, strutture e definizioni dei dati
differenti. Il problema della non qualità dei dati è un problema molto esteso e ancora aperto.
Tutto ciò e dimostrato da uno studio effettuato nel 2002 dal Data Warehousing Institute (DW-
Institute), principale fornitore di istruzione e ricerca nell’industria di data warehousing e
business intelligence, il quale ha stimato che i problemi di qualità dei dati vengono a costare
all’economia americana più di 600 miliardi di dollari all’anno. L’indagine, basata su una serie
di interviste (a industriali esperti e ai principali clienti, per un totale di 647 intervistati), ha
mostrato l’esistenza di un gap tra la percezione della qualità dei dati in molte organizzazioni e
i problemi ad essa associati. Tuttavia quasi il 50% degli intervistati ha dichiarato di non aver
ancora identificato un piano per il miglioramento della qualità. [13]
Il fatto di avere a che fare con dati di cattiva qualità incrementa le spese e riduce la
produttività di un’azienda, in quanto il tempo necessario per rintracciare e correggere i dati
errati viene sottratto alla produzione di valore. Inoltre la bassa qualità dei dati causa spesso
l’insoddisfazione degli utenti, i quali perdono fiducia nell’organizzazione. Infine, le decisioni
strategiche basate su informazioni errate o di scarsa qualità portano facilmente a cattivi
risultati. I costi diretti dovuti alla non qualità dei dati sono stati stimati tra il 10% e il 20% dei
ricavi operativi di un’organizzazione (o del budget di un’entità no-profit). A ciò si aggiunge il
fatto che alcune entità organizzate sprecano tra il 40% e il 50% del loro budget IT in attività
legate alla non qualità dei dati.
Vi sono altre ragioni per cui è importante valutare e migliorare la qualità dei dati, una delle
quali riguarda la crescente necessità di integrare informazioni provenienti da fonti diverse per
attuare analisi di data mining: la cattiva qualità di tali informazioni rende difficoltosa la loro
integrazione. Nell’ambito della gestione dei data warehouse gran parte del budget viene
investito in attività di pulizia dei dati (circa il 50% dei costi di un data warehouse è riferibile a
costi associati alla qualità dei dati). In un data warehouse viene svolta un’integrazione
materializzata dei dati; esiste anche un altro tipo di integrazione, chiamata integrazione
virtuale dei dati, caratterizzata dal fatto che i dati vengono presentati agli utenti in un’unica
vista virtuale, sebbene siano fisicamente memorizzati in fonti diverse. L’integrazione virtuale
dei dati è un fenomeno recente che si sta sviluppando col crescere delle comunità sul web, e
anch’essa è interessata da problemi di qualità: infatti le inconsistenze presenti tra i dati
Capitolo 1 Introduzione all’ambito della Data Quality
3
memorizzati su siti diversi rendono difficile l’integrazione che è necessario effettuare per
rispondere alle query degli utenti. Quando vengono raccolte tali informazioni da fonti diverse,
le inconsistenze riscontrate devono essere appianate immediatamente al fine di fornire un
risultato di qualità.
La consapevolezza dell’importanza di migliorare la qualità dei dati sta crescendo in molti
contesti, ciò è testimoniato da diverse iniziative sia di tipo privato, sia di tipo pubblico attuate.
IBM, ad esempio, ha acquisito nel 2005 Ascential Software, un provider di tool per
l’integrazione dei dati; ciò sottolinea il ruolo critico dai dati e della gestione delle
informazioni. Negli ultimi anni anche SAP e Oracle, consapevoli del fatto che la qualità dei
dati è un aspetto importante a cui occorre prestare attenzione nel day by day, stanno
accrescendo le loro suite con prodotti e servizi volti a supportare un’architettura che ottimizzi
la qualità dei dati, offrendo un framework per un’analisi sistematica dei dati, con l’obiettivo di
aumentare il valore di questi ultimi e favorendone l’integrazione. Ad esempio, DataFlux
dfConnector for SAP, permette, non appena l’utente immette un nuovo record in SAP, di
verificare, in real time, l’eventuale presenza di “duplicazioni”. Successivamente provvede alla
sua validazione, standardizzazione e arricchimento “on the fly” con dati e informazioni
aggiuntive (città, provincia, CAP, telefono, etc.) provenienti da altri sistemi e che afferiscono
alla stessa entità, favorendo la creazione del miglior record possibile. [48]
Per quanto concerne il settore pubblico si può citare la legge firmata nel 2001 dal Presidente
degli Stati Uniti in merito alla qualità dei dati “Linee guida per accrescere e massimizzare la
qualità, obiettività, utilità e integrità delle informazioni diffuse dalle agenzie federali”
(Guidelines for ensuring and maximizing the quality, objectivity, utility, and integrity of
information disseminated by federal agencies). L’OMB (Office of Management and Budget)
ha rilasciato delle linee guida relative a procedure per gestire il problema della DQ. Ad
esempio, le agenzie devono riferire periodicamente all’OMB il numero e la natura delle
lamentele di qualità dei dati ricevute e come queste lamentele sono state gestite. Un’altra
iniziativa di rilievo è la direttiva europea 2003/98/CE sul riuso dei dati pubblici; essa
sottolinea l’importanza di riutilizzare i numerosi dati posseduti dalle agenzie pubbliche. Il
settore pubblico infatti raccoglie, produce e distribuisce una grande quantità di informazioni
in molte aree (sociale, economica, geografica, meteorologica, business, educativa). Rendere
pubblici tutti i documenti gestiti dal settore pubblico, è ritenuto uno strumento fondamentale
per estendere il diritto all’informazione. Aspetti connessi con la DQ derivanti da tale direttiva
sono l’accessibilità ai dati pubblici e la disponibilità in un formato che non è dipendente
Capitolo 1 Introduzione all’ambito della Data Quality
4
dall’uso di uno specifico software. Allo stesso tempo, però, è importante che sia garantita la
qualità in termini di accuracy e currency, mediante una campagna di pulizia dei dati. [3]
Definizioni di Data Quality
Molteplici sono le definizioni di Data Quality presenti in letteratura e per questo motivo può
risultare difficile darne una definizione chiara e unica. Per ovviare a questo problema
verranno presentate alcune tra le più autorevoli definizioni.
Secondo le norme ISO (ISO 8402 – 1984) per qualità dei dati s’intende: “il possesso della
totalità delle caratteristiche che portano al soddisfacimento delle esigenze, esplicite o
implicite, dell’utente”. Questa definizione evidenzia due punti molto importanti: in primo
luogo il fatto che il soggetto che usufruisce della qualità è l’utente dei dati e, in secondo
luogo, che la qualità dei dati consiste nel possesso di determinate caratteristiche. Ciò è
confermato dal fatto che nella letteratura la qualità dei dati viene definita [44] da Wang e da
altri autori come “fitness for use”, ossia “adeguatezza allo scopo, all’uso”. Determinate
informazioni sono di buona qualità se sono adatte all’uso per cui sono state create; si possono
ritenere adatte all’uso se soddisfano determinate specifiche o requisiti e se possiedono le
caratteristiche desiderate. Da tale definizione risulta chiaro che la qualità è legata agli utenti e
all’uso che questi faranno dei dati. Da questa prospettiva si può quindi affermare che certi dati
sono di alta qualità se ciò è confermato da coloro che li utilizzano. Generalmente, il primo
passo per determinare la DQ di un certo insieme è riconducibile all’identificazione di un
insieme di obiettivi di qualità, che risultano una funzione dello stato di quello specifico
insieme di dati; la misurazione è, quindi, determinata dalla conformità dei dati rispetto a
questi obiettivi di qualità.
La DQ è molto di più di ciò che è contenuto in un database, essa riguarda le interazioni tra gli
individui e le informazioni di cui essi necessitano per svolgere i loro compiti con efficienza ed
efficacia, se creano o utilizzano i dati. [15] [16] La Data Quality è quindi l’incontro di tutte le
aspettative dei knowledge worker e dei clienti finali, per mezzo delle informazioni e dei
servizi informativi finalizzati proprio a soddisfare gli obiettivi dei knowledge worker e dei
clienti finali.
La DQ è anche spesso accostata al concetto di assenza di difetti (freedom from defects), dove
il difetto è una non conformità rispetto ad uno standard di qualità, un inconveniente da evitare.
Ne sono un esempio: inaccessibilità, inaccuratezza, obsolescenza, ridondanza, inconsistenza
incompletezza, incomprensibilità. Da ciò deriva il concetto di qualità dei dati
multidimensionale, ossia costituito da più dimensioni. Le dimensioni sono caratteristiche di
Capitolo 1 Introduzione all’ambito della Data Quality
5
qualità e ognuna ne rappresenta uno specifico aspetto. Tra le dimensioni più comunemente
utilizzate si possono trovare accuracy, completeness, consistency, timeliness, accessibility,
che indicano rispettivamente l’accuratezza, la completezza, la coerenza, la tempestività e
l’accessibilità dei dati: si tratta di caratteristiche che dovrebbero essere garantite per un
insieme di dati di qualità, verranno trattate nel dettaglio in seguito.
Come valutare la qualità dei dati
La qualità dei dati è stata definita come un concetto multidimensionale. Per valutarla vengono
quindi misurate le dimensioni che la caratterizzano, attraverso la definizione di metriche. È
possibile fare una distinzione fra tre tipi di metriche [33]:
• Metriche soggettive: la valutazione viene svolta dagli stakeholder, ossia da coloro che
hanno a che fare con i dati: non si tratta solo degli utenti finali, ma anche di coloro che
raccolgono i dati, che li gestiscono, che li elaborano, ecc. La valutazione soggettiva
avviene solitamente attraverso un questionario o attraverso dei sondaggi: si tratta quindi di
un giudizio soggettivo sulla qualità dei dati, che può cambiare da persona a persona.
• Metriche oggettive: dato un insieme di dati in un preciso momento temporale, se ne viene
valutata la qualità (o una sua dimensione) attraverso una metrica oggettiva il risultato sarà
lo stesso indipendentemente dal soggetto che effettua la misurazione. Spesso questo tipo
di metrica è implementabile attraverso algoritmi.
• Metriche soggettive/oggettive: con tale espressione si vogliono indicare quelle metriche
che sono per metà oggettive e per metà soggettive. Ciò può capitare nel caso in cui la
metrica per misurare una dimensione D preveda di misurare due ulteriori dimensioni, D1 e
D2, di cui essa è composta, e le metriche per le “sotto-dimensioni” D1 e D2 siano una
soggettiva e una oggettiva. In tal caso la metrica della dimensione D si può definire
oggettiva/soggettiva. Un altro caso in cui una metrica può essere definita in questo modo è
quello in cui tale metrica prevede la valutazione di più voci, per alcune delle quali il
giudizio è obiettivo mentre per altre è soggettivo.
Sono possibili altre classificazioni per le metriche, basate su criteri diversi. Una di queste
prevede la distinzione tra metriche indipendenti dal contesto e dipendenti dal contesto (DQA).
Le prime possono essere applicate a un qualsiasi insieme di dati, senza dover considerare il
contesto applicativo; le seconde prendono in considerazione le regole dell’azienda, gli
eventuali vincoli imposti dall’amministratore della base di dati e sono sviluppate nell’ambito
di specifici contesti applicativi.
Capitolo 1 Introduzione all’ambito della Data Quality
6
Dimensioni della Qualità dei Dati
La qualità di un prodotto manifatturiero dipende dal processo con cui il prodotto viene
progettato e realizzato. Analogamente, la qualità dei dati dipende dai processi di progettazione
e di produzione dei dati. Per migliorare questi processi, è necessario comprendere cosa
significa qualità dei dati e come essa possa essere misurata.
Il concetto di dato e quello di informazione sono molto correlati; per entrambi una valutazione
quantitativa della qualità dipende dall’utilizzo che se ne fa. Ad esempio, un dato che viene
considerato intuitivamente di buona qualità in un contesto (perché fornisce abbastanza
informazione), può non esserlo altrettanto in un contesto differente. Quindi, è ragionevole
affermare che la DQ in generale dipende dal progetto del sistema informativo e dall’utilizzo
che se ne farà, aspetto questo che però non è completamente sotto il controllo del progettista.
Il rilevamento del livello di qualità dei dati si può configurare come un’analisi sulla
correttezza dei valori memorizzati nei sistemi, in relazione a diversi parametri, meglio
conosciuti come dimensioni.
Si farà ora riferimento alle quattro dimensioni (tra cui l’accuratezza è sicuramente la più
importante) [3] considerate come principali nelle analisi a proposito della qualità dei dati,
mentre nel capitolo 3, in relazione ad un’analisi degli errori e delle cause di errore, si proporrà
un’elencazione di “dimensioni di errore”, intese come le dimensioni il cui basso livello di
qualità genera errori. In tale occasione, l’elenco delle dimensioni stesse si presenterà più
numeroso, dato che si prenderanno in considerazione anche alcune “derivate”, che ricoprono
però un ruolo piuttosto importante, dati gli errori che esse possono provocare. Verrà anche
data una esemplificazione per ciascuna di esse. Le dimensioni di seguito citate sono
particolarmente legate alle attività di acquisizione dei dati e, quindi, ai processi operativi che
se ne occupano al fine di alimentare i database. [32]
Accuratezza: è la vicinanza del valore del dato ad un valore nel dominio. Spesso si distingue
l’accuratezza in due tipologie: sintattica (rappresenta la vicinanza del dato ad un valore del
dominio di definizione considerato corretto) e semantica (è la vicinanza del dato all’elemento
del dominio di definizione, ossia il fenomeno osservato), quest’ultima è più difficile da
misurare.
In termini più formali, se il dato è <e,a,v> mentre il valore di a nel mondo reale è v’, allora
l’accuratezza è data dalla distanza (v,v’); il problema è che non sempre è facile calcolare
questa distanza, e spesso la definizione di tale funzione dipende non solo dal dominio dei
Capitolo 1 Introduzione all’ambito della Data Quality
7
valori, ma anche dall’applicazione. In molte situazioni è più semplice calcolare un valore
medio sul database, asserendo semplicemente che un dato è corretto o è scorretto (e quindi
considerando la sua distanza dal valore reale zero o infinita, rispettivamente), e calcolando un
indicatore di accuratezza medio come rapporto tra numero di valori corretti e numero valori
complessivi.
Currency: è l’adeguatezza nella rapidità di aggiornamento. Il valore di un dato è up-to-date se
è corretto nonostante le possibili discrepanze dovute al tempo di cambiamento del valore; è
outdated al tempo t se è scorretto a t ma era corretto a t’, con t’<t. La currency è una misura di
quanto il dato in questione è up-to-date. In particolare, risulta che la currency è una sorta di
non accuratezza temporale. Due concetti relativi alla currency sono quelli di cycle-time (il
tempo che un processo impiega a creare un valore per un dato) e timeliness (la differenza tra il
momento in cui il processo ha creato il valore ed il momento in cui si suppone lo abbia fatto –
perché, ad esempio, solo allora è stato aggiornato il database). La misura della currency
richiede particolare attenzione nel caso di dati permanenti (ad esempio Nome e Cognome o
Data di Nascita), in quanto per essi è forse più appropriato parlare solamente di accuratezza in
un certo istante.
Completezza: è l’estensione con cui i valori degli attributi sono presenti nel dato. Un dato
possiede un valore oppure è nullo; i valori nulli dovrebbero essere limitati, ed in ogni caso
bisogna specificare il significato del valore nullo (si consideri, ad esempio, il caso di un’entità
Persona con attributo NumeroTelefonoCellulare):
• valore non noto di un attributo applicabile (ad esempio si sa che la persona possiede un
telefono cellulare, ma il numero non è noto). È un caso di incompletezza;
• attributo non applicabile (la persona non possiede un telefono cellulare). È un indicatore
di completezza;
• non è noto se l’attributo è applicabile o meno (non si sa se la persona possiede o meno un
telefono cellulare);
• il valore nullo è un valore valido per quell’attributo, fa cioè parte del dominio (nel
contesto applicativo il valore nullo potrebbe indicare che il numero di telefono è
riservato). È un indicatore di completezza.
Questo tipo di completezza viene talvolta chiamata completezza degli attributi. Infatti si parla
anche di completezza delle entità, intendendo che tutte le istanze che dovrebbero essere
presenti devono effettivamente apparire nel database. Questa è più difficile da valutare, in
Capitolo 1 Introduzione all’ambito della Data Quality
8
quanto la decisione se un’istanza di un concetto “reale” deve essere rappresentata come
un’istanza del database dipende da aspetti esterni.
Consistenza: l’inconsistenza tra i valori si ha quando due attributi (tra i quali esiste una
dipendenza funzionale) presentano valori non possibili. Essa nasce perché vi è anche
ridondanza.
In questa sezione sono state descritte le dimensioni di DQ principali, in realtà in letteratura ne
sono state proposte molte altre, alcune delle quali sono legate a specifici contesti che
necessitano di dimensioni ad hoc per poter cogliere le peculiarità del dominio.
A titolo d’esempio si vuole citare la classificazione effettuata da Wang e Strong [40] in merito
alla qualità delle fonti informative. Essi hanno identificato tre dimensioni per modellare il
grado di veridicità delle fonti informative ottenute dai dati: credibilità (valuta se una certa
fonte fornisce dati che possono essere ritenuti veri, reali e credibili), reputazione (considera
quanto sono veritiere le fonti informative) e oggettività (valuta l’imparzialità delle fonti).
Comprensione dei diversi livelli di sofisticazione in ambito DQ
I diversi livelli di intervento in ambito di qualità dei dati, al fine di ottenere dei miglioramenti
nei livelli di qualità sulle varie dimensioni (anche considerando dimensioni “derivate” o
specifiche di un determinato contesto reale), si possono andare a disporre in sequenza
all’interno di una piramide [2], per renderne appunto il concetto di complessità crescente
salendo lungo la piramide stessa.
Si può infatti partire da azioni su aspetti meno complessi, come i tipi di dati ed il loro
dominio, cercando di costruire, livello per livello, la base ottimale per avere successo negli
interventi successivi, di maggiore complessità. Tutto ciò porta gradualmente ad effettuare
verifiche sulla completezza, sulla consistenza ecc. fino ad arrivare a valutare il rispetto di
business rule appositamente ideate in funzione del database considerato e dell’utilizzo che si
intende farne. Nella Figura 1 si mostra graficamente l’approccio concettuale appena
enunciato.
Capitolo 1 Introduzione all’ambito della Data Quality
9
Figura 1: piramide di interventi sulla qualità dei dati
Si discuterà ora nel dettaglio ciascuno dei diversi strati della piramide.
Data type and domain: da questo punto partono la maggior parte degli sforzi in direzioni di
miglioramento della DQ. Va detto che questo, però, spesso si rivela essere anche il punto di
arrivo delle iniziative a proposito della qualità dei dati. Gli interventi possono riguardare, ad
esempio, la correzione dei formati e dei tipi di attributi nei diversi campi dei record, al fine di
uniformare l’intera base dati considerata.
Completeness: si applicano interventi sulla completezza sia logicamente che fisicamente.
Logicamente, la completezza si accompagna anche all’inconsistenza temporale: si possono
avere, ad esempio, serie storiche di dati in una qualsivoglia relazione reciproca, le quali, però,
si estendono su orizzonti temporali differenti o di diversa lunghezza; ciò ovviamente non
favorisce il confronto tra i dati e rappresenta sia un fenomeno di inconsistenza temporale, sia
di completezza. La completezza fisica fa invece riferimento a situazioni come quelle in cui
l’interfacciamento tra sistemi differenti può far perdere alcune informazioni; è in questo senso
che si utilizzano sistemi di controllo come il conteggio dei record oppure dei checksum value.
Uniqueness and referential integrity: l’unicità si verifica all’interno di ogni singola entità del
database. Al contrario, l’integrità referenziale si applica all’unicità nelle relazioni tra entità
differenti. Problemi di questo genere si possono evitare attraverso l’utilizzo di indici dei
database e costanti di integrità referenziale. Tuttavia, alcune volte le relazioni non si
esauriscono all’interno del medesimo database, ma attraversano più basi di dati differenti; in
contesti di questo tipo, il rispetto delle regole di unicità ed integrità si rivela essere molto più
complesso.
Capitolo 1 Introduzione all’ambito della Data Quality
10
Consistency: in queste situazioni, i problemi derivano da replicazioni delle medesime entità
che si rivelano essere tra loro inconsistenti, presentando fenomeni di content overlapping che
rendono difficile risalire a quale sia l’informazione corretta.
Freshness and timeliness: qui il riferimento è, nel primo caso, alla currency dei dati, mentre
nel secondo si intende in quale momento i dati si rendono disponibili per gli utenti che se ne
devono servire. A questo livello, si vuole prevenire il tardivo aggiornamento dei dati
(soprattutto per quelli che si modificano con elevata frequenza) e la tardiva accessibilità di
essi in relazione alle necessità di utilizzo.
Business rule conformance: questo è il livello di maggiore complessità; le business rule
vengono di volta in volta costruite e la loro complessità intrinseca può essere elevata. Allo
stesso modo, anche il controllo della loro validità nei database di interesse è piuttosto critico
(nei contesti con dati frequentemente variabili, le procedure di controllo devono essere
costanti e rapide).
Questa struttura a piramide che descrive i possibili livelli di intervento deve essere presa in
considerazione nel momento in cui si decide di attuare una serie di interventi migliorativi,
potenzialmente anche a più livelli, per comprendere come sia fondamentale il successo degli
interventi dei livelli inferiori per la buona riuscita anche di quelli ai livelli superiori.
Capitolo 1 Introduzione all’ambito della Data Quality
11
Data Quality e tipi di dato
I dati descrivono oggetti del mondo reale in un formato che può essere archiviato, recuperato
e processato da procedure software, e comunicato attraverso la rete.
Nell’ambito della Data Quality, la gran parte degli autori [4] [32] [39]sia esplicitamente, sia
implicitamente opta per una distinzione tra tre tipologie di dati:
1. Dati Strutturati: rappresentano l’aggregazione o la generalizzazione di oggetti descritti da
attributi elementari definiti in un determinato dominio. Il dominio rappresenta il range di
valori che può essere assegnato agli attributi, e di solito corrisponde ai tipi di dati
elementari dei linguaggi di programmazione, come ad esempio valori numerici o stringhe
di testo. Le tabelle relazionali rappresentano il tipo più comune di dato strutturato.
2. Non Strutturati: vengono rappresentati come una sequenza generica di simboli,
tipicamente codificati in un linguaggio naturale.
3. Semistrutturati: tipologia di dati che ha una struttura con qualche grado di flessibilità. I
dati semistrutturati sono anche “privi di schema” o “auto-descrittivi”. L’XML è il
linguaggio di markup comunemente utilizzato per rappresentare i dati semistrutturati.
Alcune caratteristiche dei dati semistrutturati sono:
a. possono contenere dei campi non noti all’atto della progettazione, ad esempio quando
un file XML non ha associato un file di Schema XML;
b. lo stesso tipo di dati può essere rappresentato in modi differenti, per esempio sotto
forma di insiemi singoli di dati;
c. tra i vari campi conosciuti in fase di progettazione, si definiscono semistrutturati quei
dati che non avranno valore in futuro.
Le tecniche di Data Quality aumentano notevolmente la loro complessità al perdere della
struttura dei dati. La maggioranza dei contributi di ricerca provenienti dalla letteratura relativa
alla DQ, si focalizza su dati strutturati o semi-strutturati. I dati provenienti dal web sono
spesso non-strutturati e la letteratura relativa ad essi fornisce diversi contributi che studiano
caratteristiche di qualità legate al tempo dei dati sul Web. Per esempio, vi è un numero
significativo trattazioni in merito all’obsolescenza dei dati non-strutturati e il conseguente
bisogno di un aggiornamento periodico dei link web. In particolare gli archivisti propongono
l’applicazione di tecniche di gestione bibliotecarie per la gestione dei dati web.
Capitolo 1 Introduzione all’ambito della Data Quality
12
Sebbene venga riconosciuta l’importanza dei dati non-strutturati e la sovrapposizione tra la
Data Quality e le comunità di ricerca per il web, ci si focalizza sui dati strutturati e semi-
strutturati e le corrispondenti tecniche di DQ.
Una classificazione ortogonale dei dati, tratta dalla letteratura relativa alla Data Quality, è
basata sul fatto di trattare i dati come se fossero un particolare prodotto manifatturiero. Da
questa prospettiva, è possibile distinguere tre tipi di dati.
• Raw data items, definiti come dati che non sono stati processati dalla loro creazione e
prima memorizzazione. Essi possono essere memorizzati per lunghi periodi di tempo.
• Component data item, i quali sono generati ogni volta che è richiesto il relativo prodotto
informativo e, sono memorizzati temporaneamente, fino a che il prodotto finale è stato
costruito.
• Information products, i quali sono il risultato di azioni di manipolazione applicate ai dati.
Una terza classificazione propone una distinzione tra:
• dati elementari, vale a dire dati gestiti in organizzazioni da processi operativi, che
rappresentano eventi atomici del mondo reale (es. numero di previdenza sociale, età,
sesso);
• dati aggregati, ottenuti partendo da una collezione di dati elementari, applicando ad essi
alcune funzioni di aggregazione (es. la media delle tasse pagate in una data città). Dalla
prospettiva della Data Quality, la sensibilità della qualità dei dati aggregati è di solito più
bassa della sensibilità dei dati elementari. Ad esempio pochi errori in un insieme di dati
elementari, tipicamente comportano una piccola percentuale di errore nel loro valor
medio.
Infine, considerando una dimensione relativa al tempo, i dati possono essere classificati come
segue:
• stabili: dati che è improbabile che cambino. Sono un esempio le pubblicazioni
scientifiche; anche se possono essere aggiunte nuove pubblicazioni, le più vecchie restano
immutate;
• dati che cambiano a lungo termine: dati che hanno una bassissima frequenza di
cambiamento (ad esempio gli indirizzi). È importante sottolineare che il concetto di bassa
frequenza del cambiamento è strettamente dipendente dal dominio;
Capitolo 1 Introduzione all’ambito della Data Quality
13
• dati che cambiano di frequente: sono dati con un’alta frequenza di cambiamento, come
informazioni del traffico in real-time, temperature di sensori e quantità di vendita. Tali
cambiamenti possono avvenire con una frequenza stabilita, oppure possono essere
random.
Data Quality e tipi di sistemi informativi
Un sistema informativo rappresenta un insieme di flussi informativi coordinati. Il
coordinamento è reso possibile dal supporto all’accesso a basi di dati integrate, attraverso un
set di applicativi tra loro interoperabili e coordinati lungo un workflow prefissato. I sistemi
informativi si possono distinguere sulla base della loro architettura [4], ciò significa che
vengono presi in considerazione diversi aspetti strutturali (grado di integrazione dei dati, dei
processi e delle politiche di gestione del sistema) come mostrato in Figura 2.
Figura 2: tipi di sistemi informativi
All’aumentare del grado di integrazione dei dati, dei processi ecc., le tecniche di assessment
ed improvement della DQ che si possono applicare si fanno sempre più sofisticate. Allo stesso
tempo, le attività di miglioramento sui dati si rivelano più impegnative. In base al grado di
integrazione, si possono distinguere appunto diversi tipi di sistemi informativi.
In un sistema informativo monolitico le applicazioni sono di tipo single-tier (ossia mono-
livello) e non forniscono servizi di accesso ai dati. Sebbene i dati siano generalmente
memorizzati in un database che può essere interrogato, applicazioni separate dal sistema non
condividono i dati. I problemi maggiori in questi sistemi si rivelano essere sulla duplicazione
dei dati, e coinvolgono quindi (almeno a livello potenziale) tutte le dimensioni di qualità. In
Capitolo 1 Introduzione all’ambito della Data Quality
14
contesti simili, si rivela complessa l’applicazione di improvement sui processi, data la
frammentarietà di questi ultimi; allo stesso modo, le politiche di gestione delle differenti
applicazioni sono spesso in conflitto tra loro e non supportano l’utilizzo di criteri comuni.
Un Data Warehouse (DW) è una collezione centralizzata di dati recuperati da diversi
database. Periodicamente i DW sono aggiornati con nuovi dati provenienti dai medesimi DB
di origine attraverso procedure automatizzate di estrazione ed allineamento dei record. I dati
sono così duplicati, fisicamente integrati, normalizzati sulla base dello schema previsto dal
DW ed infine memorizzati all’interno di esso. L’integrazione può beneficiare di interventi di
miglioramento della qualità. per un’implementazione di successo di un DW, occorre che la
gestione dei dati sia integrata, al fine di garantire efficacia delle procedure di aggiornamento e
il rispetto dei requisiti sui dati (i quali si modificano in continuazione).
Un sistema informativo distribuito è un insieme di moduli applicativi coordinati sulla base di
un particolare workflow. Le applicazioni sono tipicamente suddivise su più livelli (molto
spesso lo schema è 3-tiered, ossia a tre livelli: presentazione, logica applicativa e gestione dei
dati) e le funzionalità di acceso ai dati sono presenti a livelli diversi. I dati possono essere
memorizzati in database differenti, ma l’interoperabilità è garantita dall’integrazione logica
dei loro schemi. Con soluzioni di questo tipo, non è possibile prevenire errori di integrazione,
soprattutto se gli schemi dei DB sono parzialmente sovrapposti ed i dati sono duplicati. Le
procedure di gestione delle applicazioni sono integrate, mantenendo così un buon livello di
coordinamento tra di esse.
Un sistema informativo cooperativo può essere considerato un sistema su larga scala che
interconnette diversi sistemi informativi di organizzazioni differenti e tra loro autonome,
benché con obiettivi comuni. La cooperazione tra i diversi sistemi richiede la possibilità di
scambiare agevolmente informazioni. Nei CIS (Cooperative Information Systems) i dati non
sono integrati logicamente, dato che sono memorizzati in database differenti, ognuno dei quali
fa riferimento ai propri schemi, bensì l’integrazione è concettuale e comporta la traduzione in
un formato comune prima del trasferimento tra le diverse organizzazioni: in questo modo è
possibile la cooperazione. A livello di DQ, la cooperazione da un lato permette di selezionare,
tra i dati duplicati all’interno dei singoli database, quelli di maggior qualità in base al livello
di qualità della sorgente. Va comunque considerato come, in sistemi cooperativi, sia
Capitolo 1 Introduzione all’ambito della Data Quality
15
necessario definire in modo comune i metadati e la loro certificazione in modo da poter
riconoscere le diverse organizzazioni come parti della stessa “rete”.
In sistemi informativi peer-to-peer (P2P), non esiste distinzione tra client e server. Il sistema
si fonda su una serie di nodi identici che condividono dati e servizi applicativi per soddisfare
collettivamente i requisiti utente. Nei sistemi P2P non vi è alcun tipo di coordinamento
centralizzato, né un database unico, nessun nodo ha una visione globale del sistema. Il
funzionamento globale deriva da interazioni locali, ogni nodo è autonomo e può connettersi e
disconnettersi dal sistema. Il focus è incentrato sugli utenti, sui loro requisiti e sul reciproco
soddisfacimento dei bisogni informativi. In strutture di questo tipo, il problema della qualità
dei dati è piuttosto complesso: i dati sono distribuiti, duplicati, spesso in conflitto tra loro e
ciascun nodo non deve soddisfare specifici requisiti di qualità per poter far parte del sistema.
Per questa ragione, spesso la reputazione dei nodi è valutata sulla base della fiducia delle
sorgenti, dato che è l’unica via per misurare empiricamente la qualità dei dati forniti.