19© SEEd Tutti i diritti riservatiFarmeconomia e percorsi terapeutici 2011;12(Suppl 2) DENALI: il Data Warehouse di Sanità Pubblica della Regione Lombardia RICOVERI – Ricoveri ospedalieri, diagnosi - e interventi chirurgici; Contiene inoltre archivi di riferimento per l’interpretazione dei dati contenuti negli archi- vi principali: ASSISTIBILI – Archivio anagrafico storico - dei residenti e degli assistiti in Lombardia; MEDICI – Anagrafe dei medici; - STRUTTURE – Archivio delle strutture - sanitarie lombarde; FARMACIE – Archivio delle farmacie; - FARMACI and ATC ( - Anatomical Thera- peutic Chemical Classification) – Archivio farmaci; CODICI DIAGNOSI – Codici diagnostici - fissati dal comitato internazionale; CODICI DI PROCEDURE CHIRURGI- - CHE; DRG & MDC - - Diagnosis-Related Groups and Major Diagnostic Categories; altri 40 archivi contenenti descrizioni del - territorio e di codici usati negli archivi principali. Le nostre capacità di raccogliere e generare dati sono aumentate rapidamente negli ultimi decenni. Fattori determinanti sono l’esteso uso di codici a barre per i prodotti commerciali, l’in- formatizzazione delle aziende e delle transazio- ni di lavoro e la disponibilità sempre maggiore di strumenti di raccolta dati, dagli scanner alle piattaforme per immagini ai sistemi di registra- zione satellitare. Inoltre non bisogna dimenti- care la diffusione ormai veramente popolare di Internet. Questa crescita esplosiva degli archi- vi di dati ha prodotto un’esigenza sempre più pressante di tecniche e strumenti automatici che possano con intelligenza assistere all’opera di trasformazione di questa quantità enorme di dati in informazioni e conoscenza utilizzabili. Il Data mining, noto anche come Knowledge Discovery in Databases (KDD), è l’estrazione automatica od opportunistica di conoscenze im- plicitamente contenute nei grandi database o in altri “depositi” di grandi masse di informazioni. Data mining è un campo multidisciplinare, che utilizza metodi e contenuti derivati dalla tecno- logia dei database, dall’intelligenza artificiale, dalle tecnologie di apprendimento automatico (Machine Learning), dalle reti neurali, dalla sta- tistica, dal riconoscimento di schemi, dai sistemi esperti, dalle tecnologie di reperimento di infor- mazioni da dati non strutturati e dalle tecnologie di elaborazione ad alte prestazioni e di visualiz- zazione dei dati. Il Data mining, emerso verso la fine degli anni Ottanta, ha compiuto progressi notevoli negli anni Novanta e certamente con- tinuerà a fiorire negli anni futuri. IL DATABASE DI SANITà PuBBLICA DELLA REgIONE LOMBARDIA Il successo delle tecniche di Data mining ha un fondamento: i dati. Il database di Sanità Pubblica della Regione Lombardia contiene tre archivi principali dove vengono registrati eventi di assistenza sanitaria: AMBULATORIALE – Visite specialistiche, - analisi ambulatoriali e trattamenti terapeuti- ci eseguiti presso strutture sanitarie; FARMACEUTICA – Prescrizioni farmaceu- - tiche erogate da farmacie in Lombardia; Giancarlo Cesana (1), Carla Fornari (1), Virginio Chiodini (1), Fabiana Madotto (1), Luca Merlino (2), Lorenzo G. Mantovani (1,3) (1)CESP, Università di Milano Bicocca, Monza (2)Direzione Generale Sanità, Regione Lombardia, Milano (3)CIRFF, Università degli Studi di Napoli Federico II, Napoli Figura 1 Principali tabelle dati del database sanitario lombardo e relativo numero di record (righe). Le dimensioni delle tabelle si riferiscono ai dati del periodo 2003-2005 20 © SEEd Tutti i diritti riservati Farmeconomia e percorsi terapeutici 2011;12(Suppl 2) DENALI: il Data Warehouse di Sanità Pubblica della Regione Lombardia I dati registrati nei tre archivi principali si ri- feriscono a eventi relativi al periodo 2003-2005. Gli altri archivi si basano su dati del 2002 ag- giornati periodicamente negli anni successivi. Il database di Sanità Pubblica della Regione Lombardia è processato da un database relazio- nale Oracle. I dati sorgenti usati per la costru- zione del Data Warehouse contengono oltre 700 milioni di record. Nella Figura 1 sono illustrate le principali tabelle dati del database sanitario lombardo e il relativo numero di record (righe). Le dimensioni delle tabelle si riferiscono ai dati del periodo 2003-2005. Il database sanitario lombardo è affetto da tutti i problemi tipici di qualità dei dati: strutture di supporto eterogenee: - tabelle relazionali con criteri di normaliz- • zazione disparati; nomenclatura dei campi disomogenea. • Per esempio, il campo contenente il co- dice fiscale è denominato, nelle tre tabelle principali, “Codice_Fiscale”, “Cod_Fisc_ Assto”, “Cd_Fisc_Cit”; formati disomogenei: per esempio, le date - sono espresse a volte in formato Oracle standard (“TO_DATE (’28-11-2005’...) e a volte in formato stringa di caratteri: “28- 11-2005”; incoerenza: i costi sono espressi a volte - in Euro e a volte in centesimi di Euro; gli anni sono stati registrati su 4 o 2 caratteri all’interno dello stesso archivio: TO_DATE (’28-11-05’...) anziché TO_DATE (’28-11- 2005’...); duplicazione dei dati: la gravità del proble- - ma della duplicazione è illustrata dall’esem- pio di 10 codici farmaco duplicati all’in- terno dello stesso gruppo ATC. Un’analisi che utilizzasse una giunzione relazionale su 2.000.000 di prescrizioni all’interno di que- sto gruppo ATC produrrebbe 20.000.000 di eventi duplicati. Al costo di € 2.00 per pre- scrizione l’errore causerebbe una sovrastima di costo pari a € 40.000.000; errori di digitazione. Per esempio: Co- - d i c e R e g i o n a l e 4 L M J 4 5 V F R i n v e - ce di 4LMk45VFR.; Codice Fiscale G RT N N T 2 5 R 5 6 G 2 7 3 F i n v e c e d i GRTNNT25R56G273R; Codici diagnosti- ci: 1142 (Coccidioidal Meningitis) anziché 01142 (Lung Tubercular Fibrosis); sconnessione tra i dati: la mancata registra- - zione o la digitazione incorretta di codici di concatenamento (per esempio, Codice Regionale) tra tabelle del database rende impossibile il reperimento di informazio- ni chiave nelle tabelle di riferimento (per esempio, l’archivio anagrafico) causando una perdita di dati utilizzabile per l’analisi. Si assume comunemente che una perdita di dati superiore al 20% possa influire sul- la correttezza dell’analisi introducendo un bias statistico. DENALI La creazione di un Data Warehouse utilizza un approccio statico o “update driven” integran- do anticipatamente informazioni provenienti da sorgenti molteplici ed eterogenee e “immagaz- zinandole” per supportare interrogazioni diret- te e analisi dei dati. Diversamente dalle basi di dati processate con transazioni in tempo reale, il Data Warehouse non contiene informazioni aggiornate. La funzione del Data Warehouse è di offrire elevate prestazioni di accesso al da- tabase risultante dall’integrazione di sorgenti disomogenee. Per questo i dati vengono estrat- ti, preprocessati, integrati e ristrutturati in un unico deposito. Il Data Warehouse integra dati estratti da molteplici sorgenti eterogenee in una struttura unificata ordinata secondo un modello semantico di dati particolarmente adatto a sup- portare interrogazioni strutturate o estempora- nee, generazione di rapporti analitici e processi decisionali. L’obiettivo del Data Warehouse di Sanità Pubblica è di consolidare i dati di sanità pub- blica raccolti dalla Regione Lombardia in un unico deposito coerente e accurato, adeguato a essere messo a disposizione di molteplici co- munità di ricerca per diversi tipi di analisi e di supporto decisionale. DENALI STUDIO è un sistema software disegnato e sviluppato per la creazione e la manutenzione del Data Warehouse della Sanità Pubblica della Regione Lombardia. DENALI supporta il lavoro di creazione del Data Warehouse offrendo un’estesa interfaccia grafica che facilita l’analisi e la gestione dei dati (Figura 2). DENALI offre due funziona- lità qualificanti: il - Probabilistic Record Matching (PRM) che permette la ricostruzione di connessioni tra righe di tabelle diverse corrotte da errori di digitazione. Questa funzionalità elimina o quantomeno riduce notevolmente il bias statistico prodotto dalla perdita di dati. I risultati preliminari indicano che il PRM è stato in grado di recuperare oltre il 30% di connessioni danneggiate; la definizione grafica di “viste” standard e - lineari. Queste viste nascondono la com- plessità strutturale della Data Warehou- se e permettono ai ricercatori statistici di analizzare i dati senza dover affrontare la sintassi di espressioni di interrogazione complesse. L’accesso al Data Warehouse di Sanità Pubblica è strettamente controllato dall’Au- thority della Regione preposta alla Privatezza per prevenire accessi non autorizzati a dati 21© SEEd Tutti i diritti riservatiFarmeconomia e percorsi terapeutici 2011;12(Suppl 2) G. Cesana, C. fornari, V. Chiodini, f. Madotto, L. Merlino, L. G. Mantovani sensibili. Gli standard di privatezza sono re- golati da apposite leggi regionali e nazionali. DENALI STUDIO offre le seguenti funzio- nalità: valutazione preliminare della qualità dei - dati, identificando duplicazioni, inconsisten- ze, incompletezze e sconnessioni; integrazione dei dati, omogeneizzazione - delle strutture e degli standard di nomen- clatura dei campi; pulizia dei dati, attraverso le funzioni di - deduplicazione e di ricostruzione probabi- listica di connessioni mancanti tra gli ar- chivi di dati; caricamento e aggiornamento del - Data Wa- rehouse; materializzazione delle “viste” per analisi - specifiche. La struttura funzionale di DENALI è illu- strata in Figura 3. Figura 2 Struttura di DENALI Figura 3 Struttura funzionale di DENALI 22 © SEEd Tutti i diritti riservati Farmeconomia e percorsi terapeutici 2011;12(Suppl 2) DENALI: il Data Warehouse di Sanità Pubblica della Regione Lombardia MODELLO SCHEMATICO DEL DATA WAREHOuSE DI SANITà PuBBLICA Un Data Warehouse richiede il disegno di un modello schematico conciso e specifico che faciliti l’analisi dei dati. Modelli multi- dimensionali di dati sono i più comuni per un Data Warehouse. Tali modelli possono assumere la forma di schemi a stella (Star Schema) o schemi a fiocco di neve (Snowfla- ke Schema). In uno schema a stella il Data Warehouse contiene un insieme di grandi archivi centrali (tabelle fattuali) che contengono il nucleo prin- cipale di dati, senza alcuna ridondanza, e un in- sieme di archivi ausiliari, uno per ogni dimen- sione informativa complementare ai dati degli archivi fattuali. La Figura 4 illustra lo schema a stella del Data Warehouse di Sanità Pubblica. Lo schema a fiocco di neve (Snowflake Sche- ma) è una variante dello schema a stella in cui alcu- Figura 4 Schema a stella per Data Warehouse Figura 5 Schema a fiocco di neve per Data Warehouse 23© SEEd Tutti i diritti riservatiFarmeconomia e percorsi terapeutici 2011;12(Suppl 2) G. Cesana, C. fornari, V. Chiodini, f. Madotto, L. Merlino, L. G. Mantovani ne tabelle dimensionali sono normalizzate, suddivi- dendo ulteriormente i dati in tabelle aggiuntive. Il grafico dello schema risultante ha una forma simile a un fiocco di neve. La differenza principale tra lo schema a stella e quello a fiocco di neve consiste nel fatto che le tabelle dimensionali in uno schema a fiocco di neve vengono normalizzate per ridurre ridondanze. Tabelle in questa forma sono agevoli da aggiornare e risparmiano spazio di registrazione. Tuttavia, il risparmio è trascurabile in confronto alle dimensioni tipiche delle tabelle fattuali. Inoltre lo schema a fiocco di neve può ridurre la velocità di esecuzione delle interrogazioni in quanto causa un aumento del numero di giunzioni di tabelle per ogni interrogazione, producendo un impatto nega- tivo sulle prestazioni. In Figura 5 è illustrato un ipotetico modello schematico a fiocco di neve del Data Warehouse di Sanità Pubblica. Per il Data Warehouse di Sanità Pubblica della Regione Lombardia è stato adottato un modello schematico a stella. RICOSTRuZIONE PROBABILISTICA DELLE CONNESSIONI Una delle principali funzionalità che di- stinguono DENALI STUDIO è la ricostru- zione probabilistica delle connessione tra dati degli archivi sorgenti, mancanti in se- guito a errori di digitazione. La ricostruzione probabilistica delle connessioni è eseguita in tre fasi: stima statistica dei parametri elaborata at- - traverso un esame dei dati sorgenti da con- nettere; calcolo di valori di soglia per determinare - se una coppia di record (righe) sia da con- nettere; calcolo del peso probabilistico di connessio- - ne per ciascuna coppia di record proveniente da due tabelle. Per accelerare l’esecuzione delle intense elaborazioni, in DENALI la funzione di ricostruzione probabilistica delle connessioni è disegnata con un’architettura multithreading che, attraverso la generazione di processi paralleli ottimizzati, sfrutta appieno le capacità dell’hardware disponibile. L’esempio di studio presentato in seguito in questo Supplemento ha utilizzato il Data Warehouse 2003-2005. Attualmente DENALI immagazzina i dati 2000-2009, vale a dire oltre 90 milioni di anni persona.