EDW: Data Warehousing e Business Intelligence

EDW è un insieme di strumenti per la realizzazione di applicazioni orientate alla gestione delle informazioni, con particolare enfasi su Data Warehouse (DW), Extract/Transform/Load (ETL) e Business Intelligence (BI).

L'obiettivo di EDW è quello di consentire la realizzazione rapida di applicazioni di questa categoria, garantendo possibilità di personalizzazione molto ampie anche a chi non sviluppa in Delphi (quindi fino all'utente finale, ove richiesto).

Il documento introduttivo  "Soluzioni per Data Warehousing e Business Intelligence con EDW"  spiega in dettaglio quali sono le aree applicative in cui EDW si rivela utile. Potete trovare dei case study esplicativi più avanti in questa pagina, nonché link a documentazione di taglio più tecnico nell'ultima sezione in fondo.

Perché EDW

Una volta c'era il problema di memorizzare in archivi informatizzati quanti più dati possibile su un certo aspetto del mondo reale. Ora la questione si è spostata su come interrogare in maniera efficace questi dati, correlarli, sintetizzarli, insomma fare in modo che risultino utili nei processi decisionali all'interno di un'azienda. Per fare questo occorre che i dati siano integrati, omogeneizzati, convalidati e trasformati in molti modi, e questo è ciò che un sistema di BI in generale, e un DW in particolare, aiutano a fare.

Elenchiamo ora i requisiti che hanno portato alla creazione di EDW, uno strumento che aiuta nella messa in opera di infrastrutture di BI.

  • Necessità di raccogliere dati da fonti eterogenee ed integrarli nel DW, trasformandoli, convalidandoli e correlandoli secondo necessità.

  • Possibilità di migliorare e certificare la qualità dei dati raccolti, applicando regole di consolidamento, normalizzazione e denormalizzazione, codifica e ricodifica.

  • Tempestività nella disponibilità dei dati e rapidità nella risposta alle query, ottenibili attraverso una progettazione intelligente dello schema del DW (i cui criteri sono ben diversi da quelli alla base di un database usato per attività transazionali).

  • Flessibilità, per adeguarsi ai mutamenti nell'organizzazione aziendale dei processi e dei flussi delle informazioni.

  • Competenza nelle specifiche aree di business: uno strumento, per quanto flessibile e sofisticato, non serve se non lo si sa sfruttare al meglio.

Funzionalità di EDW

Le applicazioni create con EDW offrono funzionalità che possiamo raggruppare in queste categorie:

  • ETL: estrazione, consolidamento, ripulitura, conversione, importazione nel database di dati provenienti da un gran numero di sorgenti eterogenee.

  • Navigazione tra i dati: esplorazione delle tabelle del DW (o di qualunque database) con funzionalità avanzate (come ricerche/filtri personalizzabili, lookup e relazioni master/detail) secondo un modello creato automaticamente a partire dallo schema del database.

  • Immissione e modifica dei dati: inserimenti, modifiche e eliminazioni, con possibilità di applicare regole personalizzate - anche complesse - sull'integrità dei dati.

  • Reportistica: integrazione di diversi motori di reporting (inclusa l'ottima suite gratuita OpenOffice.org) per la creazione di documenti semplici o complessi da esportare in vari formati o inviare/pubblicare con vari mezzi.

  • Analisi multidimensionale: creazione di “cubi” analitici interattivi con funzionalità avanzate di slicing, drill-down, rotazione, proiezione, analisi, grafici, estrazione dati e report.

Case study

EDW è stato usato fino ad ora in diversi progetti, e cresce e migliora con ciascuno di essi. Abbiamo in preparazione alcuni brevi case study di applicazioni significative sviluppate, da noi o da nostri clienti, con EDW. Non in tutti i casi abbiamo il permesso di pubblicare un case study, per motivi di riservatezza; comunque, leggendoli potrete rendervi meglio conto delle varie caratteristiche di EDW che sono risultate vincenti nei diversi progetti. I case study attualmente disponibili sono:

  • StatMaster, per la produzione di report statistici sugli ingressi alla Fiera di Milano.

Abbiamo diversi altri case study in preparazione, che aggiungeremo a breve.

Tecnologia

EDW funziona con diversi motori di database. Le applicazioni fino ad ora create con EDW lavorano con Firebird, Microsoft SQL Server e con tutti i database supportati dalle tecnologie ADO di Microsoft e DBExpress di Embarcadero. L'aggiunta del supporto per un nuovo database è un'operazione semplice e rapida in EDW.

Per chi sviluppa, il cuore di EDW è realizzato in Borland Delphi 2007 o Delphi 2010 per Win32. Non escludiamo la possibilità di rendere disponibile EDW, in futuro, per .NET o altre piattaforme, in base alle richieste. È possibile estndere EDW a livello di sorgente per ottenere un livello di personalizzazione totale; va comunque tenuto presente che buona parte delle attività necessarie a creare un'applicazione con EDW non richiede la conoscenza di Delphi né skill da sviluppatore esperto.

Il documento "Introduzione a EDW" contiene informazioni più dettagliate sulle tecnologie integrate in EDW.

Disponibilità

In Ethea usiamo EDW, abbinandolo alla nostra competenza in campo di BI, per sviluppare applicazioni verticali orientate all'analisi delle informazioni. Abbiamo quindi sviluppato EDW, e continuiamo a svilupparlo, primariamente come strumento da usare noi stessi.

È però nostra intenzione, come nel caso di InstantSolutions, rendere disponibile su licenza la tecnologia, per chi volesse sviluppare le proprie applicazioni EDW con i propri mezzi (eventualmente richiedendo supporto ad Ethea, che è in grado di fornirlo).

Download e documentazione

Abbiamo realizzato un'applicazione dimostrativa creata con EDW, che potete scaricare direttamente. L'applicazione contiene un piccolo database (Firebird embedded) di prova, nonché tutta la documentazione per sviluppatori (EDW Developer's Guide e EDW Reference, per il momento solo in lingua inglese, ma comprensibile) che vi potrà aiutare ad esplorare la demo e a farvi un'idea dell'architettura di EDW.

Ethea utilizza le tecnologie