Analisi comparativa delle piattaforme Open Source per la Business Intelligence

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Analisi comparativa delle piattaforme Open Source per la Business Intelligence"

Transcript

1 ALMA MATER STUDIORUM - UNIVERSITA DI BOLOGNA SEDE DI CESENA FACOLTA DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN SCIENZE DELL INFORMAZIONE Analisi comparativa delle piattaforme Open Source per la Business Intelligence Relazione finale in: Laboratorio di Basi di Dati Relatore Presentata da Chiar.mo Prof. Matteo Golfarelli Mattia Camporesi Sessione III Anno Accademico 2007/2008

2

3 Indice Indice INTRODUZIONE BUSINESS INTELLIGENCE E SISTEMI OPEN SOURCE COS'È UN DATA WAREHOUSE ARCHITETTURA E MODULI PRINCIPALI DI UN DATA WAREHOUSE Reportistica Analisi OLAP Dashboard PRINCIPALI PIATTAFORME COMMERCIALI DI BUSINESS INTELLIGENCE Microstrategy Il resto del mercato SISTEMI OPEN SOURCE Verso un mondo Open Source Un nuovo modello di business Definizione formale di Open Source Le Licenze LE PIATTAFORME OPEN SOURCE PER LA BUSINESS INTELLIGENCE SPAGOBI Architettura Il modello dei Metadati Reportistica Analisi OLAP Dashboards ETL Funzionalità e informazioni aggiuntive PENTAHO Architettura Il dominio dei Metadati Reportistica Analisi OLAP Dashboards ETL Funzionalità e informazioni aggiuntive JASPERSOFT Architettura Reportistica Analisi OLAP ETL Funzionalità ed informazioni aggiuntive LE PIATTAFORME A CONFRONTO ARCHITETTURA FUNZIONALITÀ ANALISI COMPARATIVA DEI REQUISITI IL VALORE AGGIUNTO PRINCIPALI LACUNE DA COLMARE...80 CONCLUSIONI... 83

4 BIBLIOGRAFIA RINGRAZIAMENTI... 87

5 Introduzione Introduzione Negli ultimi dieci anni si sono diffuse tecnologie di analisi e raccolta dati che costituiscono nel loro insieme il concetto, molto più ampio, di Business Intelligence. Se prima la disciplina trovava interesse tipicamente negli studi teorici o in organizzazioni di grandi dimensioni o con esigenze del tutto particolari, recentemente la diffusione dei data warehouse e la crescente disponibilità di una sempre più grande mole di dati ha ampliato il numero di organizzazioni interessate all'introduzione di una piattaforma di Business Intelligence. L'allargamento di questa richiesta si scontra però con la realtà di un mercato dove i prodotti di questo tipo sono prevalentemente proprietari e dai costi decisamente elevati e non sempre idonei per una azienda di medio o piccole dimensioni. Tuttavia a fronte di questa domanda crescente, sono nati una serie di strumenti Open Source specializzati nella creazione di pressochè tutte le tipolgie di documenti analitici, quali ad esempio Report, Analisi OLAP, Dashboard e procedure ETL. Questi però sono moduli a sé stanti, indipendenti gli uni dagli altri e che quindi non permettono all'utente di avere quella visione globale e quella consistenza informativa che solo una piattaforma di Business Intelligence può offrire. Fortunatamente, sono di recentissima creazione una serie di piattaforme Open Source, che di fatto hanno aperto le porte della Business Intelligence anche alle piccole imprese caratterizzate da esigenze e capitali limitati. Queste prodotti stanno diventando una realtà sempre più importante per il mercato, anche se ancora non c'è molta chiarezza per quel che riguarda la gamma di funzionalità offerte e l effettiva affidabilità degli strumenti. Scopo di questa tesi è appunto quello di valutare tre prodotti Open Source per la Business Intelligence, quali SpagoBI (prodotto da Engineering Ingegneria Informatica), PentahoBI (prodotto dalla software house Pentaho) e JasperSoft (prodotto dall'omonima software house), con l'obiettivo di compiere una ricognizione degli

6 Mattia Camporesi aspetti architetturali e funzionali, in modo da poter delineare nello specifico le varie ed effettive caratteristiche delle tre piattaforme prese in esame. La tesi include anche un'analisi comparativa, che verrà effettuata sulla base di una griglia di requisiti che noi crediamo un buon prodotto di Business Intelligence debba soddisfare ed utilizzando un caso di studio che permetta di sottoporre i sistemi ad un opportuno carico di lavoro, valutandone la reale usabilità. La tesi è organizzata in tre capitoli: Nel primo capitolo verrà approfondito il concetto di Business Intelligence ed in particolare quello di data warehouse. Verranno a tal proposito esaminate l'architettura tipica \e quelli che possono essere considerati i moduli principali che caratterizzano un sistema di data warehousing. Nella seconda parte del capitolo troviamo invece una panoramica sui prodotti di Business Intelligence proprietari, ponendo maggiore attenzione su Microstrategy, una delle soluzioni tecnologicamente più avanzate ed integrate del settore. Nel secondo capitolo verranno prese in esame singolarmente le tre piattaforme Open Source oggetto di questo lavoro di tesi, ossia SpagoBI, PenathoBI e JasperSoft, cercando di approfondire maggiormente gli aspetti architetturali e funzionali e compiendo un'analisi, soprattutto in termini di utilizzabilità, dei vari moduli (ossia gli strumenti che mettono a disposizione per creare le varie tipologie di analisi) che le caratterizzano. Nel terzo ed ultimo capitolo troviamo invece un'analisi comparativa, dove le piattaforme verranno messe a confronto, dapprima dal punto di vista architetturale e funzionale, ed in seguito in risposta ad una griglia di requisiti che noi crediamo una buona piattaforma di Business Intelligence debba soddisfare. Chiude il capitolo una dissertazione su quelle che, secondo noi, sono le principali lacune da colmare nei prodotti esaminati.

7 Introduzione

8 Mattia Camporesi

9 Business Intelligence e Sistemi Open Source 1 Business Intelligence e Sistemi Open Source 1.1 Cos'è un Data Warehouse Con la Business Intelligence nasce l'esigenza da parte dei vertici aziendali di avere una visione sintetica e di insieme di quelle che sono le problematiche dell'impresa, senza però rinunciare ad arrivare ad un elevato livello di dettaglio. Per tale scopo non posso essere utilizzati i comuni database operazionali, in quanto estendere queste basi di dati pre-esistenti sarebbe proibitivo sia in termini di costo che di complessità dell'operazione. Risulta invece molto piu semplice e flessibile separare i database operazionali da un insieme di strumenti software con fini puramente analitici. Il database di destinazione per la raccolta di questi dati prende il nome di Data Warehouse. Un Data Warehouse è una collezione di dati, finalizzata a fornire un supporto al processo decisionale aziendale, che va ad affiancare i consueti database operazionali. Scopo di un Data Warehouse è quello di permettere alle aziende di effettuare analisi di tipo analitico sulle informazioni delle comuni basi di dati transazionali, trasformando i dati operazionali in conoscienza a supporto delle decisioni. Pertanto la costruzione di un sistema di data warehousing non comporta l'inserimento di nuove informazioni, ma la riorganizzazione di quelle esistenti [GOL05]. Più precisamente il Data Warehouse si alimenta e appoggia a più sorgenti dati, anche di natura diversa tra loro, fornendone una visione totalmente integrata, consistente e storicizzata. Infatti, in linea di principio, i Data Warehouse vengono aggiornati ad intervalli regolari con opportune procedure di alimentazione a partire 5

10 Mattia Camporesi dalle fonti dati operazionali e non subiscono mai operazioni di cancellazione, in questo modo sarà possibile effettuare analisi di tipo analitico e statistico con prospettive di alcuni anni. Da questo deriva la considerazione che i Data Warehouse si possono considerare delle basi di dati di sola lettura. Ciò comporterà una filosofia di progettazione completamente diversa da quella utilizzata nei database operazionali, infatti se nei sistemi transazionali l'accento è posto sulla minimizzazione della quantità di informazioni da memorizzare, nei Data Warehouse lo scopo principale è la massimizzazione della velocità di reperimento delle informazioni, ed è proprio in nome di questo miglioramento delle prestazioni che nei progetti di data warehousing troveremo una parziale denormalizzazione. Il motivo per cui si avverte una cosi forte necessità di impennata delle prestazioni è molto semplice: le interrogazioni che normalmente vengono lanciate su un Data Warehouse non vanno ad eseguire transazioni che interessano un ridotto numero di record, ma bensì richiedono la scansione di un'immensa quantità di tuple con lo scopo di estrapolarne dati quantitativi di sintesi. Questo genere di interrogazioni, che stanno alla base di un'analisi analitica e dinamica, vengono chiamate OLAP (On line Analytical Processing). Il modello di memorizzazione dei dati che viene utilizzato è quello multidimensionale, in quanto è quello che meglio si adatta alle problematiche e alle esigenze che caratterizzano un Data Warehouse, dove i dati vengono rappresentati come punti di uno spazio definito da un insieme di dimensioni. Gli oggetti che influenzano il processo decisionale vengono definiti fatti di interesse, quali ad esempio le vendite o le spedizioni, e ciascuna occorrenza di questi fatti determina un evento. Ad ogni fatto corrisponderanno poi un'insieme di misure che ne descriveranno, sotto l'aspetto quantitativo, i vari eventi. Per riuscire a non perdere l'orientamento nell'inevitabile moltitudine di eventi che caratterizzano il mondo aziendale, il modello multidimensionale pone tutte queste occorrenze in uno spazio n-dimensionale, caratterizzato da un certo numero di assi, chiamati appunto dimensioni, che forniscono al manager diverse prospettive di analisi. Eventi, misure e dimensioni sono tra loro collegati a formare il cosidetto cubo multidimensionale, dove ogni evento è identificato da un valore per ogni dimensione ed è caratterizzato da un valore per ogni misura. 6

11 Business Intelligence e Sistemi Open Source Illustrazione 1.1: Esempio di cubo multidimensionale che modella la vendite del prodotto 'Off Active' 1.2 Architettura e moduli principali di un Data Warehouse Vediamo adesso qual'è la soluzione architetturale sono più adatta per ospitare un sistema di data warehousing. Prima però di analizzarla nello specifico, è bene soffermarsi su quelle che sono le caratteristiche irrinunciabili che un'architettura che ospita un Data Warehouse deve avere, a prescindere dalla tipologia: Separazione: l'elaborazione transazionale e quella analitica devono essere mantenute il più possibile separate; Scalabilità: l architettura hardware e software deve poter essere facilmente ridimensionata a fronte della crescita nel tempo dei volumi di dati da gestire ed elaborare e del numero di utenti da soddisfare; Estendibilità: deve essere possibile accogliere nuove applicazioni e tecnologie senza riprogettare integralmente il sistema; Sicurezza: il controllo sugli accessi è essenziale a causa della natura strategica dei dati memorizzati; Ammissibilità: la complessità dell attività di amministrazione non deve risultare eccessiva[kel97]. 7

12 Mattia Camporesi Generalmente un'architettura per il data warehousing è caratterizzata dalla presenza di quattro livelli fondamentali, che descrivono il percorso del flusso di dati. Al livello più basso abbiamo il livello delle sorgenti, ovvero dove risiedono tutte le fonti dati, generalmente di tipo operazionale ed eterogenee tra loro, che vanno ad alimentare il Data Warehouse. Subito sopra troviamo il livello dell'alimentazione, dove, utilizzando gli strumenti ETL, i dati memorizzati nelle sorgenti vengono estratti, ripuliti da inevitabili incosistenze ed imprecisioni, integrati in un unico schema comune ed infine caricati nel databse analitico. A questo punto troviamo il livello del warehouse vero e proprio, ovvero dove risiede il contenitore dei dati ripuliti, consistenti ed integrati. Esso può essere direttamente consultato, oppure anche utilizzato come sorgente per la creazione di svariati data mart, che ne costituiscono una parziale replica, orientati verso specifiche aree aziendali [GOL05]. Accanto al Data Warehouse si trova il contenitore dei metadati, dove vengono mantenute informazioni sulle sorgenti e sulla corrsipondenza tra dati del database analitico e quelli del database operazionale. Al livello più alto troviamo il livello di analisi dove avviene la consultazione e l'elaborazione dei dati consistenti ed integrati che popolano il Data Warehouse. Questa architettura viene generalmente chiamata Architettura a due livelli, per mettere enfasi alla separazione tra livello delle sorgenti e quello del Data Warehouse. Esiste una variante, denominata Architettura a tre livelli, che prevede un quinto livello, il livello dei dati riconciliati, posto tra il livello delle sorgenti e quello dell'alimentazione, con lo scopo di materializzare i dati operazionali ottenuti a valle del processo di pulizia e integrazione. In questo modo il Data Warehouse verrà alimentato dai dati riconciliati, creando un notevole vantaggio in termini di creazione di un modello di dati consistente e comune di riferimento per l'intera azienda. Vediamo adesso di approfondire le diverse tipologie di analisi che permettono all'utente finale di accedere alle informazioni contenute all'interno di un Data Warehouse. Gli approcci principali all'interrogazione di un database analitico sono fondamentalmente tre: la reportistica, l'analisi OLAP e le dashboards. Non bisogna dimenticare che spesso le informazioni contenute all'interno di un Data Warehouse vengono utilizzate come base di partenza per altre applicazioni di Business Intelligence, decisamente più complesse, quali l'analisi What If e il Data mining, che però non verranno approfondite in questo lavoro di tesi. 8

13 Business Intelligence e Sistemi Open Source Illustrazione 1.2: Architettura a tre livelli per un sistema di data warehousing. 9

14 Mattia Camporesi Reportistica La reportistica è certamente l'approccio piu semplice per fruire delle potenzialità offerte da un sistema si data warehousing. Essa consiste nella creazione di un report, ovvero di un interrogazione e di una presentazione, che viene lanciata ad intervalli di tempo regolari o comunque predefiniti. L'utente in questo approccio è generalmente passivo, in quanto una volta creata l'interrogazione e una volta strutturata la presentazione, queste vengono congelate all'interno di un'applicazione in modo tale che il report possa essere lanciato sui dati correnti con una tempistica totalmente a discrezione dell'utente. Tutti i report generati dalla stessa matrice saranno identici tra loro per quanto riguarda la forma, ma differiranno per quanto riguarda i contenuti, in quanto ogni rapporto va a fornire una rappresentazione attuale dei dati in questione. Le presentazioni sono prettamente di carattere grafico e le piu comuni sono la forma tabellare, il diagramma e lo schema a torta Analisi OLAP L'analisi OLAP (On-Line Analytical Processing) è certamente la principale modalità per accedere ai dati di un Data Warehouse e permette all'utente di effettuare analisi complesse e interattive sulla base del modello multidimensionale. A differenza della reportistica, questo genere di analisi sono di carattere estemporaneo e dipendono fortemente dalla capacità e dal livello di esperienza dell'utente, che qui ha un ruolo decisamente attivo. All'analista è infatti richiesta una profonda conoscenza sia del dominio applicativo sia degli operatori OLAP, in modo tale che si possa effettuare un vero e proprio percorso di navigazione interattivo all'interno della moltitudine dei dati, che si concretizza poi in una sequenza di interrogazioni per stadi successivi, dove la query OLAP precedente fa da base di partenza per quella successiva. Generalmente i risultati sono raffigurati in forma tabellare, dove una serie di intestazioni multiple vanno a raffigurare e ad esprimere la multidimensionalità. Vediamo adesso sinteticamente quali sono gli operatori OLAP principali: Roll up: questo operatore, che significa letteralmente arrotolare, va ad eliminare un livello di dettaglio da una gerarchia di una dimensione di analisi, provocando un aumento dell'aggregazione; 10

15 Business Intelligence e Sistemi Open Source Drill down: questo operatore è fondamentalmente l'inverso di quello precedente e provoca una diminuzione dell'aggregazione, andando ad introdurre un nuovo livello di dettaglio in una gerarchia; Slicing: questo operatore permette di ridurre la dimensionalità del cubo, fissando il valore di una dimensione, in modo da focalizzarsi solo sulla sezione di interesse del cubo; Pivoting: questo operatore permette di ruotare il cubo multidimensionale in modo da poter analizzare i medesimi dati sotto prospettive differenti; Drill across: questo operatore permette di effettuare un join tra due o piu cubi, in modo da stabilirne un collegamento, creandone un'intersezione; Drill-through:questo operatore consente di effettuare un passaggio dai dati aggregati multidimensionali del Data Warehouse a quelli operazionali presenti nelle sorgenti o nel livello riconciliato. Questo genere di analisi non sono particolarmente leggere e richiedono una sforzo di calcolo notevole, soprattutto nel caso in cui il database su cui vengono effettuate non sia innatamente multidimensionale (MOLAP) ma relazionale (ROLAP), ognuna delle operazioni sopra descritte provocherebbe la generazione e l'esecuzione di query SQL estremamente complesse, che richiedono molte risorse di elaborazione. Per funzionare in maniera efficiente, i motori OLAP richiedono una struttura denormalizzata, per il semplice fatto che per migliorare le prestazioni di accesso sono costretti a memorizzare chiavi ridondanti e sommarizzazioni [WIK08] Dashboard Le dashboards o cruscotti sono degli oggetti tecnologici multitematici, ovvero degli strumenti che permettono all'utente di monitorare dei particolari aspetti del dominio applicativo in modo visuale, sintetico e in real time. Una dashboard di per sé non è una soluzione finita: essa infatti va verticalizzata (può essere utilizzata a qualsiasi livello gerarchico, in qualsiasi funzione, ovviamente con livelli di dettaglio e contenuti diversi) e dal punto di vista architetturale è la punta dell iceberg, dato che serve sostanzialmente a presentare le informazioni e a consentirne l analisi. Proprietà fondamentale di questi strumenti è quella di fornire in modo semplice ed immediato un'informazione di sintesi che in realtà racchiude in sé molta conoscenza e riassume una serie di significati. Generalmente le dashboard vengono utilizzate per monitorare, con semplicità ed 11

16 Mattia Camporesi efficacia, i principali indicatori di performance aziendali (KPI) e ricevere segnalazioni di allarme qualora si presentino risultati anomali o al di fuori dell'intervallo previsto. Il cruscotto aziendale deve quindi contenere una collezione di importanti elementi visivi potenti quali istogrammi, tachimetri, mappe, trend-lines, che permettano al manager di poter costantemente monitorare, attraverso una rapida occhiata, tutti i fatti di interesse. Illustrazione 1.3: Esempio di dashboard 1.3 Principali piattaforme commerciali di Business Intelligence Dopo aver analizzato quella che è una componente fondamentale e imprescindibile di qualsiasi sistema di Business Intelligence, ovvero il sistema di data warehousing ed i suoi moduli principali, andiamo a vedere quali sono le aziende che mettono a dispozione i prodotti commerciali piu validi e conosciuti che offre il mercato Microstrategy Microstrategy [MIC08], è un'azienda americana, fondata nel 1989, leader mondiale per quanto riguarda la distribuzione di software per la Business Intelligence. Microstrategy è un caso molto particolare per quanto riguarda le aziende produttrici di software per la Business Intelligence, in quanto, contrariamente alla concorrenza, è assolutamente 12

17 Business Intelligence e Sistemi Open Source indipendente, nel senso che non è mai stata acquisita da nessun colosso dell'informatica, come invece spesso accade in questo settore. Come prova di quanto questa azienda abbia ormai radici profonde nel mercato e di quanto essa si sia espansa, basti pensare alla reazione che ebbe quando IBM annunciò l'acquisizione di Cognos e SAP quella di Business Objects: Microstrategy semplicemente presentò un nuovo ed aggressivo piano finalizzato all'acquisizione di nuovi dipendenti e clienti dalle aziende concorrenti. Microstrategy è caratterizzata da un archiettura relazionale (ROLAP), all'interno della quale si utilizza un modello multidimensionale virtuale, contraddistinto da una serie di cubi che descrivono i principali fatti di interesse e che possono facilmente essere compresi dagli utenti che possono quindi navigare senza troppi problemi all'interno della mole di dati e infomazioni. Dalla versione 7i (2003) però, Microstrategy supporta anche i sistemi puramente multidimensionali (MOLAP). Nel febbraio 2005, viene rilasciata è la versione 8, che tutt'oggi è la piu recente. MicroStrategy è impegnata a supportare i più alti standard di interoperabilità per la flessibilità dei sistemi aperti, in modo da consentire ai clienti di scegliere liberamente le piattaforme software senza costringerli a lavorare solamente con specifici software o hardware. MicroStrategy inoltre consente un facile scambio di componenti aperti come DBMS, ETL, Sistemi Operativi, Sistemi di Directory, ERP e software per il Web, per consentire ai clienti di scambiare facilmente un componente tecnologico con un altro. Mantenendo una stretta relazione con le tecnologie complementari, questo prodotto consente ai clienti di ottenere quella flessibilità necessaria per creare sistemi di Business Intelligence assicurando al contempo alte prestazioini e una gestione operativa stabile. Vediamo ora un po' più nel dettaglio quali sono le funzionalità dell'ultima release: Nuovo design dell interfaccia Web: MicroStrategy 8 introduce una nuova interfaccia utente, specificamente creata per l imprenditore e ottimizzata per elevata produttività. La nuova interfaccia utente include una nuova incredibile serie di azioni a clic singolo, incorporate attraverso l interfaccia per rendere gli utenti altamente produttivi nella visualizzazione e nell esplorazione dei dati. È progettata con un look nuovo e una visione più semplice, che espone la funzionalità agli utenti in modo graduale, secondo le loro necessità; 13

18 Mattia Camporesi Reporting completamente interattivo: MicroStrategy 8 ha esteso la capacità di report delle versioni precedenti, rendendo completamente interattivi tutti i report e le scorecard. Ora gli utenti possono riorganizzare qualunque report con semplici interventi di trascinamento o facendo clic sulle nuove icone della barra degli strumenti, per avere visualizzazioni completamente nuove dei dati, tutte per lo stesso report e senza richiedere assistenza; Accesso diretto ai dati di business: MicroStrategy 8 incorpora nella propria architettura un ulteriore motore dinamico di accesso ai dati. Questo nuovo motore è progettato per accedere a database multidimensioni, per esempio i database di Business Information Warehouse (BW) SAP. Il nuovo motore MDX dinamico genera sintassi MDX ottimizzata, completamente certificata con BW SAP, utilizzando interfaccia BAPI ad alta prestazione di SAP. Siccome l MDX di MicroStrategy è generato dinamicamente usando i modelli multidimensionali impliciti di SAP InfoCubes, QueryCubes e ODS, è possibile passare automaticamente e senza problemi nella BW SAP alla ricerca di ulteriori dati, senza previa programmazione o progettazione di percorsi di ricerca; Unione eterogenea dei dati di tutta l azienda: MicroStrategy 8 estende la flessibilità di modellazione dei dati delle versioni precedenti per includere viste integrate dei dati provenienti da memorie dati eterogenee. I dati possono provenire da qualunque sorgente, inclusi warehouse dei dati, centri dati, BW SAP e qualunque database di sistemi operativi; Integrazione della funzione di Data Mining migliore nei report e nelle analisi principali: MicroStrategy 8 ha allargato il proprio motore analitico alla capacità di Data Mining, che consente ai report e alle analisi di includere capacità predittive in ogni report o analisi. Ora il motore analitico può calcolare svariate funzioni di data mining, compresi algoritmi di rete neurale, algoritmi di cluster, di regressione e ad albero. Insieme a questa nuova capacità di calcolo, MicroStrategy 8 comprende anche la nuova possibilità di importare modelli di data mining direttamente dai migliori prodotti del settore. 14

19 Business Intelligence e Sistemi Open Source Il resto del mercato Sebbene, come abbiamo visto, Microstrategy sia universalmente riconosciuto come il prodotto di riferimento nel campo dei software di tipo commerciale per la Business Intelligence, esistono anche numerosi altri prodotti decisamente validi, che hanno un loro mercato e una clientela comunque molto vasta. Questo è infatti un settore in grande espansione e al giorno d'oggi tutte le aziende di una certa importanza si appoggiano o si stanno per appoggiare ad un sistema di Business Intelligence. Vediamo brevemente i principali protagonisti di questo mercato: Business Objects [BO08], azienda francese che crea e commercializza applicazioni di Business Intelligence per analizzare dati interni ed esterni col fine di aiutare i clienti ad aumentare l'efficienza, allinearsi alle strategie aziendali e migliorare i prodotti ed il servizi. Il massimo successo si ha nel 2003, quando venne lanciato Business Objects Enterprise 6, che divenne un prodotto leader del mercato. Nel 2007 è stata acquistata da SAP [SAP08]; Cognos [COG08], è una società canadese che vende un prodotto capace di consentire alle aziende di ogni dimensione di migliorare il proprio vantaggio competitivo attraverso il Performance Management, grazie a un utilizzo strategico della Business Intelligence. Fondata nel 1969, ha più di dipendenti e più di clienti in tutto il mondo. Cognos fa parte del gruppo IBM [IBM08]; SAS Institute [SAS08], è una società statunitense produttrice di software fondata nel La sua sede centrale è situata a Cary, in North Carolina ed ha sedi in diverse altre nazioni, compresa l'italia, con quasi dipendenti. Il suo nome deriva dall'acronimo di statistical analysis system in riferimento al suo primo software, che era dedicato all'analisi statistica. L'azienda è oggi attiva principalmente per soluzioni dedicate alle imprese, nel campo della Business Intelligence. Le soluzioni SAS sono certificate SAP NetWeaver e si propongono come una soluzione complementare alla tecnologia SAP, fornendo un supporto per l'instradamento diretto dei dati SAP verso la piattaforma SAS, per l'arricchimento, l'eleborazione e il pubblicamento dei dati 15

20 Mattia Camporesi immessi nei sistemi SAP e in generale per losfruttamento dell'intero patrimonio informativo SAP e non. 1.4 Sistemi Open Source Dopo aver visto quelle che sono le oppurtunità che offre il mercato dei prodotti proprietari, cerchiamo adesso di cambiare prospettiva, addentrandoci nel mondo Open Source. Prima però di andare ad analizzare le specifiche soluzioni, cerchiamo di spiegare da dove ha preso vita questo movimento e qual'è la sua filosofia Verso un mondo Open Source La maggior parte degli utilizzatori di programmi è abituata a considerare i software come delle scatole nere, dove il software è spesso un oggetto proprietario, chiuso, di cui difficilmente si può conoscere il codice sorgente, ovvero il suo DNA. Se al supermercato trovassimo sugli scaffali dei prodotti di cui sull etichetta si evidenziano pregi e qualità senza rivelare però con quali ingredienti sono fatti, sicuramente ci verrebbe almeno qualche dubbio. Se poi questi prodotti dovessero anche costare caro, a maggior ragione prima di decidere l acquisto ci interesseremmo circa le modalità di produzione e confezionamento. Nel caso dei software commerciali, ci comportiamo invece in modo poco razionale perché acquistiamo prodotti di cui non vengono resi noti gli ingredienti e qualunque modifica alla versione originale, attività peraltro considerata illecita, essendo questi prodotti protetti da leggi sul copyright, viene resa impossibile. Agli albori dell'informatica la situazione era però profondamente diversa. I codici sorgenti dei programmi erano aperti e quindi disponibili a tutti affinché ogni utente potesse intervenire migliorandone le prestazioni e personalizzare le funzioni dei singoli prodotti. I software nascevano da comunità di programmatori che ispiravano la propria attività secondo un attualissimo modello cooperativo, in grado di coinvolgere e portare il meglio della professionalità, dell ingegno e della creatività di ciascuno. Fortunatamente, negli ultimi tempi qualcosa sta cambiando e finalmente sono resi disponibili in modalità libera software di qualità estremamente raffinata, affidabile e robusta grazie al contributo di centinaia (a volte migliaia) di programmatori sparsi in tutto il mondo. Così come all'interno della comunità scientifica le scoperte di ogni 16

21 Business Intelligence e Sistemi Open Source singolo scienziato sono messe a disposizione di tutti, allo stesso modo nelle comunità Open Source il codice scritto è aperto, nessun programmatore possiede le singole righe di codice e neppure ne rivendica la paternità cercando di trarne un profitto. Tutti invece contribuiscono a migliorarne la qualità Un nuovo modello di business Si sta quindi sviluppando una modalità completamente alternativa di produrre, gestire e distribuire il software, e alternativi sono ovviamente anche i modelli di business che da questa tendenza hanno preso piede. Il software libero è generalmente reperibile su Internet, ma spesso necessita di conoscenze tecniche per la sua installazione, manutenzione e gestione. L utente non esperto è disposto a pagare una cifra ragionevole per disporre di un aiuto che ne semplifichi l utilizzo e in un discorso più globale le fonti di guadagno per le società informatiche non mancano di certo e possono essere riassunte in questo modo [FUR05]: supporto tecnico, installazione, configurazione e soluzione di problemi; personalizzazione, adattamento del software alla specifiche necessità del cliente; formazione, intesa come istruzione di personale tecnico per il supporto e istruzione degli utenti all utilizzo; consulenza per la scelta del prodotto e per l integrazione con altri sistemi già presenti; documentazione. Alcune aziende forniscono software Open Source pacchettizzato, cioè completo di manualistica e di strumenti per la sua installazione e configurazione guidata. Altre società producono e vendono materiale di supporto al software, quali manuali, libri, riviste. L attività può essere svolta direttamente dall azienda che ha sviluppato il progetto oppure da altre aziende che possiedono una buona conoscenza del prodotto. Altre aziende produttrici di prodotti hardware distribuiscono in formato libero il software di base necessario al loro funzionamento. La qualità di questi pacchetti in molti casi non ha nulla da invidiare alle soluzioni a pagamento, l unica differenza che continua a caratterizzarli è che solitamente l installazione e la personalizzazione richiedono competenze più elevate rispetto a quelle dei concorrenti. Concludendo si può sostenere che le soluzioni Open Source sono consigliabili a 17

22 Mattia Camporesi chi dispone di risorse in grado di mantenere e modificare il codice sorgente che si sta utilizzando. Queste piattaforme si rivelano l ideale per grandi aziende che le adottano come base per costruire soluzioni avanzate su misura grazie al proprio team interno di sviluppo. Per l utente finale piccolo o medio è spesso più conveniente rivolgersi a soluzioni del tipo commerciale supportate da aziende specializzate che non solo rivendono la licenza, ma possono anche installare e impostare inizialmente il sito che sarà poi mantenuto da persone preposte al solo inserimento e aggiornamento dei contenuti Definizione formale di Open Source L'Open Source Initiative (OSI) è una organizzazione senza fini di lucro che si dedica alla promozione di software open source. E' stata fondata nel febbraio 1998 da Bruce Perens e Eric S. Raymond quando Netscape rese pubblico il codice sorgente di Netscape Communicator (oggi dismesso) come free software, a causa della progressiva riduzione dei margini di profitto e della competizione con il programma Internet Explorer di Microsoft. Venne pubblicato un documento, denominato Open Source Definition", che specifica i requisiti necessari affinchè una licenza possa essere considerata Open Source. La prima bozza fu scritta da Bruce Perens, intitolata Linee guida per il software libero in Debian". L'attuale documento è il risultato della rimozione di ogni riferimento a Debian e della successiva pubblicazione del risultato. Vediamo adesso quali sono le condizioni necessarie affichè una licenza possa essere considerata Open Source: Libera distribuzione: la licenza non può limitare alcuno dal vendere o donare il software come componente di una distribuzione aggregata, inoltre non può richiedere diritti o altri pagamenti a fronte di tali vendite; Codice Sorgente: deve essere permessa la distribuzione del codice sorgente, in una forma facilmente modificabile da un programmatore, al fine di porre migliorie al programma; Prodotti Derivati: devono essere permessi prodotti derivati e la loro distribuzione sotto le stesse condizioni della licenza del software originale; Integrità del codice sorgente originale: deve essere permessa la distribuzione del software prodotto con un codice sorgente modificato, si 18

23 Business Intelligence e Sistemi Open Source può però imporre che i prodotti derivati portino un nome o una versione diversa dal software originale; Discriminazione contro persone o gruppi: la licenza non deve discriminare alcuna persona o gruppo di persone; Discriminazione per campo d'applicazione: la licenza non deve impedire di far uso del programma in un ambito specifico; Distribuzione della licenza: i diritti allegati a un programma devono essere applicabili a tutti coloro a cui il programma è redistribuito, senza che sia necessaria l'emissione di ulteriori licenze; Specificità ad un prodotto: i diritti allegati al programma non devono dipendere dal fatto che il programma sia parte di una particolar edistribuzione di software; Vincoli su altro software: la licenza non deve porre restrizioni su altro software distribuito insieme al software licenziato; Neutralità rispetto alle tecnologie: la licenza non deve contenere clausole che dipendano o si basino su particolari tecnologie o tipi di interfacce. Illustrazione 1.4: Logo ufficiale della comunità Open Source Le Licenze L'Open Source Initiative ha diramato una serie di licenze Open Source, che vanno a comporre una lista ufficiale. Affinchè una licenza vada in questa lista deve rispettare la 19

24 Mattia Camporesi Open Source Definition e deve seguire un processo di approvazione. La Free Software Foundation (FSF) ha a sua volta una lista di licenze ritenute libere (nella lista ci sono anche licenze ritenute da alcuni erroneamente libere e la spiegazione del perché non lo sono), per ognuna c'è scritto se è compatibile o no con la GNU General Public License, che rimane in ogni caso la piu famosa e conosciuta al mondo. La licenza GNU GPL sancisce e protegge le libertà fondamentali che permettono l'uso e lo sviluppo collettivo e naturale del software. Un'altra licenza, la GNU Free Documentation License (GNU FDL), è stata scritta per coprire la documentazione, ed è usata anche dal progetto Wikipedia. Per poter gestire alcuni casi, ad esempio lo sviluppo di librerie, il Progetto GNU ha creato anche la GNU Lesser General Public License (GNU LGPL), che permette di integrare software libero all'interno di software proprietario, specialmente per ragioni di compatibilità e portabilità. 20

25 Le piattaforme Open Source per la Business Intelligence 2 Le piattaforme Open Source per la Business Intelligence Dopo aver visto e compreso l'importanza di un sistema di data warehousing all'interno di una piattaforma di Business Intelligence, andiamo a concentrarci sull'oggetto vero e proprio di questo lavoro di tesi, focalizzando la nostra attenzione su tre prodotti Open Source quali Spago BI, Pentaho e Jasper Software. 2.1 SpagoBI SpagoBI [SPA08] è una soluzione per la Business Intelligence, in versione completamente open, ovvero senza distribuzioni a pagamento, realizzata dalla Engineering Ingegneria Informatica, una società per azioni italiana, costituita nel 1980, avente come attività lo studio, la progettazione e la realizzazione di prodotti software in particolare per i settori bancario, finanziario e assicurativo. SpagoBI è una piattaforma in grado di soddisfare l'intera gamma di esigenze analitiche: il reporting statico, la ricerca di informazioni nascoste attraverso tecniche di Data Mining, il controllo delle performance aziendali con cruscotti (dashboards) in grado di monitorare gli indicatori significativi (KPI) in tempo reale o differito, l'interrogazione libera dei dati tramite uno strumento visuale (QbE). Copre altri aspetti funzionali quali l'organizzazione dei dati (statici e dinamici) e la creazione di un ambiente di pubblicazione e di controllo strutturato e dinamico. Supporta inoltre i processi di estrazione, trasformazione e caricamento dei dati (ETL) ed inoltre l'interfaccia è interamente via web, compatibile con tutti i browser di ultima generazione. Attualmente questa funzionalità sono garantite dai seguenti applicativi: Mondrian/JPivot (Analisi OLAP); 21

26 Mattia Camporesi JasperReport e BIRT (Report); OpenLaszlo (Dashboards); Weka (Data Mining); Talend Open Studio (ETL); Hibernate (QbE Engine). Come si può notare, SpagoBI è sviluppato a componenti e realizza le singole funzionalità con moduli specifici. Esistono infatti numerosi prodotti Open Source che coprono particolari aspetti della Business Intelligence, tuttavia una soluzione completa che tratti l'intero contesto è offerta soltanto da grossi prodotti commerciali. SpagoBI fornisce un'infrastruttura comune che consente una visione globale della piattaforma, utilizzando le soluzioni Open Source ritenute più interessanti e sviluppando nuovi componenti, al fine di realizzare un'intera piattaforma realmente integrata. Questo prodotto offre diverse soluzioni per ogni area analitica, lasciando libero l'utente finale di scegliere la composizione della soluzione più adatta rispetto alle proprie esigenze, allo scopo di salvaguardare il patrimonio informativo aziendale. Il progetto SpagoBI è ambizioso e molto articolato, esso infatti non nasce come prodotto completo messo a disposizione della comunità di interesse, ma come soluzione progettuale da sviluppare e consolidare insieme ad essa. Per questo ogni componente viene rilasciata con licenza GNU LGPL, così da permetterne la condivisione, lo sviluppo e l'estensione Architettura SpagoBI presenta un'architettura modulare, in questo modo un nuovo progetto potrà richiedere il coinvolgimento di alcuni moduli soltanto, con la garanzia che eventuali estensioni saranno facilmente realizzabili dato che la piattaforma integra i vari moduli in una visione globale. L'integrazione della applicazioni è legata alla interazione delle stesse con portali generici, che possono essere specifici per la Business Intelligence o per l'intera azienda, e permette dunque la navigazione e l'utilizzo dei servizi offerti. Le applicazioni di Business Intelligence costituiscono il nucleo analitico della piattaforma e gestiscono la navigazione, attivazione e gestione dei parametri dei vari motori BI, che producono i documenti analitici a partire dai dati e dai metadati estratti dalle sorgenti. SpagoBI fornisce supporto per le funzionalità di amministrazione dell'intera piattaforma, sia degli utenti che degli oggetti. Ogni oggetto BI è distribuito 22

27 Le piattaforme Open Source per la Business Intelligence all'utente finale mediante portlet, in modo tale che sia i portlet che gli oggetti siano gestiti e incapsulati nel portale scelto per la specifica soluzione aziendale, anche qualora dovesse trattarsi di un prodotto commerciale. Questi oggetti sono Report, analisi OLAP, modelli di Data Mining, ciascuno con un proprio motore di esecuzione, di cui SpagoBI gestisce i cicli di produzione e validazione,la navigazione, la selezione, l'attivazione dei parametri e il versionamento. Illustrazione 2.1: Architettura di SpagoBI Grazie alla natura a portale della piattaforma, lo sviluppatore degli applicativi come pure l'amministratore di sistema possono accedere direttamente via web ai rispettivi strumenti di lavoro. La registrazione di nuovi documenti analitici avviene con procedure guidate dove l'utente il più delle volte fornisce il file progetto realizzato con i rispettivi strumenti di sviluppo come JasperReport o Mondrian e completa le informazioni della videata per integrarli nella piattaforma. L'utente, dopo aver inizializzato il server e dopo avere realizzato la connessione a SpagoBI, dovrà semplicemente effettuare il login per accedere alle varie funzionalità. Ovviamente ci saranno vari profili e conseguentemente diversi privilegi. Una volta autenticati, se si 23

28 Mattia Camporesi posseggono i privilegi necessari, l'utente potrà utilizzare le varie funzionalità offerte dalla piattaforma in modo del tutto trasparente, senza dover mai riinserire le proprie credenziali. SpagoBI eredita da Spago, un J2EE Framework realizzato da Engineering che permette lo sviluppo di applicazioni Web e l'integrazione di infrastrutture, l'aderenza al pattern architetturale MVC. Il pattern Model-View-Controller (MVC), si basa sulla linea guida generale che l' applicazione debba separare i componenti software che implementano il modello delle funzionalità di business (model), dai componenti che implementano la logica di presentazione (view) e di controllo che utilizzano tali funzionalità (controller) [SAR05]. I due assunti di fondo che hanno guidato la progettazione di SpagoBI sono l'adattamento del pattern architetturale MVC alle esigenze implementative della Business Intelligence e la possibilità di portare in primo piano i metadati, con lo scopo di farli divenire il fondamento per la guida ed il controllo di tutta la piattaforma. Il modulo Model deve incapsulare la logica applicativa, che si delinea in questo caso come logica dei documenti analitici, quali ad esempio Report o analisi OLAP. Gli oggetti BI, ovvero gli applicativi che permettono la creazione dei documenti analitici, vengono trattati come generici Componenti BI con una propria logica di controllo e con un motore di esecuzione specifico, essi governano la logica di business in quanto il business nel contesto di interesse è l'analisi stessa. Una nota particolare riguarda il dominio dei dati, che si posiziona a livello di Data Warehouse e non di sistema operazionale. In tale dominio sono compresi anche i metadati per la gestione semantica dei dati stessi e per l'espressione della logica di controllo. Il livello View, che deve incapsulare la logica di presentazione, affronta le problematiche relative alle componenti di pubblicazione e distribuzione delle informazioni tipicamente caratterizzanti le applicazioni web. Infine il livello Controller assume nella Business Intelligence l'onere del coordinamento e della navigazione all'interno dei singoli componenti e tra componenti differenti. SpagoBI adatta l'architettura di Spago al contesto di interesse, definendo tre livelli logici sui quali è strutturata l'intera piattaforma [SAR05]: il livello distribuzione, per la distribuzione dei modelli di informazione e analisi; 24

29 Le piattaforme Open Source per la Business Intelligence Illustrazione 2.2: Approccio MVC per SpagoBI il livello analitico, per la trasformazione dei dati grezzi in informazioni significative, quindi in conoscenza; il livello dati e metadati, per ricevere i dati e strutturarli per scopi analitici. Gli scopi principali del livello Distribuzione sono quelli di rendere utilizzabili i servizi BI e di permettere ad applicazioni esterne di interagire con essi. I portlet sono il primo strumento di accesso e permettono di costruire un'interfaccia personalizzata in un nuovo portale di Business Intelligence. Per l'interazione con altre applicazioni aziendali sono previsti anche i Web Service, per l'abilitazione dei processi analitici i messaggi JSM. I modelli e le strutture di tipo XML permettono infine una semplice trasmissione dell'informazione e dei risultati. Il livello Analitico è il nodo centrale della piattaforma, esso coordina le attività analitiche, fornendo anche gli strumenti necessari a supportarle. Le componenti centrali (Componenti BI) sono i moduli di Report, OLAP, Data Mining e Dashboards: ognuna 25

30 Mattia Camporesi di queste risponde ad una serie di funzionalità specifiche, ma la piattaforma le tratta secondo gli stessi principi architetturali, consentendone cosi un facile utilizzo ed un uso modulare. Alcune applicazioni di servizio supportano le componenti BI predisponendo l'ambiente di lavoro nei suoi aspetti collaterali: BIParameter, che gestisce i valori di input per l'attivazione dei moduli analitici e regola la visibilità dei dati e il comportamento del sistema a seconda dei privilegi dell'utente corrente; BIProfling, responsabile della registrazione dei documenti analitici nel rispetto di standard definiti; BIFunctionality, che definisce e gestisce i servizi BI permettendone inoltre l'organizzazione ad albero, il versionamento, la visibilità a seconda dei ruoli utente e la produzione dei documenti in accordo con le regole determinate da BIProfiling; BISearch, il motore di ricerca dei documenti; BIQbE, una componente per l'interrogazione visuale dei dati; BINotify, uno strumento per notificare eventi; Controllore dei Contesti, che ha la responsabilità di garantire il corretto coordinamento dell'interazione sia fra le varie Componenti BI, sia fra questi ultimi e le applicazioni di servizio. Il livello dei dati e metadati si posiziona a livello di Data Warehouse e fornisce una meta-descrizione dei suoi aspetti tecnici e dei contenuti di business. E' anche fornito un repository di servizio al fine di supportare la gestione dei documenti e la profilatura degli oggetti. L'interazione con i BI Core Components può avvenire o in maniera nativa o attraverso un livello semantico di interfaccia. La relazione con i sistemi sorgenti è gestita da un modulo ETL, che fornisce vari servizi quali l'estrazione, la trasformazione e il caricamento dei dati Il modello dei Metadati Da un punto di vista di flusso dei dati la struttura di SpagoBI è analizzabile individuando quattro livelli di astrazione che, partendo dalle sorgenti fisiche dei dati, ad esempio il database, arrivano a trattare l'intera piattaforma come un insieme di funzionalità, in modo tale da delinearne le funzioni di gestione. Intenzione degli 26

31 Le piattaforme Open Source per la Business Intelligence sviluppatori, sarebbe quindi quella di definire un meta-modello globale. L'illustrazione 2.3 ci illustra i livelli di astrazione in questione. Le funzionalità che permettono all'utente di connettersi alla piattaforma e accedere ai documenti analitici sono caratteristiche del livello L3, che offre una visione globale della piattaforma, fornendo anche la gestione della sicurezza. Una volta che l'utente richiede un documento, il livello L2 si occupa di utilizzare le strutture analitiche di SpagoBI adatte a soddisfare il bisogno informativo espresso. Le strutture selezionate dovranno recuperare i dati dalle sorgenti, pertanto il livello L1 permetterà loro di riferirsi alle risorse fisiche, quali ad esempio le tabelle relazionali. Infine il livello più basso, L0, esegue l'interrogazione sulla risorsa, ad esempio il database relazionale. L'illustrazione 2.3 illustra anche le diverse tipologie di metadati che descrivono e supportano le attività dei vari livelli. Illustrazione 2.3: Livelli del meta-modello di SpagoBI 27

32 Mattia Camporesi Al livello L0 troviamo i metadati che descrivono fisicamente la risorsa sorgente, ad esempio il nostro database. Questi dati, al livello L1, devono essere organizzati secondo una logica utilizzabile dalle strutture analitiche del livello successivo, individuando ad esempio concetti come fatti e dimensioni. Al livello L2 i metadati descrivono come il Data Warehouse viene utilizzato per la produzione dei documenti analitici (Report, OLAP, Dashboards). Infine i metadati a livello L3 descrivono come la piattaforma di SpagoBI viene utilizzata dagli utenti, specificando le interfacce di navigazione e accesso, i ruoli degli utenti e le conseguenti visibilità di dati e applicazioni [SAR05]. Per poter continuare la trattazione, è necessario introdurre due concetti molto importanti: il modello analitico e quello comportamentale. Definiamo come modello analitico l'insieme dei documenti analitici sviluppati sulla piattaforma e delle regole che descrivono come essi siano associati agli utenti in base al loro ruolo e alle loro capacità. Definiamo invece come modello comportamentale l'insieme delle regole che gestiscono, sempre in funzione dei ruoli utente, la visibilità sui dati mostrati attraverso i documenti analitici e i parametri di validazione. Il modello comportamentale garantisce quindi la sicurezza e facilita la manutenzione del sistema, in quanto le regole relative a ogni concetto analitico sono codificate una sola volta e condivise da tutti i motori, indipendentemente dalla loro natura. Sarà possibile dunque produrre nuovi documenti analitici e registrarli nella piattaforma riferendosi al modello comportamentale. Per spiegare come questo agisce, immaginiamo che un utente si autentichi nella piattaforma e scelga un documento analitico da eseguire, il sistema automaticamente leggerà la configurazione esecutiva del documento e produrrà una pagina per l'input dei parametri in accordo con il ruolo dell'utente. In questo modo i valori di input saranno dunque controllati e validati, sempre a seconda del ruolo, e verrà prodotto il documento finale. La direzione che gli sviluppatori intendono intraprendere è l'adozione di un meta-modello che consenta la descrizione astratta di tutte le aree analitiche. Poichè allo stato attuale SpagoBI non si avvale di un meta-modello, sia il modello analitico che quello comportamentale attingono i dati e metadati direttamente dalle fonti. Per quanto concerne il primo i documenti analitici implementano al loro interno il livello dei metadati (ad esempio i tipi dei dati), le logiche multidimensionali ed eventuali valori di soglia sui dati, per quanto invece riguarda il secondo le regole di visibilità sui dati vengono ricavate deducendole direttamente dalle fonti dati. Ragionando in questo modo, risulta evidente come la meta-conoscenza possa essere collocata a fianco di ogni 28

33 Le piattaforme Open Source per la Business Intelligence singolo modulo di Business Intelligence, che avrà un contatto diretto con le fonti dati. L'introduzione del meta-modello globale invece, porterebbe a dei grandi vantaggi, infatti esso permetterebbe di definire una vista consistente ed omogenea sia delle entità che compongono il Data Warehouse, sia delle regole di visibilità del modello comportamentale, vista che sarebbe peraltro condivisa da tutti i motori analitici. In questo modo la meta-conoscenza sarebbe collocata all'interno della piattaforma e le varie applicazioni di Business Intelligence, oltre a doversi interfacciare con SpagoBI per poter attingere i metadati, andrebbero tutte a consultare il medesimo patrimonio meta-informativo, che quindi potremmo definire globale. Il meta modello globale è previsto a partire dalla versione 2.0 di SpagoBI, attualmente disponibile in versione beta Reportistica Come detto in precedenza, la creazione dei documenti analitici avviene per lo più utilizzando degli strumenti esterni a SpagoBI, che poi verranno importati all'interno di piattaforma per essere eseguiti. Per quanto riguarda la reportistica, SpagoBI è compatibile con questi due strumenti Open Source: Jasper Reports; BIRT. Entrambi permettono la stampa nei comuni formati HTML, PDF e XLS. C'è inoltre la possibilità di visualizzare grafici, eseguire funzioni di raggruppamento e parametrizzazione, opzione questa che permette di pilotare i report direttamente da un documento analitico. JasperReports [JAS08] è un prodotto della Jasper Forge e si può definire come una libreria scritta in Java che legge un file tracciato con estensione.jrxml e produce il rispettivo report. Il file.jrxml è in formato XML opportunamente strutturato, che può essere anche compilato garantendo la protezione del codice sorgente nel rilascio dei report. Invece che scrivere a mano il file.jrxml, si può utilizzare il completo e utilissimo strumento di design ireport, che permette la realizzazione di report anche complessi in modo semplice e intuitivo. In pratica si tratta di definire la query dei dati sorgente e trascinare all'interno dell'area i vari componenti come campi di testo, valori di database, tabelle, grafici, eccetera, usando uno stile di sviluppo con un approccio decisamente visuale e user friendly. JasperReport è quello che offre i maggiori formati 29

34 Mattia Camporesi di esportazione, contando oltre ai classici HTML, PDF e XML anche Excel (fogli multipli e singoli), CSV, RTF e TXT. Come database può essere utilizzato qualunque database relazionale con supporto JDBC. Il prodotto si dimostra molto completo, curato nei particolari, competitivo anche rispetto ai software commerciali più rinomati, forte anche della maturità e supporto acquisito nel tempo. BIRT (Business Intelligence and Reporting Tool) [BIR08] è il progetto che conferisce al noto Eclipse la funzionalità di reportistica. L'utilizzo dei CSS (Cascading Style Sheets) per la formattazione grafica dei componenti e di un linguaggio per la generazione di valori dinamici simile a JavaScript, rende BIRT un prodotto intuitivo ai programmatori web. Le funzionalità rilevanti per un software di reportistica sono tutte presenti, dai grafici alla parametrizzazione del comportamento del report. Salvato il report dal designer quello che si ottiene è un file XML con estensione.rptdesign, interpretato dalla libreria Java di BIRT per produrre report in formato HTML, PDF o CSV. BIRT, progetto relativamente giovane rispetto a JasperReport, fa dei suoi punti di forza l'integrazione con Eclipse, la completezza di funzionalità e un notevole supporto da parte della comunità Open Source. Illustrazione 2.4: Form di importazione di un documento analitico in SpagoBI Indipendentemente da quale di questi due strumenti l'utente voglia utilizzare, il funzionamento è il medesimo e prevede due modalità: dopo la generazione del report, 30

35 Le piattaforme Open Source per la Business Intelligence sarà possibile o lanciarlo all'interno dello strumento stesso (dopo aver opportunamente creato una connessione con il data source) oppure importarlo nella piattaforma e mandarlo in esecuzione attraverso l'interfaccia di SpagoBI. La procedura di importazione è molto semplice, basta infatti accedere all'elenco dei documenti analitici salvati sulla piattaforma e compilare un form dove occorre effettuare l'upload del template costruito ad esempio con ireport e specificare, tra le altre cose, il data source che il report stesso dovrà utilizzare durante la sua esecuzione. Sarà compito del Web Service di SpagoBI, nel momento il cui il report viene lanciato, creare una connessione con il data source specificato e passarla al componente Jasper Report (nel caso si fosse utilizzato ireport) per l'esecuzione vera e propria. Illustrazione 2.5: Esempio di un semplice report lanciato all'interno di SpagoBI Ovviamente è possibile lanciare report differenti utilizzando lo stesso data source. Importare il report dentro la piattaforma permette all'utente di avere a disposizione una serie di comode funzionalità offerte da SpagoBI, quali: 31

36 Mattia Camporesi la possibilità di stampare ed inviare via mail il documento in modalità immediata; la gestione del versionamento; la possibilità di dare risalto al documento in questione segnalandolo nei preferiti o assegnandogli un punteggio; la possibilità di scrivere una serie di note che affianchino il documento stesso; la possibilità di accedere ai metadati, dove risiederanno tutte le informazioni tecniche del documento Analisi OLAP L'analisi OLAP si basa fondamentalmente su due componenti: uno è Mondrian, per quel che riguarda la gestione del cubo multidimensionale, l'altro è Jpivot, inerente invece alla parte di visualizzazione dei risultati. Mondrian [MON08] è un motore OLAP scritto in Java per la creazione di server Relational-OLAP usando database relazionali verso cui vengono mandate query SQL per generare il cubo multidimensionale. Trattandosi in pratica di un server OLAP virtuale su una base di dati relazionale, le prestazioni di Mondrian sono fortemente influenzate dalla capacità di aggregazione e capienza del RDBMS sottostante. Influiscono positivamente sulle prestazioni l'affinamento dei parametri della memoria e un buon design dello schema relazionale, che può essere a stella o a fiocco di neve. A livello di libreria Java è previsto un efficace meccanismo di caching, con la possibilità di invalidare regioni del cubo multidimensionale che andranno rigenerate dal RDBMS alla successiva query. Questa soluzione, causa la difficile implementazione tecnica, non è di fatto quasi mai utilizzata. Il modo in cui Mondrian si interfaccia con l'rdbms per caricare il cubo multidimensionale viene dapprima definito in un file XML di configurazione creato a mano oppure usando strumenti di sviluppo quali Mondrian Schema Workbench, disponibile nella pagina di download dello stesso Mondrian. L'interprete delle query per l'interrogazione del cubo multidimensionale è basato sul linguaggio MDX (Multidimensional Expressions), un codice orientato alla manipolazione di dati multidimensionali. Mondrian, quando nacque, non avendo a disposizione la definizione completa del linguaggio MDX, introdusse un dialetto che differisce in piccola parte dalla recente sintassi ufficiale. 32

37 Le piattaforme Open Source per la Business Intelligence Se Mondrian si occupa del reperimento dei dati, la parte di visualizzazione è demandata all'altro componente, Jpivot [JPI08]. Queste due applicazioni costituiscono un binomio molto diffuso nelle applicazioni di analisi OLAP. JPivot è una libreria JSP per interagire con cubi OLAP che consente di eseguire le tipiche operazioni di navigazione descritte in precedenza nel paragrafo Viene impiegato un comune Application Server Java J2EE come ambiente di esecuzione e Mondrian come Server OLAP. Alcune funzioni di layout, come la colorazione delle celle a seconda del loro valore, vengono definite nella query MDX sorgente, producendo tabelle con un buon impatto visivo. Possono essere configurate dall'interfaccia web di JPivot la selezione delle dimensioni e dei fatti da visualizzare, come pure la query MDX. Completano le funzionalità di JPivot la visualizzazione di grafici di epilogo, la stampa su file pdf e, seppure migliorabile, su Excel. Bisogna però precisare che in SpagoBI la creazione di interrogazioni JPivot su schemi Mondrian è molto agevolata da una completa procedura assistita, che di fatto evita la scrittura a mano della laboriosa query MDX. Una volta creato il file schema Mondrian, per registrarlo all'interno della piattaforma, occorre copiare questo stesso file all'interno della cartella webapps\spagobijpivotengine\web-inf\queries e censirlo nel file engine-config.xml, come mostrato di seguito. <SCHEMAS> <SCHEMA cataloguri= /WEB-INF/queries/Foodmart.xml name= Foodmart /> <SCHEMA cataloguri= /WEB-INF/queries/DW_TPCD.xml name= DW_TPCD /> </SCHEMAS> Il file schema Mondrian DW_TPCD.xml, descrive la struttura del data warehouse utilizzato per effettuare i test necessari alla stesura di questo lavoro di tesi. In questo caso di studio sono presenti i due cubi LineItem e PartSupp, e le dimensioni Supplier, Part, Order, Shipdate, Commitdate, Receiptdate ed Orderdate. Una porzione del file schema Mondrian in questione viene proposta di seguito. <Schema name="dw_tpcd"> <Dimension type="standarddimension" name="supplier"> <Hierarchy name="supplier_hierarchy" hasall="true" allmembername="all supplier" primarykey="dts_suppkey" primarykeytable="dt_supplier"> <Table name="dt_supplier"> 33

38 Mattia Camporesi </Table> <Level name="phone" table="dt_supplier" column="dts_phone" parentcolumn="dts_suppkey" type="string" uniquemembers="true" leveltype="regular" hidememberif="never"> </Level> <Level name="address" table="dt_supplier" column="dts_address" parentcolumn="dts_suppkey" type="string" uniquemembers="true" leveltype="regular" hidememberif="never"> </Level> <Level name="nation" table="dt_supplier" column="dts_nation" parentcolumn="dts_suppkey" type="string" uniquemembers="true" leveltype="regular" hidememberif="never"> </Level> <Level name="region" column="dts_region" parentcolumn="dts_region" type="string" uniquemembers="true" leveltype="regular" hidememberif="never"> </Level> </Hierarchy> </Dimension> <Cube name="lineitem" cache="true" enabled="true"> <Table name="ft_lineitem"> </Table> <DimensionUsage source="supplier" name="supplier_dimension Usage" foreignkey="ftli_suppkey"> </DimensionUsage> <DimensionUsage source="part" name="part_dimension Usage" foreignkey="ftli_partkey"> </DimensionUsage> <DimensionUsage source="shipdate" name="shipdate_dimension Usage" foreignkey="ftli_shipdate"> </DimensionUsage> <DimensionUsage source="commitdate" name="commitdate_dimension Usage" foreignkey="ftli_commitdate"> </DimensionUsage> <DimensionUsage source="receiptdate" name="receiptdate_dimension Usage" foreignkey="ftli_receiptdate"> </DimensionUsage> <DimensionUsage source="order" name="order_dimension Usage" foreignkey="ftli_orderkey"> </DimensionUsage> <Measure name="quantity" column="ftli_quantity" aggregator="sum" visible="true"> </Measure> <Measure name="extended price" column="ftli_extendedprice" aggregator="sum" visible="true"> </Measure> <Measure name="discount" column="ftli_discount" aggregator="sum" visible="true"> </Measure> <Measure name="tax " column="ftli_tax" aggregator="sum" visible="true"> </Measure> <Measure name="discprice" column="ftli_discprize" aggregator="sum" visible="true"> </Measure> <Measure name="sum charge" column="ftli_sumcharge" aggregator="sum" visible="true"> </Measure> 34

39 Le piattaforme Open Source per la Business Intelligence In questa porzione di codice, viene modellata la dimensione Supplier, di cui viene specificata la tabella del data warehouse a cui fa riferimento. Inoltre viene definita la gerarchia relativa a questa dimensione. Come si può notare, essa è composta da quattro livelli ( Phone, Address, Nation e Region ) e per ognuno di essi viene specificata la colonna della tabella del data warehouse a cui fanno riferimento, il livello padre nella gerarchia e la tipologia. Inoltre riportiamo la modellazione del cubo LineItem, dove troviamo i riferimenti alla varie dimensioni (tra cui Supplier ) e misure che lo caratterizzano. Per ogni misura viene specificato il nome, il nome della colonna della fact table a cui si riferisce e la tipologia dell'aggregatore. Completata la creazione del file Schema Mondrian, non rimane che compilare un form del tutto simile a quello descritto nel paragrafo Registrate le informazioni generali del documento analitico, rimane da definire la query MDX per l'interrogazione del cubo in questione. Con le recenti versioni di SpagoBI, è a disposizione uno strumento per scegliere gli elementi del cubo che si vuole andare a visualizzare e generare la query MDX in automatico. Rimane comunque possibile intervenire direttamente sulla query per personalizzare l'analisi in base alle proprie esigenze. Illustrazione 2.6: Strumento per la creazione automatica di query MDX di SpagoBI 35

40 Mattia Camporesi Quando l'analisi OLAP viene lanciata, il Web Service di SpagoBI, crea una connessione con il data source specificato e la passa in primis al componente Mondrian e in seguito a Jpivot, che ne permette la visualizzazione all'interno delle pagine della piattaforma stessa. A questo punto, attraverso i principali operatori OLAP che Mondrian mette a disposizione in un semplice e pratico menù, l'utente potrà iniziare la navigazione interattiva sui dati. Ovviamente è anche possibile lanciare l'esecuzione dell'analisi OLAP esternamente a SpagoBI, sfruttando il binomio Mondrian/Jpivot in modalità stand alone. Concludendo è importante sottolineare come in ottica futura è previsto il progressivo accantonamento di questo binomio di applicativi, principalmente a causa dell'assenza di assicurazioni sull'impegno, da parte degli sviluppatori di Mondrian stesso, di proseguire nello sviluppo del prodotto, a favore di una nuova realtà del settore, chiamata Palo[PAL08] Dashboards Per quanto riguarda la creazione di cruscotti, SpagoBI si affida a un componente esterno chiamato OpenLaszlo [OPL08], una piattaforma Open Source per la creazione di applicazioni web usando file XML e codice JavaScript, che vengono compilati in modo del tutto trasparente in Adobe Flash. OpenLaszlo prevede due modalità di funzionamento: SOLO, ovvero tramite qualsiasi Web server, o con il Server OpenLaszlo tramite J2EE. In questo modo le applicazioni OpenLaszlo saranno già compilate e utilizzabili da qualsiasi server Web HTTP. Questa modalità supporta l'integrazione di dati tramite XML su HTTP e semplifica notevolmente la richiesta dei dati e minimizza i costi di risposta; OpenLaszlo Server, in questo modo le applicazioni saranno compilate e caricate nella cache a tempo di esecuzione all interno di un ambiente J2EE o un Container Java Servlet. Questo modalità supporta le applicazioni che richiedono l'integrazione dei dati tramite SOAP, XML-RPC o Java-RPC, che richiedono una capacità di connessione persistente o caricamenti di media a tempo di esecuzione. L architettura Java del Server supporta quindi la scalabilità e l affidabilità requisiti richiesti da un grosso volume siti Web. 36

41 Le piattaforme Open Source per la Business Intelligence Realizzare un grafico all'interno di un cruscotto in Spago BI richiede una procedura che possiamo sintetizzare in questo modo: preparare un nuovo grafico in formato Adobe Flash, o utilizzare uno dei molti template che offre l'applicazione; creare un file XML che specifichi l'origine dei dati, la scala e le informazioni supplementari al grafico; incorporare il file XML all'interno della piattaforma usando l'apposita procedura guidata. L'uso della tecnologia Adobe Flash consente un effetto visivo gradevole. Lo sviluppatore potrà decidere di realizzare nuovi componenti oppure utilizzare quelli preesistenti che sono grafici a barre, a linee, a lancetta, a griglia e a torta. Come nel caso del report, una volta creato il cruscotto, esso andrà importato all'interno della piattaforma in maniera del tutto analoga a quella precedente. In ogni caso SpagoBI sta progettando una gestione alternativa a OpenLaszlo per la generazione di cruscotti, meglio integrabile nella piattaforma. Illustrazione 2.7: Esempio di dashboard in SpagoBI 37

42 Mattia Camporesi ETL Extract, Transform, Load (ETL) è un'espressione che si riferisce al processo estrazione, trasformazione e caricamento dei dati in un Data Warehouse. I dati vengono estratti principalmente da sistemi quali database transazionali, ma a volte vengono utilizzate come sorgenti anche comuni file di testo o altri sistemi informatici. Una volta estratti, i dati subiscono un processo di trasformazione, che può consistere ad esempio nel selezionare solo quelli che sono di interesse per il sistema, nell'effettuare un processo di normalizzazione, nell'eliminazione dei duplicati, nel raggruppamento dei dati stessi. Tale trasformazione ha lo scopo di consolidare i dati, ovvero di rendere omogenei dati provenienti da sorgenti diverse e di fare in modo che siano più aderenti alla logica di business del sistema di analisi per cui viene sviluppato. Infine i dati, una volta resi consistenti, vengono memorizzati nelle tabelle del Data Warehouse [ETL08]. Per la fase di ETL, SpagoBI integra la soluzione Talend Open Studio [TOS08], pur consentendo qualunque altro meccanismo di ETL che di fatto è una operazione indipendente ed esterna alla piattaforma. Il software è completamente Open Source, disponibile in binari precompilati per Windows o Linux. Talend Open Studio genera codice Java (o Perl in alternativa), quindi i progetti ETL necessitano solamente di una JVM per essere eseguiti. Questo ovviamente li rende indipendenti dalla piattaforma, ne facilita l'esecuzione attraverso web service e l'integrazione in altre applicazioni. Come si nota dalla grafica, Talend Open Studio sfrutta l'ambiente di Eclipse, una nota piattaforma di sviluppo, ereditandone alcune funzionalità, tra le quali il debugger. Va però considerato che è comunque un debug del codice, quindi sta all'utente programmatore poi capire come ricondurre eventuali errori nell'ambito grafico. Per realizzare un progetto con Talend Open Studio, va innanzi tutto definita la connessione al data source in questione e va creato un progetto, che farà da raccoglitore non solo per le le procedure ETL ma anche per le librerie di funzioni personalizzate nonché gli schemi e tutta la documentazione a corredo. Open Studio grazie a questa e altre caratteristiche si può ritenere un IDE (Integrated Development Enviroment), che non si limita alla sola programmazione delle procedure ETL, ma fornisce una serie di strumenti utili all'intero processo, il tutto integrato in un unico ambiente. A questo punto si può passare alla definizione di un job, in cui sarà possibile trascinare i componenti e darne una sequenza di esecuzione. Se ad esempio lo scopo dell'utente fosse quello di definire l'aggiornamento di un Data Warehouse, allora si dovrebbero 38

43 Le piattaforme Open Source per la Business Intelligence creare una serie di job col compito di aggiornare la varie tabelle, ed infine un job conclusivo che integri il tutto, ed esegua in modo sequenziale le varie procedure di aggiornamento. L'applicazione provvederà a generare direttamente il codice della procedura in Java o in Perl. Per eseguire il progetto si può utilizzare il comodo strumento integrato di debugging oppure compilare l'applicativo finale. Con questa ultima opzione verrà generata una cartella con il programma compilato che può essere mandato in esecuzione da Windows o Unix, previa l'installazione dell'ambiente Java o, a seconda dei casi, Perl. Molto marcato è l'approccio basato sui metadati, ossia lo schema delle sorgenti dati in entrata e uscita. Anche se così facendo si vincola lo sviluppatore a definire lo schema delle base dati prima di usare i componenti di Talend Open Studio, la manutenibilità del progetto a seguito dei cambiamenti viene molto agevolata perché gli schemi appartengono a una repository comune, riducendo le possibilità di incompatibilità fra flussi sorgente e destinazione. Come ogni buon software di ETL i componenti a disposizione sono molti. Oltre ai classici strumenti di estrazione, mappatura e aggiornamento delle base dati sono previsti strumenti per il logging, connessione a server web o , loop condizionale, filtraggio e aggregazione dei record e tanti altri. Passaggi complessi possono avvalersi del potente linguaggio di programmazione sottostante, che può essere Java o Perl a seconda di come viene inizializzato il progetto. A tal proposito è giusto specificare che Open Studio è uno strumento che mostra tutta la sua flessibilità in progetti complessi, merito del linguaggio di programmazione (Java o Perl) e delle scelte progettuali che agevolano l'evoluzione di grossi progetti. Più che un semplice strumento per la creazione di applicazioni ETL, Talend Open Studio ha tutte le caratteristiche di un vero e proprio ambiente integrato. Nel pannello Repository infatti sono disponibili una serie di schede per i documenti che vengono via via realizzati, suddivisi in: Business modeler: permette di disegnare graficamente i processi di ETL e la struttura dei dati, per esempio da parte degli analisti; Job designer: la parte principale, quella dove vengono creati i processi di lavorazione dei dati (job);metadata manager: gestisce gli schemi dei dati e le connessioni ai database, consentendone la centralizzazione ed il riutilizzo; Contexts: le procedure di ETL possono essere personalizzate facendo uso di parametri. La repository context prevede la definizione di questi parametri 39

44 Mattia Camporesi all'interno di scenari di utilizzo, come ad esempio il debugging o l'installazione su ambienti differenti; Code: l'utente può creare delle routine personalizzate, in codice Java o Perl a seconda di come viene configurato il progetto. La repository Code raccoglie queste funzioni in librerie che possono venire richiamate dagli strumenti di Talend Open Studio; Documentation: file esterni possono essere integrati nel progetto per documentare le scelte adottate; Recycle bin: i documenti cancellati nelle repository finiscono in un cestino, in attesa che l'utente ne svuoti il contenuto di sua spontanea volontà. Illustrazione 2.8: Ambiente di lavoro di Talend Open Studio, dettaglio sull'aggiornamento della tabella DT_SUPPLIER 40

45 Le piattaforme Open Source per la Business Intelligence Come sorgenti dati possono essere utilizzati database relazionali oppure file in vari formati (tra cui testo, XML, XLS, ZIP, ecc.) o anche protocolli web come POP3, FTP, HTTP e così via. I database relazionali supportati sono praticamente tutti quelli noti, merito di componenti personalizzati oltre ai classici componenti per connessioni JDBC e ODBC. Per registrare una procedura ETL all'interno della piattaforma, occorre importarla all'interno di SpagoBI, compilando, come nel caso degli altri documenti analitici, un semplice form Funzionalità e informazioni aggiuntive Completano la soluzione Spago BI altri interessanti strumenti di Business Intelligence quali: un modulo GEO che rende possibile la visualizzazione di dati in cartine geografiche; un modulo per la creazione di dossier analitici (BI Collaborativa) per la gestione degli iter documentali relativi al processo di budget; Discussione di gruppo dei documenti analitici; ToDo list. Illustrazione 2.9: Modalità GIS di SpagoBI 41

46 Mattia Camporesi Dalla versione in poi SpagoBI presenta una serie di funzionalità di auditing e scheduling che permettono di agevolare il monitoraggio dei documenti analitici, mettendo a disposizione servizi per il controllo funzionale e prestazionale della piattaforma. Accedendo al portale web è possibile effettuare una serie di operazioni di controllo e pianificazione su tutti i documenti, i parametri e i LOV. In particolare è anche possibile scegliere il formato di output del monitoraggio che si sta effettuando. Le analisi permettono di fare una elenco di quali parametri utilizzano un certo vincolo o una certa lista di valori, di monitorare le informazioni relative alle performance di esecuzione dei documenti (ad esempio il numero di esecuzioni richieste, il tempo medio di esecuzione etc.) e di reperire dati riguardanti le statistiche quali ad esempio le esecuzioni più lanciate e le relative modalità. Apriamo adesso una parentesi riguardante la documentazione e il supporto che Spago BI mette a disposizione dei suoi utenti. Per quanto riguarda la manualistica ufficiale, essa può essere trovata nel sito di riferimento del progetto [SPA08], non tanto nella sezione documentazione ma soprattutto nella sezione di download dell'applicazione, dove si possono reperire una grande quantità di documenti, che guidano l'utente sia nella fase di installazione sia nella fase dei primi utilizzi. Molto utili risultano anche una serie di tutorial tutorial animati che mostrano in modo tangibile, ad un utente alle prime armi, come muoversi all'interno della piattaforma. Nonostante il progetto sia italiano, tutta la documentazione è in lingua inglese. Molto vivace è anche il forum di riferimento, un ottimo strumento per chiedere o fornire chiarimenti agli altri utenti della community. Parlando si supporto tecnico invece, è importante dire che esso è messo a disposizione per i clienti che utilizzano la piattaforma all'interno della propria azienda, a quelli che stanno sviluppando un progetto per terzi, oppure che utilizzano tali soluzioni per scopi personali. Non è disponibile per ISV/VAR, ovvero aziende che integrano le soluzioni SpagoWorld nelle proprie distribuzioni commerciali La principale differenza tra il supporto gratuito fornito dalla Comunità (documentazione, forum) e la sottoscrizione del servizio a pagamento è data da: accesso a strumenti di progetto specifici per i clienti, quali forum, tracker, ; garanzia di qualità nelle risposte in quanto fornite dal team guida dei progetti; 42

47 Le piattaforme Open Source per la Business Intelligence accesso preferenziale ad aggiornamenti e correzione anomalie; priorità nella richiesta di nuove caratteristiche da rendere disponibili nelle nuove versioni del software SpagoBI; correzione delle anomalie alle ultime versioni delle soluzioni SpagoBI rilasciate nel sito di progetto e disponibili tramite download; supporto tramite per un predefinito numero di contatti; avvisi di notifica riguardo le ultime modifiche nel software e nella documentazione. 2.2 Pentaho Pentaho [PEN08] è una software house americana con sede ad Orlando, specializzata in strumenti completamente Open Source per la Business Intelligence, che negli ultimi anni ha integrato vari progetti di terze parti, proponendo al momento attuale un'ampia offerta di applicativi, quali: Pentaho Report Designer (JFree Report); Mondrian/JPivot (Analisi OLAP); Weka (Data Mining); Pentaho Data Integration (Kettle); Pentaho BI (Piattaforma per la Business Intelligence). Pentaho BI in particolare è la piattaforma di Business Intelligence, giunta alla versione 1.7, nata dall'integrazione dei progetti sopra elencati. Pentaho copre l'ampia gamma delle funzioni necessarie alla Business Intelligence, tra cui analisi OLAP, creazione di Report, dashboards, data mining ed ovviamente ETL. Il tutto attraverso una gestione centralizzata e integrata nel portale. Il cuore di Pentaho è implementato in tecnologia JSP (Java Servlet Pages) su Application Server Java JEE a scelta tra JBoss e Tomcat. Questo significa che la navigazione all'interno del portale avviene tramite tecnologia web, in modo tale che l'utente possa interfacciarsi con la piattaforma stessa attraverso un comune web browser. Oltre alla visualizzazione classica Pentaho prevede una modalità di funzionamento a portale, basata sull'uso di Portlet JSR-168. La modalità a portale funziona al momento solo con JBoss Portal, che è l'unico degli application server previsti da Pentaho aderente allo standard JSR-168. La scarsa documentazione e supporto della modalità a portale, unita alle competenze richieste nell'uso di JBoss 43

48 Mattia Camporesi Portal, fanno sì che questa particolare interfaccia venga tralasciata nell'ambito della tesi perché richiederebbe uno studio finalizzato alla programmazione di JBoss e ai dettagli implementativi di Pentaho, più che all'esame di una funzionalità utilizzabile da un tipico utente della piattaforma. Va inoltre aggiunto che la modalità completa e predefinita di Pentaho BI è l'interfaccia classica e non a portale. Quest'ultima, peraltro, non presenta alcune funzionalità rilevanti, come l'amministrazione e l'esplorazione delle repository degli applicativi. E' inoltre importante specificare che Pentaho gode semplicemente della licenza Open Source e non della licena GNU LGPL. Questo prodotto non è quindi da considerarsi un software libero, nel senso che non è legale effettuare modifiche al codice o effettuare delle estensioni al fine di migliorarlo. Ciò è in linea con l'idea di prevedere anche una versione Enterprise a pagamento, che offre una serie di funzionalità aggiuntive che verranno approfondite in seguito Architettura Illustrazione 2.10: Architettura funzionale di Pentaho 44

49 Le piattaforme Open Source per la Business Intelligence Come si può notare, Pentaho non dispone di un proprio database per la persistenza (salvataggio dei dati su memoria secondaria non volatile), ma si appoggia via JDBC ai più diffusi database relazionali, il che rende teoricamente possibile utilizzare un qualsiasi database con supporto JDBC (ad esempio Oracle, Microsoft SQL Server o MySQL). I documenti analitici (deshboards, Report, analisi OLAP) verranno quindi salvati in una semplice database, che chiameremo Solution Repository. Illustrazione 2.11: Architettura di Pentaho in dettaglio 45

50 Mattia Camporesi Alla base di tutto abbiamo il livello dei dati e dei metadati, che incarna fondamentalmente le funzioni dell'etl. Questa sezione fornisce ai vari tipi di analisi le fonti dati da utilizzare nella computazione. Al livello più alto troviamo ovviamente il livello della presentazione, che permette all'utente finale di fruire delle funzionalità analitiche offerte dalla piattaforma. Tra questi due livelli risiede il nucleo funzionale della piattaforma di Business Intelligence, ovvero il J2EE Server, dove viene gestita la creazione (da parte di specifici motori dedicati) e l'esecuzione dei documenti analitici, le politiche di sicurezza (Single Sign On) e le funzioni per l'auditing dei vari oggetti. Il cuore del sistema è il Solution Engine, che è il punto focale di ogni attività di Pentaho. Il Solution Engine è posto tra il mondo esterno (Broswer e Web Client) e il livello delle componenti. Importanza fondamentale in questo senso ha il concetto di Solution. Una Solution è un insieme di documenti (files), che definiscono sia i processi sia le attività che vanno a risolvere un problema di Business Intelligence. Questi documenti includono sia le Action Sequences, sia le risorse necessarie per eseguirli e sono mantenuti nel Solution Repository. I documenti analitici si basano quindi sul formato Pentaho Action Sequence, ossia file XML che vengono caricati e interpretati dalla piattaforma. Una Action Sequence definisce i parametri di ingresso e le azioni da compiere, il tutto in una logica procedurale. Possono in tal modo venire eseguite azioni in sequenza, come la visualizzazione di una form per la richiesta di dati in ingresso e la seguente stampa di un report. Per creare i documenti analitici è disponibile lo strumento Pentaho Design Studio, un plug-in per il noto IDE Eclipse che si propone come ambiente di riferimento per la parte di sviluppo della piattaforma [PAR08]. La logica funzionale è definita all'interno dell'area Process Actions del documento analitico elencando le operazioni che si vogliono eseguire. Tipiche azioni sono l'esecuzione di query, Report, processi ETL, analisi OLAP e grafici. Sono disponibili inoltre un ampio set di funzionalità accessorie come stampa di messaggi di debugging, esecuzione di codice JavaScript, spedizione dell'output via ed altri ancora. Possono essere aggiunti parametri che provengono da diverse fonti, ad esempio passati per URL, inglobati nella sessione corrente o salvati nell'ambiente di esecuzione. Interessante è la possibilità di combinare Action Sequence in modo sequenziale, così che l'output di una Action Sequence diventi l'input di un'altra, producendo applicazioni di notevole flessibilità. Oltre alla logica di funzionamento, una Action Sequence riporta 46

51 Le piattaforme Open Source per la Business Intelligence anche le informazioni descrittive (nome, descrizione, icona) che appaiono all'utente finale all'interno della piattaforma. Per alcune applicazioni, come ad esempio la creazione di Report o schemi Mondrian è richiesta la definizione dei template con strumenti esterni, per poi inglobare il file di configurazione all'interno di una Action Sequence Il dominio dei Metadati Pentaho utilizza un approccio innovativo basato sulla definizione di metadati per la descrizione ed il salvataggio dei processi di ETL. In particolare è possibile utilizzare il Pentaho Metadata Editor, una innovazione molto importante nella definizione a livello semantico della struttura dei propri dati, ovvero uno strumento per la costruzione di meta-domini e meta-modelli, che va a mappare la struttura fisica di un database in un modello logico orientato al business. Queste mappature vengono salvate e mantenute nel metadata repository. Per meta-dominio intendiamo una entità che contiene tutti gli oggetti creati, salvati ed usati nel livello dei metadati, come connessioni, tabelle, relazioni, categorie, concetti, ma soprattutto svariati meta-modelli, che chiameremo Business Model. Un Business Model è una entità che racchiude tutti gli oggetti di business e le relazioni che modellano gli oggetti del nostro database fisico. Fondamentalmente possiamo pensare ad un Business Model come ad un insieme di tabelle, relazioni e viste. Generalmente ci possono essere più Business Model per dominio, ma è buona norma associare ad ogni Business Model una sola connessione ad un database. Una volta creato, il passo successivo è quello di costruire una serie di business table e di relazioni, ovviamente ad ognuna di queste bisognerà associare una tabella fisica del database. Sfortunatamente, al momento è possibile utilizzare il Metadata Editor solo per creare una base su cui generare dei Report, ma dalla versione 2.0 di Pentaho, questo strumento potrà essere sfruttato in molteplici scenari, come ad esempio l'analisi OLAP e l'etl. Pentaho ha una visione del dominio dei metadati organizzata su tre livelli distinti (solo gli ultimi due sono compresi nel Business Model): Phisical Layer: questo livello comprende tutte le connessioni e le tabelle fisiche del database che si sta utilizzando e per convenzione non fa parte del Business Model, poiché non tutte le connessioni definite nel livello fisico saranno poi utilizzate nel modello di business. Come 47

52 Mattia Camporesi abbiamo accennato prima, è possibile avere svariati Business Model all'interno di uno stesso dominio, ma cisacuno di questi deve avere una connessione ad un solo database. Questo significa che all'interno dello stesso modello non sarà possibile intersecare o fondere tabelle fisiche provenienti da due connessioni differenti. Ovviamente questo rappresenta un limite che nelle prossime versioni di Penatho dovrebbe essere eliminato; Illustrazione 2.12: Il dominio dei metadati di Pentaho Abstract Business Layer: questo livello comprende tutte le business table e le relazioni che sussistono tra esse. Sarà possibile creare una o più tabelle di business per ciascuna tabella fisica che abbiamo definito nel Phisical Layer. Ovviamente le tabelle di business manterranno una referenza della tabella fisica che vanno a modellare, andando a creare una sorta di relazione di ereditarietà. In questo modo quando definiamo I metadati su una tabella fisica, la tabella di business li erediterà, a meno che la tabella di business stessa non li vada a sovrascrivere. Per quanto riguarda le relazioni invece, qui sono definite quelle che legano tra loro le tabelle di business. Il punto di 48

53 Le piattaforme Open Source per la Business Intelligence forza di questo approccio è che potremo scoprire dei legami tra business table che non sono affatto ovvi e scontati tra le tabelle corrispondenti nel livello fisico; Business View: questo livello rappresenta la parte di presentazione del Business Model, dove gli utenti possono visionare i risultati della mappatura della struttura fisica in un modello logico di business. In questo livello sarà semplicemente possibile organizzare le tabelle e le colonne che le compongono, in modo che siano di facile lettura e comprensione da parte dell'utente finale. In particolare è possibile condensare più colonne, anche appartenenti a business table diverse, in categorie, in modo da semplificarne la consultazione Reportistica Pentaho è assolutamente compatibile con i software di reportistica esaminati in precedenza (Jasper Report e BIRT), ma, come spesso vedremo, questa piattaforma ha fatto un passo in più, ovvero ha acquisito un progetto, integrandolo al suo interno. L'oggetto in questione è JFree Report [JFR08], un software di reportistica che Pentaho ha preso come riferimento. Allo sviluppatore sarà quindi possibile utilizzare Jasper Report e BIRT in modalità stand alone, ovvero creando il report esternamente alla piattaforma per poi importarlo all'interno in un secondo momento, oppure utilizzare JFree Report, che prende il nome di Pentaho Report Designer, lavorando in questo caso direttamente all'interno della piattaforma stessa. Il vantaggio di utilizzare JFree Report è sostanzialmente quello di utilizzare un prodotto che fa parte del pacchetto Pentaho, in questo modo una volta installata la piattaforma, l'utente avrà già a disposizione questa applicazione senza doverla recuperare in rete, come invece dovrebbe se volesse utilizzare un prodotto diverso. Inoltre è presente un wizard molto curato che introduce l'utente sia alla creazione del report sia alla sua importazione all'interno di Pentaho. In particolare, una volta creato il report, all'utente viene chiesto in quale cartella del Solution Repository (contenitore di tutti i documenti analitici di Pentaho) questo debba essere pubblicato. Per completare questa operazione viene però richiesta una publish password, che l'utente può trovare e settare nel file publisher_config.xml. A 49

54 Mattia Camporesi questo punto per lanciare il report, basterà accedere alla piattaforma, recuperare il file nel Solution Repository e mandarlo in esecuzione. E' importante anche specificare che, una volta che si è configurata la connessione della piattaforma al proprio data source, tale connessione sarà già presente ed utilizzabile all'interno di JFree Report. JFree Report è un'applicazione completa, che rende disponibili le funzionalità di reportistica più importanti, se si tralascia il supporto a grafici che richiede il passaggio dell'immagine da una libreria esterna come JFreeChart. Mancano invece e ne penalizzano la funzionalità gli strumenti accessori come l'editor assistito per la creazione di espressioni, la scelta dei valori delle proprietà da menù a tendina o comunque il controllo dei valori immessi. Tale lacuna unita alla scarsa documentazione di Pentaho Design Studio rallenta la creazione ed il collaudo dei report. Si tratta comunque di un progetto in stato di evoluzione, che potrebbe presentare nei prossimi rilasci delle migliorie significative. In ogni caso, JFree Report ha come grande vantaggio l'integrazione con Pentaho, consentendo l'utilizzo di connessioni e schemi Mondrian. Da Pentaho versione 1.5.0, è possibile creare report con JFree Report direttamente dalle pagine web della piattaforma con una procedura assistita. Questa modalità agevola anche la creazione di grafici sul report stesso, anche se non gode di tutte le funzionalità avanzate che sono invece disponibili nella modalità classica. Illustrazione 2.13: Recupero di un report dal Solution Repository Il formato del file corrispondente al report è XML, il che consente una notevole flessibilità implementativa, mentre il formato di stampa è a scelta tra XML, PDF, HTML, RTF, XLS e CSV. 50

55 Le piattaforme Open Source per la Business Intelligence Illustrazione 2.14: Esecuzione di un semplice report nella piattaforma Pentaho Ovviamente l'utente non è obbligato ad utilizzare JFree Report come strumento di reportistica per Pentaho. Come detto in precedenza, possono essere utilizzati anche altri prodotti quali Jasper Report o BIRT. Se si vuole procedere in questo senso però, l'importazione del report all'interno della piattaforma risulterà leggermente più complesso. Una volta creato il documento analitico infatti, sarà necessario compilare una nuova Action Sequence all'interno del Pentaho Design Studio e, una volta salvata questa procedura, l'utente, per mandarlo in esecuzione, dovrà recuperare il documento analitico nel Solution Repository Analisi OLAP L'analisi OLAP, come nel caso di SpagoBI, è principalmente demandata al binomio Mondrian/JPivot presentati nel paragrafo La definizione dello schema Mondrian rimane compito di strumenti appositi come Mondrian Schema Workbench, ma in alternativa si può anche utilizzare Pentaho Cube Designer, uno strumento fornito da Pentaho e accessibile direttamente dalle pagine web della piattaforma. Questo tool però, è ancora privo di funzionalità rilevanti e può risultare utile solo per utenti alle prima armi o in alternativa per tracciare una prima bozza dello schema Mondrian. Una volta definito, per registrare lo schema all'interno della piattaforma, occorre aprire il Design Studio e creare una nuova Action Sequence, relativa all'analisi OLAP che si sta andando a realizzare. Durante la compilazione dei vari form che 51

56 Mattia Camporesi caratterizzano l'action Sequence, vista la mancanza di uno strumento che supporti l'utente in questo passaggio, occorre inserire manualmente la query MDX che reperisca i dati e definisca con quali righe e colonne verrà avviata l'analisi OLAP, nel momento in cui verrà lanciata. Illustrazione 2.15: Definizione di una Action Sequence relativa ad un'analisi OLAP sul cubo LineItem Illustrazione 2.16: Esecuzioone di un'analisi OLAP in Pentaho 52

57 Le piattaforme Open Source per la Business Intelligence Una volta concluse queste operazioni, non rimane che andare a reperire il documento analitico che si è appena definito nel Solution Repository, selezionarlo e mandarlo in esecuzione. A questo punto, il Web Service di Pentaho creerà una connessione col data source specificato nella Action Sequence e la passerà al componente Mondrian/Jpivot (OLAP Engine) che produrrà l'output finale dell'analisi Dashboards Per la generazione di cruscotti Pentaho utilizza la libreria JFreeChart che prevede i classici formati a torta, barre, linee e area. Dalla versione 1.5 di Pentaho è possibile utilizzare la libreria alternativa XML/SWF Charts, basata sul formato Adobe Flash e che consente l'utilizzo di una più ampia gamma di grafici con eleganti effetti dinamici. Manca però la possibilità di creare indicatori a lancetta in maniera agevole come pure la costruzione di cruscotti con più grafici sono prerogativa di programmatori esperti. Per chi volesse realizzare una dashboard, anche non interattiva, è richiesta una notevole dimestichezza con JSP,XML, HTML, Action Sequence e JavaScript, in quanto il lavoro consiste nel creare una pagina JSP da zero. Per colmare questa lacuna è in cantiere il progetto, non ancora rilasciato, Pentaho Dashboard Designer, con cui sarà possibile generare cruscotti direttamente da applicativi web e che probabilmente sarà presente nella versione 2.0 di Pentaho. Alla luce della situazione attuale, per gli utenti che volessero realizzare cruscotti senza troppe complicazioni tecniche, il consiglio è di orientarsi verso uno strumento esterno ETL Pentaho, per il processo di ETL, propone Kettle [KET08], un prodotto che è stato poi acquisito ed integrato all'interno della piattaforma e che, a seguito di questo, ora viene anche chiamato Pentaho Data Integration. Una procedura ETL in Kettle è in essenza un file XML prodotto dall'editor grafico Spoon e che in seguito viene mandato in esecuzione. Inoltre, in presenza di una rete, gli utenti possono demandare l'avvio di procedure ETL anche ad altri computer usando il web service Carte. Con Spoon definire una tipica trasformazione ETL è molto intuitivo e si compie in semplici passaggi, quali: definire le connessioni JDBC al database; 53

58 Mattia Camporesi trascinare i componenti sull'area del progetto, collegandoli in senso sequenziale di esecuzione; testare l'applicativo realizzato; salvare il tutto e mandare in esecuzione il progetto con Kettle. Illustrazione 2.17: Ambiente di lavoro di Kettle, dettaglio di una trasformazione che va ad aggiornare la tabella DT_SUPPLIER Le funzioni specifiche del processo ETL sono demandate a componenti specializzati, trascinati sull'area di lavoro e collegati in ordine di esecuzione. L'utente ha a disposizione, nel menù a tendina Core Objects, un'ampia scelta di applicativi suddivisi in categorie, tra cui le principali sono: 54

59 Le piattaforme Open Source per la Business Intelligence Input: sono i componenti per definire flussi di dati in entrata, come i risultato di query su database relazionale ma anche file di testo Excel o XML. Nel processo di ETL questi componenti possono essere identificati nella fase di estrazione; Transform: comprende gran parte delle funzionalità di trasformazione di Kettle. Oltre a quelli della scheda Transform ci sono altri componenti per la manipolazione del flusso di dati come la modifica dei valori, il join di data set, il loockup dei campi ed altri ancora; Output: permette di aggiornare una base dati di destinazione che può essere un database relazionale oppure un file in formato testo, XML o Excel. Ciò rappresenta le procedure di loading del processo ETL. Oltre a questi componenti fondamentali, Kettle mette a disposizione altre funzionalità per il passaggio di dati via socket, scripting con linguaggio JavaScript, gestione avanzata delle connessioni con partizione dei data set, connessioni multiple, clustering e logging dettagliato sia su file che su RDBMS. Particolarmente interessante e completa è la funzionalità di debugging dei progetti. Una caratteristica che si potrebbe migliorare è il componente per lo scripting, ancora poco documentato e senza strumenti che agevolino la stesura del codice. Le trasformazioni in Kettle hanno un flusso molto semplice, cioè prelevano dati da una o più sorgenti, eseguono delle elaborazioni ed aggiornano una singola tabella di destinazione. Qualora si si presenti la necessità di aggiornare più tabelle di database, si crea una trasformazione per ogni tabella e tramite un progetto job si accorpano le singole trasformazioni per darne un senso sequenziale di esecuzione. Il job viene realizzato in maniera simile a un progetto trasformazione, solo che i componenti in questo caso hanno funzioni più generali, come ad esempio lo scheduling. In sostanza, occorre prima creare una serie di trasformazioni che vanno ad aggiornare le tabelle interessate, ed in seguito si dovrà integrare il tutto creando un job che manderà in esecuzione le trasformazioni in questione in modo sequenziale. Le opzioni di schedulazione del job appena creato vengono gestite direttamente in Kettle, senza richiedere un intervento dell'utente sulla piattaforma (ovviamente il job, una volta salvato, sarà presente e rintracciabile nel Solution Repository). 55

60 Mattia Camporesi Illustrazione 2.18: Creazione di un job in Kettle Funzionalità e informazioni aggiuntive La versione base di Pentaho, oltre alle funzionalità citate pocanzi, prevede anche: il supporto al GIS, basato sull'integrazione con Google Maps; un motore di Workflow; un'attività di Data Mining, supportata dall'applicativo Weka. Questa però è l'offerta della versione base, ovvero quella che è possibile scaricare gratuitamente da Internet. Pentaho infatti prevede anche una versione Enterprise, la cui offerta ovviamente è molto più articolata: supporto tecnico diretto; repository su database RBDMS, oltre che su directory di sistema; sottoscrizione alle Action Sequence: gli utenti possono schedulare le Action Sequence così da eseguirle a intervalli di tempo prestabiliti; possibilità di testare le Action Sequence in un ambiente di prova; report sulle performance di Pentaho BI e sull'utilizzo da parte degli utenti, particolarmente utili agli amministratori del sistema; 56

61 Le piattaforme Open Source per la Business Intelligence vincoli sulle sottoscrizioni delle Action Sequence; Single Sign-On con l'autenticazione a livello di Sistema Operativo usando LDAP, Kerberos o Active Directory; cancellazione dei contenuti obsoleti nelle varie Repository; Clustering di certi tipi di Action Sequence come i Report. Particolarmente interessante risulta il Single Sign-On (autenticazione unica), ovvero un sistema specializzato che permette ad un utente di autenticarsi una sola volta e di accedere a tutte le risorse informatiche alle quali è abilitato. Gli obiettivi di tale approccio sono i seguenti: semplificare la gestione delle password: maggiore è il numero delle password da gestire, maggiore è la possibilità che saranno utilizzate password simili le une alle altre e facili da memorizzare, abbassando così il livello di sicurezza; semplificare la gestione degli accessi ai vari servizi; semplificare la definizione e la gestione delle politiche di sicurezza. Su Pentaho, il Single Sign-On con l'autenticazione a livello di sistema operativo, viene principalmente ottenuto utilizzando la tecnologia CAS. Il CAS (Central Authentication Service) è un servizio Single Sign-On libero (originariamente sviluppato dall'università di Yale) che permette alle applicazioni web la possibilità di rinviare tutte le autenticazioni a un server centrale o a più server di fiducia. Quando gli utenti tentano di effettuare il login o quando richiedono una risorsa che necessita di una autenticazione, essi sono ridiretti all'applicazione CAS, che, una volta verificato il successo del login, permette all'utente di accedere alla risorsa richiesta. C'è da notare che l'applicativo CAS fornisce all'applicazione alla quale l'utente sta cercando di effettuare l'autenticazione solo il nome dell'utente, e che è in grado di capire i ruoli e i privilegi di cui tale utente gode all'interno dell'applicazione in questione. Una volta verificati tali privilegi, il CAS concede o meno il via libera all'utente [SSO08]. Andiamo adesso a vedere che tipo di documentazione e di supporto tecnico Pentaho mette a disposizione dei suoi utenti. La manualistica si può facilmente trovare in una particolare sezione del sito ufficiale della piattaforma [PEN08], in particolare nella sezione Wiki del menù a tendina Community. Qui si possono trovare una grande quantità di documenti che guidano l'utente sia nell'installazione sia nell'utilizzo delle varie componenti del progetto. Perdersi in questa grande quantità di informazioni 57

62 Mattia Camporesi e manuali è molto facile, occorre quindi prestare bene attenzione al reperimento delle nozioni, scegliendo quelle più coerenti al proprio livello di esperienza. Esterno a questa sezione, ma fondamentale per cominciare a ragionare in termini di Solution, è il manuale Creating Pentaho Solutions che si può facilmente reperire attraverso una ricerca in Internet. Nella sezione demo è possibile trovare delle animazioni che agevolano di molto il compito di un utente inesperto. Ovviamente esiste anche un forum dedicato alla piattaforma che può essere trovato all'interno della sezione Community del sito ufficiale di Pentaho. Lì sono raccolti una serie di strumenti molto utili, quali il forum ufficiale, la newsletter, le FAQ, i vari download, una serie di utili articoli e soprattutto la sezione Wiki, un vero e proprio contenitore di documenti che aiutano l'utente per quanto riguarda molti aspetti dell'utilizzo e installazione della piattaforma. Inoltre è di recentissima creazione una sezione del forum in italiano. Per quanto riguarda il supporto tecnico, Pentaho fornisce una serie di servizi a pagamento. Ultimamente la Studio Synthesis, la casa produttrice della piattaforma, ha fatto molti investimenti in Europa, creando un Centro di Supporto ubicato in UK e punti di riferimento in Germania e Francia. L'obiettivo è quello di fornire un supporto tecnico, una assistenza e un coordinamento di spessore e in tempi brevi, che garantisca il proseguire dell'espansione del mondo Pentaho nel vecchio continente. Per richiedere supporto basta collegarsi al sito ufficiale ed andare nella sezione Support del menù Service, dove, dopo aver compilato un piccolo form, si viene messi in contatto direttamente con la sezione di supporto tecnico più vicina. 2.3 JasperSoft JasperSoft [JAS08] è una software house californiana, con sede a San Francisco, specializzata nella Open Source Business Intelligence. Questo marchio è uno dei più noti del settore, basti pensare che ad oggi sono state scaricate dal sito di riferimento più di sette milioni di copie e che più di dieci mila aziende nel mondo utilizzano questo pacchetto. JasperSoft mette a disposizione tre differenti versioni del prodotto, una totalmente Open Source e soggetta alla licenza GNU GPL, chiamata Community Edition, una versione a pagamento, chiamata Professional Edition, su cui invece vige il divieto di redistribuzione e un'altra versione, chiamata Professional OEM, che offre oltre alle funzionalità aggiuntive della versione proprietaria, anche la possibilità della 58

63 Le piattaforme Open Source per la Business Intelligence redistribuzione. La suite per la Business Intelligence che JasperSoft offre in modalità Open Source (Community Edition) è articolata nel modo seguente: JasperReport e ireport (Reportistica); JasperAnalysis (Analisi OLAP); JasperETL (Software di ETL); JasperServer (la Piattaforma di Business Intelligence). Come si può notare, la componente fondamentale del pacchetto è JasperServer, ovvero la piattaforma vera e propria che supporta le altre componenti della suite, dalla quale sarà possibile importare, mandare in esecuzione e catalogare i vari documenti analitici, gestirne i permessi e i ruoli, definire lo scheduling e la gestione delle risorse. Inoltre JasperServer permette di definire e creare le connessioni con le fonti dati che verranno poi utilizzate per le esecuzioni delle applicazioni di Business Intelligence. A fianco di questa applicazione, troviamo gli strumenti che il pacchetto offre per soddisfare le esigenze analitiche più rilevanti della Business Intelligence, ovvero la creazione di Report, la navigazione dei dati attraverso l'analisi OLAP e la gestione delle procedure ETL (processo di estrazione, trasformazione e caricamento dei dati). Attraverso questi moduli, che sono utilizzabili in maniera indipendente dalla piattaforma vera e propria, l'utente potrà creare i propri documenti analitici, che saranno poi importati all'interno di JasperServer per una gestione globale del dominio applicativo in questione. La piattaforma è implementata con tecnologia JSP e viene supportata da Tomcat (o in alterntaiva JBoss) come Application Server. Di conseguenza la navigazione all'interno di JasperServer avviene attraverso un comune web browser. JasperServer 59

64 Mattia Camporesi dispone inoltre di due differenti Web Service per fruire delle potenzialità della suite, la cui comunicazione avverrà tramite messaggi SOAP (Simple Object Access Protocol), un protocollo leggero per lo scambio di messaggi tra componenti software. Il primo è il Repository Web Service, che avrà il compito di gestire le varie connessioni ai data source e permettere l'esecuzione dei vari documenti analitici, mentre il secondo è il Scheduling Web Service, che si occuperà invece della programmazione e gestione delle varie operazioni Architettura L'architettura di JasperSoft è caratterizzata da tre livelli fondamentali: livello dei dati; livello analitico; livello di presentazione. Il livello dei dati è caratterizzato dalla presenza di tutte le sorgenti di informazioni che andranno ad alimentare l'intera piattaforma e che forniranno supporto ai motori analitici (JasperReport, JasperAnalysis etc.) durante le varie computazioni. Attraverso lo strumento JasperETL, sarà possibile filtrare, riordinare e soprattutto rendere consistente la grande quantità di informazioni che generalmente un'azienda possiede e fornire quindi una base di dati globale, su cui appoggiarsi, a tutta la piattaforma. Sopra il livello dei dati troviamo il livello analitico, ovvero la componente più importante, il vero cuore funzionale di tutta l'architettura. In questo strato risiede il server delle piattaforma, che gestirà l'esecuzione di tutti i documenti analitici, le politiche di sicurezza, le funzioni di auditing e di scheduling. In questo livello troviamo anche i motori analitici che permetteranno l'esecuzione dei vari tipi di analisi. Generalmente infatti, un documento analitico viene creato e definito esternamente alla piattaforma, attraverso gli appositi strumenti che JasperSoft mette a disposizione e, in un secondo momento, importato dentro la piattaforma per l'esecuzione vera e propria. A questo punto, il documento analitico verrà associato dall'utente alla fonte dati desiderata e nel momento dell'esecuzione, verrà creata una connessione col data source in questione e questa verrà passata al motore analitico specificato. Se ad esempio si trattasse di un report, questa connessione verrebbe passata alla componente JasperReport che è inclusa nel Server di JasperSoft. 60

65 Le piattaforme Open Source per la Business Intelligence Al livello più alto sarà ovviamente presente il livello di presentazione, il quale avrà il compito di rendere fruibili, alle varie tipologie di utenti, i servizi di Business Intelligence (sono supportate praticamente tutte le tipologie di output più famose) Reportistica JasperSoft utilizza, come tool per la creazione e definizione di un report, lo strumento JasperReport, già ampiamente analizzato in precedenza. Come si può notare, questo prodotto appartiene alla famiglia Jasper ed è l'unico supportato dalla piattaforma, in quanto l'unica estensione accettata da JasperServer durante la procedura di importazione di un report è quella caratteristica di JasperReport, ovvero.jrxml. Questa, che a prima vista sembra una limitazione, in realtà non lo è, in quanto stiamo parlando senza ombra di dubbio del software open source più completo e famoso al mondo per quanto riguarda la creazione di report, di conseguenza la sua diffusione è pressochè totale. 61

66 Mattia Camporesi Come spiegato nel paragrafo 2.1.3, questo tool può funzionare in maniera assolutamente indipendente dalla piattaforma, nel senso che, una volta creato il report e definita la connessione col data source, questo potrà essere mandato in esecuzione direttamente da JasperReport, senza che l'output subisca modifiche di nessun tipo. Cosi facendo però, si perdono tutti i vantaggi che si avrebbero importando il report all'interno della piattaforma, in particolare: possibilità di esportazione del report nei fomati PDF,RTF,CSV ed EXEL; possibilità di pianificare una schedulazione delle esecuzioni, che potranno essere anche periodiche; possibilità di programmare un'esecuzione istantanea o futura; possibilità di ricevere una notifica di completamento dell'operazione via mail; possibilità di effettuare operazioni di auditing e gestione della visibilità del documento analitico; possibilità, una volta mandato in esecuzione il report, di visualizzarlo all'interno di una pagina Flash, che apporterà ovviamente grandi migliorie a livello di grafica e impatto visivo. possibilità di organizzare i vari report in cartelle ed effettuare un versionamento. La procedura di importazione, peraltro, è davvero molto semplice e lineare, adatta anche ad utenti alla prime armi. Una volta selezionata la cartella di destinazione all'interno di JasperServer, è sufficiente selezionare la voce JasperServer Report, che farà aprire un piccolo form da compilare. L'utente dovrà poi indicare la posizione del file.jrxml all'interno del file system locale e il data source (tra quelli già registrati all'interno della piattaforma) che dovrà essere utilizzato per l'esecuzione del report. Terminata questa semplice procedura, il report, pronto per l'esecuzione, verrà visualizzato nella cartella precedentemente selezionata. Nel momento in cui il report viene lanciato, il Repository Web Service di JasperSoft crea una connessione col data source selezionato e la passa alla componente JasperReport, che produrrà la visualizzazione del risultato [DAN07]. 62

67 Le piattaforme Open Source per la Business Intelligence Illustrazione 2.21: Esecuzione di un report all'interno di JasperServer Analisi OLAP L'analisi OLAP si basa sul binomio di applicativi Mondrian/Jpivot già analizzato in precedenza, che in questo contesto prende però il nome di JasperAnalysis. Segnaliamo però che nella versione Professional, questi due strumenti sono stati migliorati ed estesi, in quanto sono stati arricchiti da un potenziamento generale dell'interfaccia web e dalle possibilità di creare grafici interattivi. La definizione del file schema Mondrian rimane invece compito dello strumento Mondrian Schema Workbench, attraverso il quale è possibile creare in modo assistito il file.xml che definisce il cubo multidimensionale sul quale dovrà essere effettuata la navigazione OLAP. La procedura di creazione di una analisi anche in questo caso è molto semplice e, una volta scelta la cartella di destinazione, si articola nei seguenti passi: creazione di una OLAP Client Connection, dove si dovrà specificare sia il file schema Mondrian (il file.xml creato con Mondrian Schema Workbench) sia il data source che dovrà essere utilizzato durante l'esecuzione; 63

68 Mattia Camporesi creazione di una vista analitica, dove si dovrà specificare la connessione OLAP creata in precedenza e la query MDX (scritta a mano) che definirà il punto di vista sul cubo da cui partirà la navigazione interattiva. Una volta specificata la query MDX, sarà compito della componente Mondrian/Jpivot, inclusa dentro JasperServer, accedere ai dati, rendere disponibili i vari operatori OLAP e visualizzare i risultati della navigazione. Illustrazione 2.23: Esecuzione di un'analisi OLAP in JasperServer 64

69 Le piattaforme Open Source per la Business Intelligence ETL JasperSoft, per quanto riguarda le funzioni di ETL, si appoggia ad uno strumento esterno già peraltro analizzato in precedenza nel paragrafo 2.1.6, ovvero Talend Open Studio. Qualche anno fa infatti, JasperSoft e Talend hanno dato vita ad una collaborazione che ha portato alla nascita di JasperETL, una sorta di versione particolare di Talend Open Studio, adattata alla piattaforma in termini di grafica e logo, ma che nella sostanza e nelle potenzialità è del tutto simile al prodotto originale. Si tratta quindi di uno strumento esterno e assolutamente indipendente dalla piattaforma, attraverso il quale, una volta che è stato connesso al data source interessato, sarà possibile creare un'insieme di job, nei quali andranno trascinati i vari componenti in modo sequenziale, con lo scopo di effettuare una serie di operazioni di estrazione, trasformazione e caricamento dei dati. Una volta creati i job relativi all'aggiornamento di tutte le tabelle di cui è composto il Data Warehouse in questione, si potrà creare una procedura che esegue sequenzialmente questi job, in modo da mantenere aggiornata e consistente l'intera base di dati Funzionalità ed informazioni aggiuntive JasperSoft, oltre alle funzionalità classiche legate alla Business Intelligence, offre anche una serie di strumenti molto utili, soprattutto nell'ambito di un utilizzo aziendale, legati alla sicurezza e alle politiche di profilazione degli utenti. JasperSoft ha infatti integrato un Framework dedicato interamente alla sicurezza, che permetterà non solo di identificare gli utenti che accedono ai vari servizi di Business Intelligence attraverso una procedura di autenticazione, ma anche di definire una serie di ruoli e relativi privilegi sui vari documenti. Il Framework in questione è Acegi [ACE08], uno 65

70 Mattia Camporesi strumento Open Source portabile e configurabile che fornisce servizi di sicurezza per applicazioni J2EE che supporta, oltre a quelli standard, i seguenti metodi di autenticazione: Central Authentication Service (CAS); SiteMinder; Java Authentication and Authorization Service (JAAS). Il tutto si traduce in una serie di funzionalità legate alla sicurezza molto utili e, fatto non trascurabile, di rapido accesso e semplici da impostare ed utilizzare anche per un utente alle prime armi. In JasperServer sarà possibile infatti: creare una serie di ruoli caratterizzati da privilegi differenti; creare una serie di profili utente di diversa natura con relativa assegnazione differenziata di ruoli; assegnare ad ogni cartella o risorsa presente in JasperServer una serie di permessi e privilegi, in modo da limitarne la visione del dominio applicativo. Questa assegnazione può essere fatta o per ruolo o per tipologia di utente; monitorare l'esecuzione dei vari documenti analitici attraverso una funzione di auditing molto semplice da utilizzare. Illustrazione 2.25: Assegnazione di privilegi ai vari profili utente sulla cartella TPCD 66

RRF Reply Reporting Framework

RRF Reply Reporting Framework RRF Reply Reporting Framework Introduzione L incremento dei servizi erogati nel campo delle telecomunicazioni implica la necessità di effettuare analisi short-term e long-term finalizzate a tenere sotto

Dettagli

DATA WAREHOUSING CON JASPERSOFT BI SUITE

DATA WAREHOUSING CON JASPERSOFT BI SUITE UNIVERSITÁ DEGLI STUDI DI MODENA E REGGIO EMILIA Dipartimento di Ingegneria di Enzo Ferrari Corso di Laurea Magistrale in Ingegneria Informatica (270/04) DATA WAREHOUSING CON JASPERSOFT BI SUITE Relatore

Dettagli

Data Warehousing e Data Mining

Data Warehousing e Data Mining Università degli Studi di Firenze Dipartimento di Sistemi e Informatica A.A. 2011-2012 I primi passi Data Warehousing e Data Mining Parte 2 Docente: Alessandro Gori a.gori@unifi.it OLTP vs. OLAP OLTP vs.

Dettagli

ALTA GAMMA. business intelligence. il software per pilotare la tua Azienda con successo

ALTA GAMMA. business intelligence. il software per pilotare la tua Azienda con successo ALTA GAMMA business intelligence il software per pilotare la tua Azienda con successo Chi è TeamSystem Da venticinque anni presente sul mercato del SW gestionale italiano. Oltre 44 milioni di EURO di fatturato

Dettagli

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE Oracle Business Intelligence Standard Edition One è una soluzione BI completa, integrata destinata alle piccole e medie imprese.oracle

Dettagli

Business Intelligence. strumento per gli Open Data

Business Intelligence. strumento per gli Open Data Business Intelligence strumento per gli Open Data Progetti di innovazione Progetti di innovazione negli Enti Locali Perchè? Forte cultura dell'adempimento Minore sensibilità per la verifica dei servizi

Dettagli

Jaspersoft BI Suite di BI flessibile e conveniente

Jaspersoft BI Suite di BI flessibile e conveniente Jaspersoft BI Suite di BI flessibile e conveniente Jaspersoft BI è la suite di Business Intelligence (BI) più usata al mondo grazie alle funzionalità complete, all architettura leggera e flessibile e al

Dettagli

Data warehouse. Architettura complessiva con OLTP e OLAP OLTP. Sistemi di supporto alle decisioni

Data warehouse. Architettura complessiva con OLTP e OLAP OLTP. Sistemi di supporto alle decisioni Data warehouse Data warehouse La crescita dell importanza dell analisi dei dati ha portato ad una separazione architetturale dell ambiente transazionale (OLTP on-line transaction processing) da quello

Dettagli

E-Mail. Scheduling. Modalità d invio. E-Mail

E-Mail. Scheduling. Modalità d invio. E-Mail BI BI Terranova, azienda leader in Italia per le soluzioni Software rivolte al mercato delle Utilities, propone la soluzione Software di Business Intelligence RETIBI, sviluppata per offrire un maggiore

Dettagli

Data warehouse Introduzione

Data warehouse Introduzione Database and data mining group, Data warehouse Introduzione INTRODUZIONE - 1 Pag. 1 Database and data mining group, Supporto alle decisioni aziendali La maggior parte delle aziende dispone di enormi basi

Dettagli

Piattaforma aziendale IBM Cognos per Business Intelligence

Piattaforma aziendale IBM Cognos per Business Intelligence Piattaforma aziendale IBM Cognos per Business Intelligence Considerazioni principali Ottimizzate le prestazioni con l'elaborazione in-memory e l'evoluzione dell'architettura Ottimizzate i vantaggi dell'implementazione

Dettagli

COGNOS 8 BUSINESS INTELLIGENCE DECIDERE MEGLIO, PIU RAPIDAMENTE. REPORTING ANALISI DASHBOARDING SCORECARDING

COGNOS 8 BUSINESS INTELLIGENCE DECIDERE MEGLIO, PIU RAPIDAMENTE. REPORTING ANALISI DASHBOARDING SCORECARDING COGNOS 8 BUSINESS INTELLIGENCE DECIDERE MEGLIO, PIU RAPIDAMENTE. REPORTING ANALISI DASHBOARDING SCORECARDING MIGLIORI INFORMAZIONI OGNI GIORNO COGNOS 8 BUSINESS INTELLIGENCE La Business Intelligence consiste

Dettagli

ERP Commercio e Servizi

ERP Commercio e Servizi ERP Commercio e Servizi Sistema informativo: una scelta strategica In questi ultimi anni hanno avuto grande affermazione nel mercato mondiale i cosiddetti sistemi software ERP. Tali sistemi sono in grado

Dettagli

Introduzione alla Business Intelligence. E-mail: infobusiness@zucchetti.it

Introduzione alla Business Intelligence. E-mail: infobusiness@zucchetti.it Introduzione alla Business Intelligence E-mail: infobusiness@zucchetti.it Introduzione alla Business Intelligence Introduzione Definizione di Business Intelligence: insieme di processi per raccogliere

Dettagli

La suite Pentaho Community Edition

La suite Pentaho Community Edition La suite Pentaho Community Edition GULCh 1 Cosa è la Business Intelligence Con la locuzione business intelligence (BI) ci si può solitamente riferire a: un insieme di processi aziendali per raccogliere

Dettagli

Data warehousing Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 2006/2007

Data warehousing Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 2006/2007 Data warehousing Introduzione A partire dalla metà degli anni novanta è risultato chiaro che i database per i DSS e le analisi di business intelligence vanno separati da quelli operazionali. In questa

Dettagli

Analisi funzionale della Business Intelligence

Analisi funzionale della Business Intelligence Realizzazione di un sistema informatico on-line bilingue di gestione, monitoraggio, rendicontazione e controllo del Programma di Cooperazione Transfrontaliera Italia - Francia Marittimo finanziato dal

Dettagli

Data Warehouse Architettura e Progettazione

Data Warehouse Architettura e Progettazione Introduzione Data Warehouse Architettura! Nei seguenti lucidi verrà fornita una panoramica del mondo dei Data Warehouse.! Verranno riportate diverse definizioni per identificare i molteplici aspetti che

Dettagli

Introduzione al data warehousing

Introduzione al data warehousing Introduzione al data warehousing, Riccardo Torlone aprile 2012 1 Motivazioni I sistemi informatici permettono di aumentare la produttività delle organizzazioni automatizzandone la gestione quotidiana dei

Dettagli

Data warehousing Mario Guarracino Data Mining a.a. 2010/2011

Data warehousing Mario Guarracino Data Mining a.a. 2010/2011 Data warehousing Introduzione A partire dagli anni novanta è risultato chiaro che i database per i DSS e le analisi di business intelligence vanno separati da quelli operazionali. In questa lezione vedremo

Dettagli

Novità di Crystal Reports XI

Novità di Crystal Reports XI Introduzione Introduzione Questa sezione offre una panoramica di dettagliata dei componenti, delle funzioni e dei vantaggi forniti dalla versione più recente di Crystal Reports. Alcuni tra i più importanti

Dettagli

Data warehousing con SQL Server

Data warehousing con SQL Server Data warehousing con SQL Server SQL Server è un RDBMS (Relational DataBase Management System) Analysis Services è un componente di SQL Server che offre un insieme di funzionalità di supporto al data warehousing

Dettagli

Analisi dei dati e business intelligence. White Paper

Analisi dei dati e business intelligence. White Paper Analisi dei dati e business intelligence Analisi multidimensionale dei dati, cruscotti aziendali, datawarehousing, tecniche OLAP Un approccio innovativo basato su tecnologie Open Source White Paper 1.

Dettagli

E.T.L. (Extract.Tansform.Load) IBM - ISeries 1/8

E.T.L. (Extract.Tansform.Load) IBM - ISeries 1/8 E.T.L. (Extract.Tansform.Load) IBM - ISeries Quick-EDD/ DR-DRm ETL 1/8 Sommario ETL... 3 I processi ETL (Extraction, Transformation and Loading - estrazione, trasformazione e caricamento)... 3 Cos è l

Dettagli

I N F I N I T Y Z U C C H E T T I PRESENZE WEB

I N F I N I T Y Z U C C H E T T I PRESENZE WEB I N F I N I T Y Z U C C H E T T I PRESENZE WEB PRESENZE WEB Presenze Web è la soluzione ideale per l azienda che vuole automatizzare i processi di rilevazione, controllo e gestione dei dati di presenza

Dettagli

PRESENTAZIONE SERVIZI P.M.I.

PRESENTAZIONE SERVIZI P.M.I. PRESENTAZIONE SERVIZI P.M.I. Profilo La Società Hermes nasce nel 2010 per portare sul mercato le esperienze maturate da un team di specialisti e ricercatori informatici che hanno operato per anni come

Dettagli

I N F I N I T Y P R O J E C T PRESENZE WEB

I N F I N I T Y P R O J E C T PRESENZE WEB I N F I N I T Y P R O J E C T PRESENZE WEB PRESENZE WEB Presenze Web èlasoluzione ideale per l azienda che vuole automatizzare i processi di rilevazione, controllo e gestione dei dati di presenza del personale.

Dettagli

Rassegna sui principi e sui sistemi di Data Warehousing

Rassegna sui principi e sui sistemi di Data Warehousing Università degli studi di Bologna FACOLTA DI SCIENZE MATEMATICHE, FISICHE E NATURALI Rassegna sui principi e sui sistemi di Data Warehousing Tesi di laurea di: Emanuela Scionti Relatore: Chiar.mo Prof.Montesi

Dettagli

Introduzione data warehose. Gian Luigi Ferrari Dipartimento di Informatica Università di Pisa. Data Warehouse

Introduzione data warehose. Gian Luigi Ferrari Dipartimento di Informatica Università di Pisa. Data Warehouse Introduzione data warehose Gian Luigi Ferrari Dipartimento di Informatica Università di Pisa Data Warehouse Che cosa e un data warehouse? Quali sono i modelli dei dati per data warehouse Come si progetta

Dettagli

Il Provvedimento del Garante

Il Provvedimento del Garante Il Provvedimento del Garante Il provvedimento del Garante per la Protezione dei dati personali relativo agli Amministratori di Sistema (AdS) Misure e accorgimenti prescritti ai titolari dei trattamenti

Dettagli

KNOWLEDGE MANAGEMENT. Knowledge Management. Knowledge: : cos è. Dispense del corso di Gestione della Conoscenza d Impresa

KNOWLEDGE MANAGEMENT. Knowledge Management. Knowledge: : cos è. Dispense del corso di Gestione della Conoscenza d Impresa KNOWLEDGE MANAGEMENT Pasquale Lops Giovanni Semeraro Dispense del corso di Gestione della Conoscenza d Impresa 1/23 Knowledge Management La complessità crescente della società, l esubero di informazioni

Dettagli

LA BUSINESS INTELLIGENCE - DEFINIZIONI

LA BUSINESS INTELLIGENCE - DEFINIZIONI LA BUSINESS INTELLIGENCE - DEFINIZIONI A cura di Giorgio Giussani Milano, 16.06.2010 Fonte: Internet Cos'è il Business Intelligence? Il termine business intelligence si applica ai prodotti che hanno come

Dettagli

Progetto Turismo Pisa. Sommario dei risultati

Progetto Turismo Pisa. Sommario dei risultati 2012 Progetto Turismo Pisa Sommario dei risultati 0 Studio realizzato per il Comune di Pisa da KddLab ISTI-CNR Pisa Sommario 1 Progetto Turismo Pisa: Sintesi dei risultati... 1 1.1 L Osservatorio Turistico

Dettagli

Sviluppo Applicazione di BI/DWH. con tecnologia Microsoft. per il supporto della catena logistica

Sviluppo Applicazione di BI/DWH. con tecnologia Microsoft. per il supporto della catena logistica UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Dipartimento di Ingegneria Enzo Ferrari di Modena Corso di Laurea Magistrale in Ingegneria Informatica (270/04) Sviluppo Applicazione di BI/DWH con tecnologia

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Requisiti della Business Intelligence

Requisiti della Business Intelligence Realizzazione di un sistema informatico on-line bilingue di gestione, monitoraggio, rendicontazione e controllo del Programma di Cooperazione Transfrontaliera Italia - Francia Marittimo finanziato dal

Dettagli

SOLUTION BRIEF CA ERwin Modeling. Come gestire la complessità dei dati e aumentare l'agilità del business

SOLUTION BRIEF CA ERwin Modeling. Come gestire la complessità dei dati e aumentare l'agilità del business SOLUTION BRIEF CA ERwin Modeling Come gestire la complessità dei dati e aumentare l'agilità del business CA ERwin Modeling fornisce una visione centralizzata delle definizioni dei dati chiave per consentire

Dettagli

InfoTecna ITCube Web

InfoTecna ITCube Web InfoTecna ITCubeWeb ITCubeWeb è un software avanzato per la consultazione tramite interfaccia Web di dati analitici organizzati in forma multidimensionale. L analisi multidimensionale è il sistema più

Dettagli

SISTEMA INFORMATIVO DIREZIONE E CONTROLLO

SISTEMA INFORMATIVO DIREZIONE E CONTROLLO LA SUITE JSIDIC La soluzione proposta, identificata da JSIDIC SISTEMA INFORMATIVO DIREZIONE E CONTROLLO, si presenta come un sistema capace di misurare le performance aziendali, con una soluzione unica

Dettagli

WebBi S.r.l offre consulenza e soluzioni per le seguenti aree: Data Warehousing. Business Intelligence. Disegno di architetture integrate

WebBi S.r.l offre consulenza e soluzioni per le seguenti aree: Data Warehousing. Business Intelligence. Disegno di architetture integrate Migliorare l organizzazione per migliorare la qualità delle decisioni. Migliorare la qualità dei collaboratori per migliorare il servizio alla clientela. WebBi S.r.l offre consulenza e soluzioni per le

Dettagli

Lezione 3. Modello Multidimensionale dei Dati Metadati per il Data Warehousing Accesso ai Data Warehouses Implementazioni per il Data Warehousing

Lezione 3. Modello Multidimensionale dei Dati Metadati per il Data Warehousing Accesso ai Data Warehouses Implementazioni per il Data Warehousing Lezione 3 Modello Multidimensionale dei Dati Metadati per il Data Warehousing Accesso ai Data Warehouses Implementazioni per il Data Warehousing 27/02/2010 1 Modello multidimensionale Nasce dall esigenza

Dettagli

Dynamic Warehousing: la tecnologia a supporto della Business Intelligence 2.0. Giulia Caliari Software IT Architect

Dynamic Warehousing: la tecnologia a supporto della Business Intelligence 2.0. Giulia Caliari Software IT Architect Dynamic Warehousing: la tecnologia a supporto della Business Intelligence 2.0 Giulia Caliari Software IT Architect Business Intelligence: la nuova generazione Infrastruttura Flessibilità e rapidità di

Dettagli

Guida introduttiva a BusinessObjects XI Release 2 Service Pack 2/Productivity Pack

Guida introduttiva a BusinessObjects XI Release 2 Service Pack 2/Productivity Pack Guida introduttiva a BusinessObjects XI Release 2 Service Pack 2/Productivity Pack Informazioni sul manuale Informazioni sul manuale In questo manuale sono contenute informazioni introduttive sull'utilizzo

Dettagli

MICROSOFT DYNAMICS: SOLUZIONI GESTIONALI PER L AZIENDA

MICROSOFT DYNAMICS: SOLUZIONI GESTIONALI PER L AZIENDA MICROSOFT DYNAMICS: SOLUZIONI GESTIONALI PER L AZIENDA Microsoft Dynamics: soluzioni gestionali per l azienda Le soluzioni software per il business cercano, sempre più, di offrire funzionalità avanzate

Dettagli

Beyond Consulting s.r.l. Andrea Pistore Padova, 24 Maggio 2006

Beyond Consulting s.r.l. Andrea Pistore Padova, 24 Maggio 2006 SAP Business Information Warehouse Beyond Consulting s.r.l. Andrea Pistore Padova, 24 Maggio 2006 mysap BI: Benefici Miglioramento dell'efficienza e della produttività aziendale attraverso: collaborazione

Dettagli

Web Intelligence. Argomenti 10/5/2010. abaroni@yahoo.com

Web Intelligence. Argomenti 10/5/2010. abaroni@yahoo.com Web Intelligence Argomenti Cap.1 Introduzione Cap.2 Creazione/Modifica di QUERY (semplici,custom,unioni) Cap.3 Uso dei Filtri e delle Condizioni Slide 2 - Copyright 2007 Business Objects SA - All Rights

Dettagli

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni)

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni) Progettazione di Sistemi Interattivi Struttura e supporti all implementazione di applicazioni in rete (cenni) Docente: Daniela Fogli Gli strati e la rete Stratificazione da un altro punto di vista: i calcolatori

Dettagli

www.bistrategy.it In un momento di crisi perché scegliere di investire sulla Business Intelligence?

www.bistrategy.it In un momento di crisi perché scegliere di investire sulla Business Intelligence? In un momento di crisi perché scegliere di investire sulla Business Intelligence? Cos è? Per definizione, la Business Intelligence è: la trasformazione dei dati in INFORMAZIONI messe a supporto delle decisioni

Dettagli

Il Business Performance Management & QlikView

Il Business Performance Management & QlikView Il Business Performance Management & QlikView 1 I SISTEMI DI SUPPORTO ALLE DECISIONI O DI BUSINESS INTELLIGENCE sono oggi considerati componenti di sistemi più ampi conosciuti come: CPM - CORPORATE PERFORMANCE

Dettagli

DATA MINING E DATA WAREHOUSE

DATA MINING E DATA WAREHOUSE Reti e sistemi informativi DATA MINING E DATA WAREHOUSE Marco Gottardo FONTI Wikipedia Cineca Università di Udine, Dipartimento di fisica, il data mining scientifico thepcweb.com DATA MINING 1/2 Il Data

Dettagli

Descrizione generale. Architettura del sistema

Descrizione generale. Architettura del sistema Descrizione generale Sister.Net nasce dall esigenza di avere un sistema generale di Cooperazione Applicativa tra Enti nel settore dell Informazione Geografica che consenta la realizzazione progressiva

Dettagli

Web Intelligence. Argomenti 10/5/2010. abaroni@yahoo.com

Web Intelligence. Argomenti 10/5/2010. abaroni@yahoo.com Web Intelligence Argomenti Cap.4 Utilizzo dei Prompt gerarchici Cap.5 Formattazioni Cap.6 i Template Cap.7 le Tabelle e le Cross Table Cap.8 Modalità di Visualizzazione (Html,Pdf,altro) Cap.9 Creare Formule

Dettagli

PBI Passepartout Business Intelligence

PBI Passepartout Business Intelligence PBI Passepartout Business Intelligence TARGET DEL MODULO Il prodotto, disponibile come modulo aggiuntivo per il software gestionale Passepartout Mexal, è rivolto alle Medie imprese che vogliono ottenere,

Dettagli

Self-Service Business Intelligence

Self-Service Business Intelligence Self-Service Business Intelligence VISUALIZZA DATI, SCOPRI LE TENDENZE, CONDIVIDI I RISULTATI Analysis offre a tutti gli utenti aziendali strumenti flessibili per creare e condividere le informazioni significative

Dettagli

Introduzione alla famiglia di soluzioni Windows Small Business Server

Introduzione alla famiglia di soluzioni Windows Small Business Server Introduzione alla famiglia di soluzioni Windows Small Business Server La nuova generazione di soluzioni per le piccole imprese Vantaggi per le piccole imprese Progettato per le piccole imprese e commercializzato

Dettagli

idw INTELLIGENT DATA WAREHOUSE

idw INTELLIGENT DATA WAREHOUSE idw INTELLIGENT DATA WAREHOUSE NOTE CARATTERISTICHE Il modulo idw Amministrazione Finanza e Controllo si occupa di effettuare analisi sugli andamenti dell azienda. In questo caso sono reperite informazioni

Dettagli

Novell ZENworks Configuration Management in ambiente Microsoft * Windows *

Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Guida GESTIONE SISTEMI www.novell.com Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Novell ZENworks Configuration Management in ambiente Microsoft Windows Indice: 2..... Benvenuti

Dettagli

Facoltà di Ingegneria

Facoltà di Ingegneria Facoltà di Ingegneria Corso di laurea in Ingegneria dell Informazione FONDAMENTI DI INFORMATICA PRIMA PARTE Manuale di Installazione dell ECMs SharePoint PROFESSORE: STUDENTE: Prof. Mario Bochicchio Paiano

Dettagli

SQL Server BI Development Studio

SQL Server BI Development Studio Il Data warehouse SQL Server Business Intelligence Development Studio Analysis Service Sorgenti dati operazionali DB relazionali Fogli excel Data warehouse Staging Area e dati riconciliati Cubi Report

Dettagli

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti Sviluppo di applicazioni web con il pattern Model-View-Controller Gabriele Pellegrinetti 2 MVC: come funziona e quali sono vantaggi che derivano dal suo utilizzo? La grande diffusione della tecnologia

Dettagli

A ZIENDE O RGANIZZAZIONI S TUDI P ROFESSIONALI. Lo strumento. di Business Intelligence alla portata di tutti

A ZIENDE O RGANIZZAZIONI S TUDI P ROFESSIONALI. Lo strumento. di Business Intelligence alla portata di tutti A ZIENDE O RGANIZZAZIONI S TUDI P ROFESSIONALI Lo strumento di Business Intelligence alla portata di tutti Descrizione Generale Trasforma i tuoi dati in una fonte di successo!!! INFOBUSINESS si propone

Dettagli

Supporto alle decisioni e strategie commerciali/mercati/prodotti/forza vendita;

Supporto alle decisioni e strategie commerciali/mercati/prodotti/forza vendita; .netbin. è un potentissimo strumento SVILUPPATO DA GIEMME INFORMATICA di analisi dei dati con esposizione dei dati in forma numerica e grafica con un interfaccia visuale di facile utilizzo, organizzata

Dettagli

Business Intelligence

Business Intelligence Breve panoramica sulla Business Intelligence con software Open Source Roberto Marchetto, 14 Gennaio 2009 L'articolo ed eventuali commenti sono disponibili su www.robertomarchetto.com (Introduzione) Il

Dettagli

Sistemi per le decisioni Dai sistemi gestionali ai sistemi di governo

Sistemi per le decisioni Dai sistemi gestionali ai sistemi di governo Sistemi per le decisioni Dai sistemi gestionali ai sistemi di governo Obiettivi. Presentare l evoluzione dei sistemi informativi: da supporto alla operatività a supporto al momento decisionale Definire

Dettagli

Architettura dei sistemi di database

Architettura dei sistemi di database 2 Architettura dei sistemi di database 1 Introduzione Come si potrà ben capire, l architettura perfetta non esiste, così come non è sensato credere che esista una sola architettura in grado di risolvere

Dettagli

Governo Digitale a.a. 2011/12

Governo Digitale a.a. 2011/12 Governo Digitale a.a. 2011/12 I sistemi di supporto alle decisioni ed il Data Warehouse Emiliano Casalicchio Agenda Introduzione i sistemi di supporto alle decisioni Data warehouse proprietà architettura

Dettagli

BUSINESSOBJECTS EDGE STANDARD

BUSINESSOBJECTS EDGE STANDARD PRODOTTI BUSINESSOBJECTS EDGE STANDARD La business intelligence consente di: Conoscere meglio le attività Scoprire nuove opportunità. Individuare e risolvere tempestivamente problematiche importanti. Avvalersi

Dettagli

Introduzione a BIM. Mission. Approccio

Introduzione a BIM. Mission. Approccio Sommario Sommario... 1 Introduzione a BIM... 2 Mission... 2 Approccio... 2 Perché BIM... 2 Modello Logico... 3 ETL... 4 Moduli... 5 Lato Utente... 6 BIM Vision... 6 BIM Web... 6 BIM Reader... 8 Lato Designer...

Dettagli

JSIS JSIS L architettura JSIS

JSIS JSIS L architettura JSIS JSIS JSIS L architettura JSIS La piattaforma JSIS Java Solution Integrated Suites, interamente realizzata dai nostri laboratori di sviluppo software, è una soluzione che integra la gestione di diverse

Dettagli

Microsoft Business Intelligence. Pubblicato: Febbraio 2007 Per maggiori informazioni, visitare il sito Web: www.microsoft.

Microsoft Business Intelligence. Pubblicato: Febbraio 2007 Per maggiori informazioni, visitare il sito Web: www.microsoft. Microsoft Business Intelligence Pubblicato: Febbraio 2007 Per maggiori informazioni, visitare il sito Web: www.microsoft.com/italy/bi Sommario Panoramica di Microsoft Business Intelligence 7 Gestione delle

Dettagli

Tecnopolis CSATA s.c.r.l. APQ in Materia di Ricerca Scientifica nella Regione Puglia

Tecnopolis CSATA s.c.r.l. APQ in Materia di Ricerca Scientifica nella Regione Puglia BANDO ACQUISIZIONI Prodotti Software ALLEGATO 6.1 Capitolato Tecnico Ambiente di Business Intelligence Allegato 6.1: capitolato tecnico Pag. 1 1 La piattaforma di Business Intelligence L informazione è

Dettagli

Business Analytics. Business Unit Offering: Business Intelligence. Copyright 2014 Alfa Sistemi

Business Analytics. Business Unit Offering: Business Intelligence. Copyright 2014 Alfa Sistemi Business Analytics Business Unit Offering: Business Intelligence Copyright 2014 Alfa Sistemi Alfa Sistemi: chi siamo Fondata nel 1995 Dal 2009 Oracle Platinum Partner Sedi a Udine (HQ) e Milano Struttura

Dettagli

Data warehousing con SQL Server

Data warehousing con SQL Server Data warehousing con SQL Server! SQL Server è un RDBMS (Relational DataBase Management System)! Analysis Services è un componente di SQL Server che offre un insieme di funzionalità di supporto al data

Dettagli

Thea PDM. Cos è Thea PDM? Il PDM (Product Data Management)

Thea PDM. Cos è Thea PDM? Il PDM (Product Data Management) Thea PDM Il PDM (Product Data Management) Nell'industria manifatturiera il PDM è un software per la raccolta ed organizzazione dei file nelle divere fasi di ideazione, progettazione, produzione ed obsolescenza

Dettagli

un insieme di processi per raccogliere e analizzare informazioni e dare risposta a esigenze di:

un insieme di processi per raccogliere e analizzare informazioni e dare risposta a esigenze di: InfoBusiness: cos è La business intelligence è: un insieme di processi per raccogliere e analizzare informazioni e dare risposta a esigenze di: supporto alle decisioni (DSS) controllo di performance aziendali

Dettagli

SISTEMI INFORMATIVI AZIENDALI

SISTEMI INFORMATIVI AZIENDALI SISTEMI INFORMATIVI AZIENDALI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: Alla fine di ogni lezione Modalità esame: scritto 1 Sistemi informazionali La crescente diffusione dei

Dettagli

SISTEMA ACQUISIZIONE ORDINI COLOR

SISTEMA ACQUISIZIONE ORDINI COLOR SISTEMA ACQUISIZIONE ORDINI COLOR ColOr White Paper Rev. 1.3 Technosoft s.n.c CARATTERISTICHE GENERALI ColOr è un sistema informatico specificamente progettato ed implementato per l acquisizione e la gestione

Dettagli

REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007

REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007 SISTEMA A SUPPORTO DEI PROCESSI DI PROGRAMMAZIONE E CONTROLLO DI GESTIONE NELLE ORGANIZZAZIONI PUBBLICHE REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007 Copyright 2010 CSIO Società di Informatica

Dettagli

Data Warehousing (DW)

Data Warehousing (DW) Data Warehousing (DW) Il Data Warehousing è un processo per estrarre e integrare dati storici da sistemi transazionali (OLTP) diversi e disomogenei, e da usare come supporto al sistema di decisione aziendale

Dettagli

IBM Cognos Insight. Caratteristiche

IBM Cognos Insight. Caratteristiche IBM Cognos Insight Esplorare, visualizzare, modellare e condividere conoscenza in modo indipendente, senza necessità di assistenza da parte delle funzioni IT Caratteristiche Esplorazione, analisi, visualizzazione

Dettagli

TiQ Green Energy Management: La soluzione IT per il continuo miglioramento dell utlizzo dell energia. You cannot Manage What you cannot Measure

TiQ Green Energy Management: La soluzione IT per il continuo miglioramento dell utlizzo dell energia. You cannot Manage What you cannot Measure TiQ Green Energy Management: La soluzione IT per il continuo miglioramento dell utlizzo dell energia You cannot Manage What you cannot Measure 1. Moduli di GEM Energy Monitoring Misurare è il primo passo

Dettagli

Introduzione alla Business Intelligence

Introduzione alla Business Intelligence SOMMARIO 1. DEFINIZIONE DI BUSINESS INTELLIGENCE...3 2. FINALITA DELLA BUSINESS INTELLIGENCE...4 3. DESTINATARI DELLA BUSINESS INTELLIGENCE...5 4. GLOSSARIO...7 BIM 3.1 Introduzione alla Pag. 2/ 9 1.DEFINIZIONE

Dettagli

Informazioni generali sul corso

Informazioni generali sul corso abaroni@yahoo.com Informazioni generali sul corso Introduzione a BusinessObjects Enterprise XI - Release 2 Chi sono. Io? Adolfo Baroni E-mail: abaroni@yahoo.com 2 Pagina 1 Obiettivi del corso hamministrazione

Dettagli

ADA. E learning e open source

ADA. E learning e open source 1 ADA. E learning e open source ADA 1.7.1 Come cresce un Ambiente Digitale per l'apprendimento open source Maurizio Graffio Mazzoneschi 2 Cos'è il software libero Libertà 0, o libertà fondamentale: la

Dettagli

L E I N F O R M A Z I O N I P E R F A R E

L E I N F O R M A Z I O N I P E R F A R E L E I N F O R M A Z I O N I P E R F A R E C E N T R O Con InfoBusiness avrai Vuoi DATI CERTI per prendere giuste DECISIONI? Cerchi CONFERME per le tue INTUIZIONI? Vuoi RISPOSTE IMMEDIATE? SPRECHI TEMPO

Dettagli

B usiness I ntelligence: L a scintilla che accende. un investimento che si fa apprezzare giorno dopo giorno. la conoscenza.

B usiness I ntelligence: L a scintilla che accende. un investimento che si fa apprezzare giorno dopo giorno. la conoscenza. B usiness I ntelligence: un investimento che si fa apprezzare giorno dopo giorno.... abbiamo constatato ad esempio come le aziende che hanno investito significativamente in BI (Business Intelligence) abbiano

Dettagli

AICA - Workshop 01/03/2011

AICA - Workshop 01/03/2011 AICA - Workshop La Mappa di un sistema di BI I tre elementi che hanno "cambiato il gioco": Maturazione degli ETL open source La semplificazione di Amazon EC2 L'arrivo dei DB Colonnari Nel dettaglio Cos'è

Dettagli

Report e Analisi dei dati.

Report e Analisi dei dati. Report e Analisi dei dati. Introduzione al Sistema IBM Cognos Lo scopo di questa guida è quello di far capire con esempi semplici ed esaustivi, cosa si può ottenere con il sistema IBM Cognos, presentando

Dettagli

Self-Service Business Intelligence

Self-Service Business Intelligence Self-Service Business Intelligence VISUALIZZA DATI, SCOPRI LE TENDENZE, CONDIVIDI I RISULTATI Solgenia Analysis offre a tutti gli utenti aziendali strumenti flessibili per creare e condividere le informazioni

Dettagli

I N F I N I T Y Z U C C H E T T I PAGHE PROJECT

I N F I N I T Y Z U C C H E T T I PAGHE PROJECT I N F I N I T Y Z U C C H E T T I PAGHE PROJECT PAGHE PROJECT Paghe Project è la soluzione della suite HR Zucchetti per l amministrazione del personale in aziende pubbliche e private di qualsiasi settore

Dettagli

SQL Server 2005. Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005.

SQL Server 2005. Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005. SQL Server 2005 Introduzione all uso di SQL Server e utilizzo delle opzioni Olap SQL Server 2005 SQL Server Management Studio Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL

Dettagli

QlikView Semplificando le analisi per tutti

QlikView Semplificando le analisi per tutti QlikView Semplificando le analisi per tutti Alcuni clienti italiani Tra i circa 2.700 Una differenza fondamentale: la value proposition principale di QlikView Analisi associativa Potenza e semplicità Per

Dettagli

LA SUITE ARCHIMEDE PER LA GESTIONE E L IMPIEGO

LA SUITE ARCHIMEDE PER LA GESTIONE E L IMPIEGO LA SUITE ARCHIMEDE PER LA GESTIONE E L IMPIEGO DEL PERSONALE IN TURNAZIONE Di cosa si tratta? La Suite Archimede è uno strumento scalabile, pratico ed efficiente, per la pianificazione e la gestione strategica

Dettagli

BI OPENSOURCE: UNA COMMUNITY PER L'ENTERPRISE. Sergio Ramazzina. Riservato telecamera

BI OPENSOURCE: UNA COMMUNITY PER L'ENTERPRISE. Sergio Ramazzina. Riservato telecamera BI OPENSOURCE: UNA COMMUNITY PER L'ENTERPRISE Sergio Ramazzina CHI SONO E COSA FACCIO Sergio Ramazzina Software Architect/Techinical Leader/Trainer Appassionato delle tecnologie qualunque esse siano fin

Dettagli

Configuratore di Prodotto Diapason

Configuratore di Prodotto Diapason Configuratore di Prodotto Diapason Indice Scopo di questo documento...1 Perché il nuovo Configuratore di Prodotto...2 Il configuratore di prodotto...3 Architettura e impostazione tecnica...5 Piano dei

Dettagli

ACTIVITY TRACKING PER UNA MAGGIORE EFFICIENZA ALL INTERNO DELL IMPRESA

ACTIVITY TRACKING PER UNA MAGGIORE EFFICIENZA ALL INTERNO DELL IMPRESA ACTIVITY TRACKING PER UNA MAGGIORE EFFICIENZA ALL INTERNO DELL IMPRESA Activity Tracking è l applicazione ideata in Fiat Group Automobiles (FGA) e sviluppata da Cluster Reply per gestire la tracciabilità

Dettagli

Data Warehousing: concetti base e metodologie

Data Warehousing: concetti base e metodologie Data Warehousing: concetti base e metodologie Paolo Atzeni (con la collaborazione di Luca Cabibbo e Riccardo Torlone) Università di Roma Tre Dipartimento di Informatica e Automazione atzeni@dia.uniroma3.it

Dettagli

emanager La soluzione a supporto dei processi di Clinical Governance www.dedalus.eu

emanager La soluzione a supporto dei processi di Clinical Governance www.dedalus.eu emanager La soluzione a supporto dei processi di Clinical Governance www.dedalus.eu 3 La Clinical Governance Nell ambito dell erogazione di servizi sanitari è sempre più evidente l esigenza di poter disporre

Dettagli