Si ritiene che circa l‘80% delle informazioni di qualunque organizzazione sia racchiusa in documenti non strutturati o semi-strutturati. Un documento, essendo di solito caratterizzato da molti concetti diversi tra loro, può essere inteso come intrinsecamente multidimensionale. Il Document Warehousing costituisce uno strumento avanzato di analisi di grandi moli di dati non strutturati, da utilizzare in maniera user-friendly, mediante tecnologia OLAP. Viene presentata una descrizione ad alto livello della progettazione del Document Warehouse, e viene approfondita la fase di alimentazione, basata sul paradigma dell‘ ETL testuale.
Introduzione al Document Warehousing
La globalizzazione, e la rapida evoluzione dei mercati, ha creato nuovi scenari di business caratterizzati da un più ampio parco clienti, ma anche da un numero sempre maggiore di competitor. È dunque emersa l’impellente necessità di adeguare rapidamente strategie e tattiche aziendali, anche a livello operativo, per garantire il successo delle imprese.
Affinche’ il processo di decision-making conduca a risultati affidabili e sensati è necessario che il decisore analizzi grandi quantità di dati, allo scopo di trarne informazioni da interpretare sulla base della propria conoscenza di dominio. D’altro canto, la crescente disponibilità di risorse tecnologiche finalizzate alla memorizzazione, consultazione e condivisione di dati elettronici, aziendali e non, ha reso estremamente complicata l’estrazione di informazioni che siano davvero rilevanti ai fini strategici.
In tale scenario, il supporto alle decisioni computerizzato ha assunto un ruolo rilevante, riuscendo a sopperire ad alcuni limiti, naturali, della capacità umana di gestire il processo di problem-solving.
Alla metà degli anni Novanta, il Gartner Group [1] conia il termine Business Intelligence per indicare, in ambito metodologico e tecnologico, l’evoluzione dei sistemi di supporto alle decisioni [2], il cui obiettivo è il monitoraggio del dominio di business allo scopo di individuare eventuali problemi, potenziali ed opportunità. La BI è una combinazione di software, database, strumenti analitici e metodologie finalizzati a “deliver the right information at the right time in the right place”. L’obiettivo è fornire ai decisori aziendali gli input sulla base dei quali procedere alla formulazione di strategie e tattiche efficaci e vantaggiose per l’azienda. La strategia che viene adottata consiste nel trasformare i dati aziendali in informazione aggiornata e accurata a supporto dei processi decisionali.
Figura 1 – Piramide della conoscenza [3]
Tra i sistemi di supporto alle decisioni, i sistemi di Data Warehousing sono quelli su cui si è maggiormente focalizzata l’attenzione sia nel mondo accademico che in quello industriale. Il Data Warehousing [2] è l’intero processo che estrae da sorgenti, eterogenee e strutturate, i dati di interesse, li trasforma, li integra e li ripulisce da errori e inconsistenze, li inserisce nel Data Warehouse, un contenitore che permette di memorizzare i contenuti di estese, eterogenee e variegate fonti di dati che vengono poi utilizzati per rispondere alle interrogazioni di tipo OLAP effettuate dagli utenti.
Per anni le decisioni aziendali sono state prese sulla base delle analisi effettuate solo sulla parte strutturata dei dati disponibili, ma il principale mezzo per diffondere informazioni e conoscenza, tuttavia, è quello del testo. In particolare si ritiene che circa l’80% delle informazioni di qualunque organizzazione sia racchiusa in documenti non strutturati o semi-strutturati [4]. In genere il corpora documentale a disposizione di un’azienda risulta particolarmente voluminoso ed è caratterizzato, oltre che da fonti interne (e-mail, documenti, formati XML, spreadsheet, file PDF, immagini, video, file audio etc.) anche da fonti esterne quali pagine web, basi documentali di fornitori/clienti accessibili, etc.
Appare evidente che limitare l’analisi alla sola parte strutturata dei dati, come è stato fino ad ora effettuato, rischia di far perdere un’elevata percentuale di conoscenza potenzialmente utile.
Figura 2 – Document Warehousing.
Attualmente, una delle maggiori difficoltà è rappresentata dalla modesta capacità di recuperare informazioni di interesse nell’ambito del dominio di analisi e collegarle e sintetizzarle anche a causa dei vastissimi volumi documentali in gioco. Inoltre, l’analisi manuale di documenti (nel senso di analisi da parte dell’essere umano e quindi condotta in maniera non automatica) richiede un significativo lavoro di lettura e codifica del contenuto testuale dei documenti, essendo un processo lento e soggetto a errori.
In tale contesto, il tradizionale Data Warehouse non si presta più a rappresentare una adeguata base di dati per la realizzazione di attività di Business Intelligence che siano text-oriented. Si rende necessaria l’introduzione di sistemi di gestione dei dati che includano sia le informazioni semantiche relative ai documenti che le relazioni tra i documenti e i raggruppamenti degli stessi.
Tutto ciò porta alla definizione di Document Warehousing [4] con cui si intende il sistema software di analisi e condivisione dei dati non strutturati estratti dai sistemi informativi aziendali, o di dominio, per poi utilizzarli al fine di rispondere alle complesse interrogazioni di analisi formulate dagli utenti mediante strumenti user-friendly.
Descrizione del sistema di Document Warehousing
Poiche’ di solito un documento è caratterizzato da molti concetti diversi tra loro, esso può essere inteso come intrinsecamente multidimensionale. Si introduce, allora, il Document Warehousing [4] che, analogamente a quanto si fa per la tradizionale analisi dei dati strutturati, permette di effettuare interrogazioni multidimensionali allo scopo di estrarre informazioni da ampie basi documentali.
Il documento continuerà a rimanere nella sorgente di origine e nel Document Warehouse verranno memorizzate tutte le informazioni semantiche e di sintesi relative al contenuto del documento, e un puntatore al documento stesso; in altre parole, nel Document Warehouse non viene caricato il documento ma solo il puntatore e le informazioni estratte da esso. In questo modo non solo si avrà un notevole risparmio di memoria, ma si metterà a disposizione degli utenti uno strumento di analisi avanzata che permette di effettuare interrogazioni multidimensionali su grandi moli di dati.
Inoltre, integrando le diverse sorgenti di dati testuali, il Document Warehouse rappresenta la sorgente di dati ideale su cui effettuare le attività di Text Mining, così come il Data Warehouse costituisce la fonte ideale di dati per effettuare il Data Mining.
Figura 3 – Descrizione del sistema di Document Warehousing.
Le componenti principali (figura 3) che caratterizzano il sistema di Document Warehousing sono:
- il Document Warehouse (DW), ossia la base di dati che si presta all’esecuzione di interrogazioni multidimensionali e la cui progettazione è caratterizzata dalla definizione del modello concettuale e del relativo modello logico, dalla creazione dello schema di fatto e dello schema a stella associato e dalla definizione dell’ipercubo dei metadati;
- l’applicazione software per l’interrogazione multidimensionale che comprende l’interfaccia di interrogazione OLAP, che si basa sulla semantica rappresentata nell’ipercubo dei metadati;
- l’applicazione per l’alimentazione del Document Warehouse che si basa sulla tecnologia dell’ETL testuale (Extract, Transform, Load), che consente di estrarre informazioni strutturate da sorgenti non strutturate.
Document Warehouse
Analogamente al data Warehouse, gli elementi essenziali del Document Warehouse sono fatto, misure, dimensioni, dettagliatemente descritti in [5] e qui ripresi brevemente:
- Un fatto è un concetto di interesse e tipicamente modella un insieme di eventi; è essenziale che abbia aspetti dinamici, ovvero evolva nel tempo.
- Una misura è una proprietà numerica di un fatto e ne descrive un aspetto quantitativo e di interesse per l’analisi.
- Una dimensione è un proprietà con dominio finito di un fatto e ne descrive una coordinata di analisi.
Seguendo lo standard per il Data Warehouse, la metodologia da seguire per la progettazione di un Document Warehouse è caratterizzata dalle seguenti fasi [5]:
- Analisi e riconciliazione delle sorgenti
- Analisi dei requisiti
- Progettazione concettuale
- Progettazione logica
- Progettazione dell’alimentazione
- Progettazione fisica
Anche nel caso dei dati testuali la progettazione concettuale e quella logica si articolano nella creazione dello schema di fatto e dello schema a stella associato [6]; le dimensioni possono essere individuate dalle keywords estratte dal documento e che ne rappresentano il contenuto; inoltre ogni proprietà o metadato di un file di testo può rappresentare una dimensione. Infine, se i documenti sono organizzati in categorie predefinite, la gerarchia di ogni categoria può essere considerata come una dimensione.
Le dimensioni, quindi, si possono distinguere nei tipi [4] che riportiamo di seguito.
Dimensione ordinaria
La dimensione ordinaria è costituita da un insieme di keyword estratte dal documento, in cui può essere sintetizzato il contenuto del documento stesso. Una dimensione ordinaria può contenere, ad esempio, tutte quelle parole che sono proprie del dominio di applicazione, ritenute ad alto contenuto informativo e che rappresentano il contenuto dei documenti di input; queste parole devono essere, inoltre, organizzate in una struttura gerarchica.
Dimensione di categoria
Contiene le parole corrispondenti ai nodi di una gerarchia utilizzata per classificare i documenti. Ad esempio, i documenti potrebbero essere classificati in base agli argomenti di cui trattano e che possono essere organizzati gerarchicamente. La categorizzazione dei documenti di input può essere effettuata anche sulla base di tassonomie proprie del dominio di applicazione; in quest’ultimo caso i nodi della tassonomia possono essere usati per popolare una dimensione di categoria.
Dimensione di metadati
La dimenzione dei metadati contiene le parole relative alle proprietà del file documentale o ai metadati. Per la scelta dei metadati uno standard a cui è possibile rifarsi è quello del Dublin Core Metadata [7]; si tratta di un sistema di metadati costituito da un nucleo di elementi essenziali ai fini della descrizione di qualsiasi materiale digitale accessibile via rete informatica. Esso è stato concepito proprio allo scopo di consentire agli autori di effettuare direttamente in modo standardizzato la descrizione di risorse rese disponibili sulla rete, senza le mediazione di un’agenzia catalografica.
Proposto nel dicembre 1996, il Dublin Core Metadata era costituito da quindici elementi di base e si è poi esteso anche a sottoelementi, pur mantenendo, nonostante gli sviluppi, una struttura stabile. Gli elementi di base sono:
- titolo
- autore o creatore
- soggetto e parole chiave
- descrizione: descrizione testuale del contenuto della risorsa, incluso un eventuale abstract;
- editore: l’entità responsabile della diffusione della risorsa nella sua forma presente;
- altro responsabile: persona o ente che ha contribuito intellettualmente;
- data: data in cui la risorsa à stata resa disponibile nel formato AAAA-MM-GG;
- tipo di risorsa: la categoria cui appartiene la risorsa, secondo una lista attualmente in sviluppo;
- formato: il formato dei dati, usato per identificare software e hardware necessari per utilizzare la risorsa; è in corso di sviluppo una lista di formati;
- identificatore della risorsa: stringa di caratteri o numero univoci di identificazione della risorsa: ad esempio l’URL o l’URN, quando sarà sviluppato;
- fonte: una stringa o un numero univoci di identificazione la fonte da cui la risorsa è derivata;
- lingua: lingua del contenuto della risorsa;
- relazione: esprime la relazione della risorsa con altre risorse; ancora in sviluppo;
- copertura: caratteristiche spaziali e/o temporali della risorsa; ancora in sviluppo;
- diritti: un link a una notizia di copyright o di diritti d’autore della risorsa; ancora in sviluppo;.
Nella figura 4, Title, Creator, Date e Rights possono essere tutti considerati come dimensioni di metadati.
Figura 4 – Esempio di star schema per un Document Warehouse [4].
Individuate le dimensioni, esse vengono utilizzate per la creazione dello schema di fatto che è concettualmente rappresentato come un ipercubo multidimensionale, le cui componenti base sono dette celle [4]. Ogni cella contiene gli indici dei documenti corrispondenti alla specifica combinazione dei valori delle dimensioni che individuano (coordinate) la cella stessa. Gli indici includono i puntatori ai documenti, gli insiemi di keywords, valori delle misure etc. L’ipercubo, quindi, non necessita di spazio per memorizzare il contenuto del documento proprio perche’ contiene un puntatore al file che può essere usato per rintracciare il documento originale.
Nella figura 5 viene presentato un esempio di ipercubo dei metadati, dove sono state scelte come dimensioni l’autore degli articoli scientifici che costituiscono il set documentale di input, la loro data di pubblicazione e le keywords estratte dal loro contenuto.
Figura 5 – Esempio di ipercubo dei metadati.
Progettazione logica del Document Warehouse
La fase di progettazione logica del Document Warehouse permette di definire lo schema logico a partire dallo schema concettuale, appoggiandosi a dei possibili modelli come il Relational On-Line Analytical Processing (ROLAP), che utilizza il modello relazionale per la rappresentazione dei dati multidimensionali. I sistemi ROLAP permettono la modellazione del Document Warehouse mediante l’utilizzo degli schemi a stella, composti principalmente dalle dimension table e dalla fact table. La dimension table è un insieme di relazioni, ciascuna corrispondente a una dimensione; la fact table è invece una relazione che importa le chiavi delle dimension table. In generale, la fact table può essere composta dai seguenti attributi [4]:
- Una chiave composta, costituita da un insieme di chiavi esterne che puntano alle dimensioni.
- Attributi usati per ricavare le misure. Il conteggio dei documenti può essere considerato come la misura di default in un ipercubo. Un’altra possibile misura può essere definita come la frequenza delle keywords.
- Una colonna Document_ID che costituisce l’identificatore del documento e rappresenta una chiave esterna alla dimensione S che contiene tutti gli identificativi dei documenti con i corrispondenti file path.
Inoltre, sia nelle dimension che fact table, possono essere inclusi degli eventuali attributi descrittivi, ossia attributi che contengono informazioni aggiuntive non utilizzabili per l’aggregazione.
Il modello relazionale non gestisce i concetti di dimensione, misura e gerarchia, quindi si rende necessario utilizzare schemi specifici allo scopo di traslare il modello multidimensionale in termini di attributi, relazioni e vincoli di intergrità.
Analisi multidimensionale
L’ambiente di Document Warehousing si basa sulla tecnologia OLAP per l’analisi multidimensionale, consentendo così di gestire un ampio numero di fattori interdipendenti che tipicamente sono coinvolti in un problema complesso. Il sistema mette a disposizione uno strumento di facile utilizzo per l’utente, che può esplorare i dati a diversi livelli di dettaglio, dinamicamente, ricercando informazioni che altrimenti sarebbe complicato individuare. L’utente, quindi, attraverso una interfaccia user-friendly, può effettuare sofisticate interrogazioni utilizzando il linguaggio MultiDimensionaleXpression (MDX) che presenta analogie con il linguaggio SQL, ma a differenza di quest’ultimo permette di gestire un numero arbitrario di dimensioni sia sulle righe che sulle colonne [8].
Gli strumenti OLAP utilizzano il paradigma dell’ipercubo [4], che permette agli utenti di navigare i documenti mediante l’uso degli operatori tipici dell’analisi multidimensionale [6]:
- Dicing: riduce l’insieme dei dati oggetto di analisi attraverso la formulazione di un criterio di selezione.
- Drill-down: diminuisce l’aggregazione dei dati in un cubo introducendo un ulteriore livello di dettaglio.
- Drill-through: è l’operatore che, effettuata una interrogazione OLAP, consente di visualizzare la parte di fact table corrispondente alla fetta o alla porzione di cubo selezionata.
- Pivoting: comporta un cambiamento nelle modalità di presentazione del cubo con l’obiettivo di analizzare le stesse informazioni sotto un diverso punto di vista.
- Roll-up: è l’operatore OLAP che aggrega un insieme di eventi in un cubo diminuendone il livello di dettaglio.
- Slicing: riduce la dimensionalità di un cubo fissando un valore per una delle sue dimensioni.
Figura 6 – Operatori di drill-down e roll-up.
ETL Testuale
L’analisi multidimensionale non può essere applicata ai dati testuali grezzi: è necessario realizzare uno strato di alimentazione del Document Warehouse basata sulla tecnologia dell’ETL testuale [9]. Con il termine ETL (Extract, Transform, Load) si indica il processo di estrazione, trasformazione e caricamento dei dati in un sistema. L’ETL testuale, che costituisce una delle fasi più delicate dell’intero processo di analisi dei dati non strutturati, consente di estrarre informazioni strutturate da sorgenti non strutturate per alimentare il Document Warehouse. È in questa fase, quindi, che i documenti vengono classificati, cioè associati a nodi di gerarchie che costituiscono le dimensioni di categorie, e vengono estratti i metadati per alimentare le dimensioni di metadati. I metadati, inoltre, possono essere utilizzati anche per effettuare una ulteriore classificazione dei documenti di input. Mediante tecniche di Natural Language Processing (NLP) e Text Processing, poi, si estraggono le keyword che andranno ad alimentare le dimensioni ordinarie (figura 7).
Figura 7 – ETL testuale.
La fase più complessa e impegnativa dell’ETL testuale è rappresentata dall’integrazione testuale, che consente di passare dal testo grezzo a quello integrato. La prima attività da fare nell’integrazione delle sorgenti non strutturate è l’analisi dei documenti, che possono essere disponibili in differenti formati elettronici (.doc, .pdf, .html, e-mail etc.) oltre che cartaceo e in molteplici lingue: per essere integrato, il testo grezzo deve essere prima letto.
Il processo di integrazione testuale, che si identifica sostanzialmente con le attività di Text Processing, permette di avere una rappresentazione vettoriale del documento: il documento, cioè, viene rappresentato solamente dalle parole che vengono ritenute di rilevante contenuto informativo. Le varie attività di text processing vengono eseguite per integrare le informazioni estratte dalle sorgenti ricorrendo alla rappresentazione integrata di concetti e parole e, contemporaneamente, per ridurre il numero di parole rappresentative del testo, senza però perdere in significato della rappresentazione.
Figura 8 – Testo grezzo e testo integrato.
Le fasi di integrazione, estrazione dei metadati e categorizzazione, generalmente non sono dipendenti l’una dall’altra e possono anche essere eseguite contemporaneamente (figura 7). In alcuni casi, però, può risultare necessario eseguire per prima l’integrazione in modo da facilitare gli altri due processi; ad esempio quando si decide di effettuare una classificazione automatica dei documenti, allora il processo di categorizzazione deve seguire quello di integrazione. Inoltre si potrebbe decidere di far precedere l’estrazione dei metadati alla categorizzazione, magari per effettuare una ulteriore classificazione dei documenti sulla base dei metadati estratti.
Di seguito vengono descritte le principali funzionalità di Text processing che caratterizzano il processo di integrazione testuale [10].
Tokenization
Consiste nella divisione del testo sorgente in unità chiamate token di cui ciascuna può essere una parola, un numero, un segno di punteggiatura, una data, una frase etc.
Stopwords
Le stopwords sono parole che, data la loro elevata frequenza in una lingua, sono di solito ritenute poco significative in una ricerca. Esse, infatti, sono parole d’intralcio che non aggiungono nulla all’elaborazione analitica, cioè sono parole a basso contenuto informativo. Fra queste, ad esempio, si trovano articoli, preposizioni e congiunzioni.
Startlist
Durante il processo di integrazione potrebbe essere molto utile avere una startlist, costituita da un elenco di parole da considerare nell’analisi dei documenti. Tali parole potrebbero avere una frequenza di occorrenza molto bassa e per questo potrebbero essere eliminate durante le fasi di text processing, ma avendo un contenuto informativo molto alto vanno conservate.
Word stemming
Con questa espressione si indica il processo che estrae la radice di una parola, rimuovendo affissi e desinenze così che una parola possa essere messa in relazione con un’altra anche se il loro spelling non è esattamente lo stesso.
Lemmatization
È il processo che cerca il lemma a partire da una parola con desinenza. Rispetto allo stemming deve risolvere in più il compito di disambiguare tra le diverse forme base cui può corrispondere una forma flessa.
Spelling alternativi
Alcuni nomi o parole possono essere scritti in molti modi diversi. Può risultare molto utile individuare parole scritte diversamente, poiche’ hanno spelling alternativi, ma che si riferiscono alla stessa cosa o allo stesso nome, allo scopo di ricondurle a un unico rappresentante.
Sinonimi
La riduzione dei sinonimi a un termine comune permette di avere un vocabolario comune e quindi di effettuare una ricerca significativa. Ci sono due modi per effettuare la risoluzione dei sinonimi, uno dei quali consiste nella sostituzione: quando viene individuato un sinonimo, esso è sostituito dalla forma più comune o più generale della parola. L’altro modo di risoluzione dei sinonimi consiste nella concatenazione, cioè i sinonimi sono concatenati alla loro parola originale.
Parole composte e frasi
Non è sufficiente elaborare un processo di analisi testuale che prenda in considerazione solo le singole parole, ma è necessario considerare anche espressioni di più parole o intere frasi, per non perdere così la struttura del documento. Considerando solo le singole parole, ad esempio, si rischia di perdere le collocation, cioè quelle espressioni, dotate di significato, che consistono di due o più parole e corrispondono a un uso idiomatico come l’espressione “da cima a fondo”.
Standardizzazione delle date
Può risultare utile, in fase di text processing, ricondurre tutte le date ad un formato comune.
Conversione da testo a numeri e viceversa
Relativamente al processo di analisi che si decide di condurre, può risultare conveniente convertire i numeri scritti come testo, trovati all’interno dei documenti, in formato numerico o viceversa.
Gli operatori descritti sono finalizzati a integrare le informazioni estratte dalle sorgenti ricorrendo alla rappresentazione integrata di concetti e parole e, contemporaneamente, a ridurre il numero di parole rappresentative del testo, senza però perdere in significato della rappresentazione.
Per non perdere la struttura del documento si usano, invece, le funzionalità più avanzate dei seguenti operatori
Risoluzione omografica
Con questa terminologia si intende la sostituzione di un acronimo con l’espressione corrispondente. Poiche’ uno stesso acronimo può essere usato per indicare diverse parole, anche la risoluzione omografica, come il lemmatization, presuppone un processo di disambiguazione.
Part-of-speech tagging
Consiste nell’etichettare mediante tag, sulla base del contesto della frase, ogni parola con la sua corretta parte del discorso, decidendo quindi se un termine è un articolo, o un nome, o un verbo, o un aggettivo etc. Il tagging è un caso di limitata disambiguazione sintattica, in quanto, nel caso di parole che appartengono a più categorie sintattiche, determina quale di queste categorie è la più plausibile in un contesto dato.
Esclusione della negatività
Quando c’è una negazione, può risultare conveniente rimuovere dall’indicizzazione le parole che seguono l’espressione negativa.
Entity extraction
Con questa espressione si intende l’estrazione di concetti o di entità, come ad esempio persone, luoghi, organizzazioni. Diversi sono gli approcci utilizzati: uno di questi è basato su liste e dizionari, cioè vengono utilizzati elenchi predefiniti di persone, luoghi, organizzazioni. Un altro approccio è, invece, quello che utilizza le regular expressions, cioè regole predefinite che consentono di individuare all’interno di un documento indirizzi e-mail, conti bancari, date, codici fiscali ecc. L’entity extraction, inoltre, può essere realizzata effettuando un’analisi semantica che permette di riconoscere le entità in base al contesto delle frasi. Infine, un altro modo per individuare concetti all’interno dei documenti è quello che fa uso di algoritmi di apprendimento automatico.
Data Warehousing e Document Warehousing
L’ambiente di Document Warehousing rappresenta l’evoluzione del Data Warehousing verso l’analisi dei dati non strutturati, per cui numerose sono le analogie tra i due processi, che costituiscono entrambi sistemi avanzati di analisi che permettono di interrogare mediante tecnologia OLAP, in maniera user-friendly, grandi quantità di dati ottenendo informazioni di sintesi.
Analogamente a quanto avviene per i dati strutturati, anche la progettazione del Document Warehouse è caratterizzata dalla definizione del modello concettuale e del relativo modello logico, dalla creazione dello schema di fatto e dello schema a stella associato e dalla definizione dell’ipercubo dei metadati. Il procedimento utilizzato per costruire l’ipercubo dei documenti, però, si differenzia da quello usato nel processo di Data Warehouse proprio nella creazione dell’indice di documento rispetto a una dimensione ordinaria. Il calcolo di una dimensione in un cubo di dati strutturati, infatti, risulta più semplice essendo un calcolo numerico. Per individuare, invece, un indice di documento, si deve analizzare il contenuto del documento per individuare le keyword in ogni dimensione ordinaria.
Un’altra analogia con il Data Warehousing è rappresentata dal fatto che anche l’ambiente di Document Warehousing si basa sulla tecnologia OLAP per l’analisi multidimensionale, mettendo a disposizione una interfaccia di facile utilizzo, che consente agli utenti di esplorare i dati a diversi livelli di dettaglio, usando gli operatori tipici OLAP.
La principale componente che differenzia il Document Warehousing dal Data Warehousing è rappresentata dalla fase di ETL (Extract, Transform, Load), durante la quale le sorgenti vengono integrate. Nel caso dei dati strutturati, il raggiungimento del dato integrato necessita di un processo di riconciliazione che comporta la ricognizione, ossia l’esame approfondito degli schemi locali associati alle sorgenti, la normalizzazione, che permette di correggere gli schemi locali, e l’integrazione che, individuando corrispondenze tra i concetti degli schemi locali, consente di creare un unico schema globale. Nel caso dell’ETL Testuale, invece, il processo di integrazione si identifica essenzialmente con le tecniche di Text processing ed NLP che consentono di estrarre dai testi di input keyword e concetti e di rappresentare i documenti attraverso le parole ritenute di rilevante contenuto informativo.
Conclusioni
In questo primo articolo sul Document Warehousing viene fornita un’introduzione all’argomento, l’architettura di alto livello del sistema e la descrizione della progettazione del Document Warehouse, con un approfondimento della fase di alimentazione basata sul paradigma dell’ETL testuale (Extraction, Transformation, Load). Nell’articolo vengono, inoltre, evidenziate analogie e differenze con il Data Warehousing.
Nel prossimo articolo verrà descritto un case-study relativo al dominio dell’Health Management per sistemi aerospaziali, nell’ambito del quale è stato realizzato un prototipo di sistema di Document Warehousing basato su tool open source.
Riferimenti
[1] Gartner Group
[2] Mirco Gamberini, “Data Warehouse – I parte: Introduzione e applicazioni nel mondo reale”, MokaByte 154, settembre 2010
[3] Cineca
[4] Frank S.C. Tseng, Annie Y.H.Chou, “The concept of Document Warehousing for multi-dimensional modeling of textual-based Business Intelligence”, Decision Support System 42, pag. 727-744, 2006
[5] Vittoria Caranna, “Data Warehouse – III parte: Definiamo un modello progettuale per DWH”, MokaByte 158, gennaio 2011
[6] Golfarelli M., Rizzi S., “Data Warehouse: teoria e pratica della progettazione”, McGraw-Hill, 2e’ ed, 2006
[7] Dublin Core
[8] “Tutorial: Introduction to Multidimensional Expressions (MDX)”, 12-04-2011
[9] W.H. Inmon, A. Nesavich, “Tapping into unstructured data. Integrating Unstructured Data and Textual Analytics into Business Intelligence”, Prentice Hall, 2007
[10] Dulli S., Polpettini P., Trotta M., “Text Mining: teoria e applicazioni”, FrancoAngeli, 2004
[11] Mirco Gamberini, Vittoria Caranna, “Data Warehouse – II parte: Tecnologie abilitanti alla Business Intelligence”, Mokabyte 157, dicembre 2010