by Claudia Imhoff

Dicembre 2004

Il Data Store Operativo: un lavoro di martello

Osservarli mentre imparano l’arte di usare un martello può anche risultare piacevole, almeno inizialmente. Poi, i piccoli si rendono conto che può essere divertente prendere a martellate altri oggetti nel loro ambiente. Come il gatto, il cane, il tavolino del salotto e perfino i fratellini. Bonk, bonk!
A questo punto, insegniamo loro che i martelli vanno bene in alcune situazioni, ma non in altre.
A tale proposito, il Data Store Operativo (Ods, ovvero Operational Data Store) presenta alcune importanti similitudini con il martello. Il concetto di Ods è in uso da tempo e sta guadagnando in accettazione e credibilità come strumento. Ma, sfortunatamente, l’Ods viene utilizzato in casi nei quali un altro strumento sarebbe probabilmente più adatto.
Per ottenere il massimo risultato dall’uso di uno strumento, chi lo utilizzi deve comprenderne le funzioni. Naturalmente, anche l’esperienza accumulata con il suo uso costituisce un vantaggio. Per aiutarvi a ottimizzare le prestazioni del vostro Ods, ne ho indicato nel seguito le funzionalità principali, con l’aggiunta delle mie esperienze di martellamento.
 
Le funzionalità dell’Ods
Ogni strumento è definito dalle sue funzionalità e l’Ods non costituisce un’eccezione. Inoltre, strumenti simili si distinguono gli uni dagli altri per le loro funzionalità e caratteristiche univoche. Per esempio, mazzuoli di legno, accette, mazze e picconi possono essere tutti assimilati a un martello, ma ciascun attrezzo ha la sua specificità ed è utile per determinate applicazioni, soprattutto se in mano a una persona esperta nel suo utilizzo.
Quando gli strumenti in discussione sono in un certo senso intangibili, come nel caso di un Ods, le differenze sembrano essere solamente una questione di semantica, ma ne esistono invece di reali, specialmente per quanto riguarda l’utilizzatore esperto (per altre differenze di terminologia, vedi la barra laterale nella Corporate Information Factory).
Queste sono le principali funzionalità caratteristiche di un Ods:
Orientato al soggetto (subject oriented). Gli Ods sono progettati e organizzati attorno ai principali soggetti dell’impresa, come Cliente oppure Prodotto. Non sono progettati al servizio di applicazioni o funzioni specifiche, come l’acquisizione degli ordini oppure gli incassi.
Integrato. Gli Ods rappresentano un’immagine collettivamente integrata di dati soggettivi e che vi vengono inseriti potenzialmente da ogni sistema o applicazione operativa. Se è compreso il soggetto Cliente, allora tutte le informazioni che riguardano il Cliente disponibili per l’impresa sono candidate a essere incluse nell’Ods.
Valore attuale. Un Ods riflette il contenuto corrente del sistema fonte dei dati che contiene. Il termine corrente può assumere definizioni differenti per Ods diversi, in base alle esigenze che ne hanno richiesto l’implementazione (vedi l’ultimo articolo di Fryman e Montanari). Un Ods non dovrebbe contenere immagini o valori diversi da qualunque cosa sia definita come corrente. In altre parole, se corrente significa un periodo di contabilizzazione, allora l’Ods non deve contenere dati riferiti a più di un periodo. I dati storici debbono essere archiviati o comunque spostati nel data warehouse per le analisi successive.
Volatile. Poiché un Ods contiene i dati correnti, è soggetto a modifiche con una frequenza che deve supportare la definizione di corrente. Ovvero, viene aggiornato per riflettere i cambiamenti che avvengono realmente nel sistema che lo alimenta. Perciò, richieste identiche effettuate in momenti diversi, forniranno verosimilmente risultati differenti perché i dati di riferimento sono stati nel frattempo aggiornati con modifiche.
Dettagliato. La definizione di dettagliato dipende anche dal problema dell’impresa da risolvere utilizzando l’Ods. La granularità dei dati all?interno dell?Ods può o non può risultare corrispondente a quella del sistema operativo che costituisce la fonte dei dati.
 
Esperienza nel martellare con l’Ods
Consideriamo un sistema di gestione delle informazioni dell’impresa, del tipo di quello contenuto all’interno dell’infrastruttura di supporto ai vostri Sistemi Informativi (Corporate Information Factory – Figura 1).
L’ambiente proprietario è definito Business Operations, con riferimento all’operatività dell’impresa. Tutto questo comprende sistemi applicativi di uso giornaliero, orientati alle transazioni e raggruppati per funzioni o applicazioni, ciascuno indirizzato alla soluzione di problemi tattici dell’impresa.
L’ambiente successivo è chiamato Business Management, ovvero ambiente gestionale, ed è rappresentato dal dall’Operational Data Store. L’Ods integra i dati provenienti da molteplici fonti di Business Operations per la soluzione di problemi operativi comuni a più funzioni dell’impresa.
L’ambiente finale riguarda le strategie, ovvero i sistemi di Business Intelligence, per trarre indicazioni strategiche dai dati a disposizione dell’impresa. Quest’ultimo ambiente contiene il Data Warehouse e i Data Mart specializzati, in modo da consentire l’analisi temporale dei trend, dei modelli, delle eccezioni e così via .
La comprensione di questi ambienti rappresenta la chiave per evitare la confusione su quando e come utilizzare un Ods.
Ecco alcuni esempi di quando utilizzare e quando non utilizzare un Ods:
Applicazione corretta di un Ods #1:Reporting per aree di un soggetto. ?Sarebbe bello se riuscissi a esaminare un rapporto sul credito dalla Contabilità, un rapporto demografico dal Marketing, un rapporto sulle vendite dall’Amministrazione e un elenco degli ordini aperti dall’Acquisizione Ordini, tanto per avere un quadro completo di questo cliente.
Si tratta dell’espressione di una necessità molto comune. Tornando alle caratteristiche funzionali, si richiedono informazioni orientate al soggetto, integrate, aggiornate e dettagliate, tali da richiedere un meccanismo di aggiornamento basato su transazioni, in modo di garantire l’integrità e l’attualità dei dati.
Applicazione corretta di un Ods #2: Integrazione funzionale. ?Potremmo realmente incrementare la rotazione del magazzino dei componenti all’interno dello stabilimento di assemblaggio finale di Dallas, se riuscissimo a sincronizzare, a monte, la linea di produzione di Charlotte con quella di Atlanta.
Ancora una volta, la soluzione richiederà informazioni orientate al soggetto, integrate, aggiornate e dettagliate, ovvero un meccanismo di gestione dei dati basato sulle transazioni e destinato a mantenerne l’integrità e l’aggiornamento.
Applicazione errata di un Ods #1: Fonte unica per i dati del Data Warehouse. Prima di tutto, la questione semantica. Il dato è orientato al soggetto? Si. È integrato? Si. È dettagliato? Forse. È attuale? No. È volatile? No. In aggiunta, il problema per l?impresa non è di tipo operativo. Quindi, non stiamo parlando di un Ods.
Non è questione di una definizione errata, semplicemente non si tratta di un Ods. Quindi, l’aspetto pratico. Rappresentare i dati di un data warehouse può anche essere una buona idea e alcuni dei dati richiesti possono esistere solamente in un Ods, ma è molto improbabile che riusciate a porre in maniera efficiente tutti i dati originari del DW in un Ods per rappresentarli all’interno del data warehouse.
Applicazione errata di un Ods #2: L’Operational Data Store è usato come applicazione specifica di un dipartimento.
Esiste una grande confusione circa la differenza di un Ods dall’ambiente dei sistemi operativi e applicativi dell’impresa. Il modo migliore per spiegare tale differenza è di considerare l’Ods come un sistema onnicomprensivo, mentre un sistema di applicazione o di operatività risulta specifico per una funzione o per un dipartimento particolare.
Per esempio, se costruite un Ods per la gestione dei clienti, con l’obiettivo di ottenere una visione integrata di tutte le informazione relative a questi ultimi, molti dipartimenti e funzioni richiederanno di poter accedere a questo database. Marketing, vendite, fatturazione e forse amministrazione e finanza hanno sicuramente bisogno di accedere ai record integrati relativi ai clienti.
Confrontate questa soluzione a qualcosa di più specifico come un sistema di acquisizione degli ordini che, al contrario, contiene unicamente le informazioni necessarie a supportare la creazione e la gestione di un ordine. Questo è un insieme di dati destinati a una funzione specifica e a disposizione di un numero predeterminato di utenti. Sicuramente, non vi verrebbe mai in mente di inserire dati non necessari, così come non consentireste a tutti di accedere a questo sistema.
 
Una volta consapevoli di avere bisogno di un Ods?
Prima di partire con la realizzazione di un Ods, assicuratevi di disporre di buon modello dei dati dell’impresa. Per definizione, dovrete integrare i dati dell’impresa provenienti da aree e applicazioni funzionali multiple. Un modello dei dati di qualità elevata renderà molto più semplice il lavoro di comprensione e mappatura delle fonti dei dati provenienti da aree diverse
Non inserite ogni attributo di un’area soggetto nel vostro Ods, semplicemente perché il data warehouse può avere bisogno di tali dati. Usate solamente gli attributi che risultino rilevanti per risolvere i problemi operativi dell’impresa. Ricordate che ogni campo richiede un ammontare di tempo ?x? per l’estrazione, integrazione, depurazione, verifica ecc. dei dati. Se il vostro meccanismo di aggiornamento richiede modifiche immediate o quasi immediate, per avere successo dovrete estrarre pochi campi e tutti con un processo di acquisizione dei dati il più semplice possibile. Non rallentate l’intero processo includendo campi dei quali non avrete bisogno.
Usate un approccio iterativo. Identificate uno o più problemi operativi correlati e attribuite loro una priorità per la soluzione. Iniziate con quello che presenti limiti precisi e che consenta un forte ritorno sull’investimento. Quindi, suddividete il resto della lista in fasi, in un modo che risulti il più produttivo a fronte della vostra situazione.
 
Quando costruirlo e quando evitarlo
Stiamo ancora lavorando su molti vincoli di implementazione che riguardano questa nuova architettura e sono convinto che le relative caratteristiche, tecnologie, definizioni e così via, continueranno a evolvere nella misura in cui continueremo a imparare nel costruire questi sistemi critici e importanti.
Spero che la lettura di questo articolo vi abbia aiutato a comprendere meglio il concetto di Data Store Operativo (Ods), quando costruirlo, quando evitarlo e come stabilire se nel futuro dell’infrastruttura della vostra Corporate Information Factory ne dovrà esistere uno.