lunedì 24 novembre 2008

I principali tool software di Query reporting: B.O., Microstrategy, Cognos, DataTime

Vediamo ora nel dettaglio alcuni dei più diffusi software di query reporting.
Business Object: Si tratta di una azienda che ha la sua sede centrale in Francia e che commercializza software di business intelligence per l'analisi dei dati e la creazione di reportistica evoluta. La BO offre uno strumento per accrescere l'efficienza e la faciltà di elaborazione delle piattaforme di conoscenza che sono alla base delle decisioni strategiche aziendali. Nella terminologia BO, i metadati sono denominati "universi" e assieme alla reportistica sono archiviati in database esterni.
Microstrategy: offre soluzioni di business intelligence avanzatissime, creando nuovi standard per il reporting aziendale e scorecard. Questo software di query reporting nelle sue svariate versioni, dà accesso a tutti i dati dell’ azienda, e alle warehouse dei dati. Offre altresì potenti strumenti di data mining.
Cognos: questo prodotto IBM fornisce tutte le declinazioni di Business Intelligence in un'unica soluzione: reporting, analisi, scorecarding, dashboards, gestione degli eventi aziendali e integrazione dei dati. Il valore aggiunto di questo Software risiede nella offerta di un ambiente di lavoro semplificato e conforme ai più recenti ed avanzati standard di business intelligence.
Data Time: è il software open source diretto competitors dei software sopraelencati. DataTime Reporting Solution è la soluzione di reportistica più moderna e potente attualmente disponibile sul mercato. Gode di una notevole flessibilità, consentendo di creare Report con qualsiasi tipo di Layout, con possibilità pressoché illimitate di Slice and Dice del cubo multidimensionale dei dati.


Scopo dei software di Query Reporting

La sconfinata mole di dati a disposizione delle aziende non produrrebbe informazioni strategicamente rilevanti se non fosse adeguatamente gestita e manipolata. Per Business Intelligence si intende la ricerca intelligente e mirata di dati, la produzione e l’analisi strategica degli stessi con finalità di supporto alle attività di controllo e di decisione aziendali. Le organizzazioni difatti raccolgono ed elaborano le informazioni per avere stime sempre aggiornate sul contesto aziendale proprio e dello scenario competitivo di riferimento. I software di query reporting servono per l’appunto ad interrogare in maniera diretta e mirata i vastissimi database prodotti, attraverso l’utilizzo del già citato linguaggio SQL, per poter poi ottenere le informazioni desiderate che avranno rappresentazione grafico-visiva mediante le svariate tipologie di report. Il documento finale potrà avere le più disparate funzioni sia all’interno dell’azienda, che all’esterno della stessa, come ampia finestra sulle attività interne. I software di query reporting sono disponibili sia in modalità open source che a pagamento e annoverano differenti livelli di complessità di utilizzo, permettendone l’impiego agli esperti e ai principianti.

giovedì 20 novembre 2008

Funzione dell'ETL e i principali tool software di ETL


Extract, Transform, Load (ETL) si riferisce al processo di estrazione, trasformazione e caricamento dei dati in un sistema di sintesi (DW, DM, etc). I dati vengono estratti da sistemi sorgenti quali database transazionali (OLTP), comuni file di testo o da altri sistemi informatici. Subiscono quindi un processo di trasformazione, che ha lo scopo di consolidare i dati (cioè 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. Vengono infine memorizzati nelle tabelle del sistema di sintesi (load). A livello tecnico l'ETL si trova all’inizio del flusso di costruzione del DW in quanto è adipito in primis all'immissione dei dati. Il suo utilizzo permette di svolgere un lavoro molto strutturato e di assicurare una qualità del dato estratto. Si tratta di strumenti specializzati e solitamente abbastanza costosi (IBM - Datastage, Oracle - ODI, ...), in alcuni casi sono però forniti con il tool di analisi e reporting (Business Object - Data Integrator), oppure fanno parte del DBMS (Microsoft SQL Server - DTS). Oggi esiste anche una proposta open source, si tratta di Pentaho Data Integration.

Architetture per i sistemi informativi aziendali: DBMS transazionali, Data mart, DW.


Grazie all’informatica le informazioni sono oggi più facilmente producibili, archiviabili, analizzabili e , in generale, gestibili rispetto al passato. Il valore di questa risorsa è andato aumentando man mano che le dinamiche dello scenario competitivo hanno reso lo scambio e la condivisione delle informazioni un elemento alla base di molte politiche di gestione. In maniera estremamente semplicistica possiamo affermare che i dati costituiscono la materia prima con la quale è strutturata l’informazione dalla quale verranno estrapolate le grandezze ritenute rappresentative dall’azienda: valore degli ordini di uno specifico cliente, quantità di materia prima transitata da un magazzino ad un altro, risultati economici delle attività di vendita, livello di servizio al cliente, etc. Dati, informazioni e conoscenza di per sè non sono fonte di vantaggio, ma lo diventano solo quando vengano opportunamente utilizzati e trasmessi laddove se ne abbia bisogno. Lo strumento utilizzato allo scopo di veicolare in maniera veloce ed efficiente le informazioni è costituito dai sistemi informativi aziendali. Il Sistema Informativo Aziendale è identificabile come quel complesso di strumenti, risorse e attività che rileva in modo sistematico, elabora, scambia e archivia dati con lo scopo di produrre e distribuire le informazioni nel momento e nel luogo adatto e alle persone che in azienda ne hanno bisogno. In altre parole, esso rappresenta il sistema nervoso dell'azienda, attraverso il quale vengono veicolati i segnali percepiti sia dall'interno dell'azienda stessa sia dal contesto ambientale esterno.
Il sistema informativo aziendale è costituito non solo da componenti software e hardware, ma anche da altri elementi quali, ad esempio, procedure, strumenti, persone e competenze tra le quali avvengono interazioni che portano alla produzione ed elaborazione delle informazioni. Indipendentemente dalla loro composizione specifica, i sistemi informativi aziendali svolgono, secondo combinazioni differenti, tre funzioni principali:

· Acquisizione di dati e comunicazione

· Registrazione (storage) e ricerca dei dati

· Trattamento e reporting


Database e Data Warehouse rappresentano gli strumenti principali tramite i quali realizzare l'archiviazione e il recupero dei dati, sui quali poggia la quasi totalità delle altre applicazioni.
Un sistema di gestione di basi di dati (DataBase Management System - DBMS) è un sistema software in grado di gestire collezioni di dati molto grandi e condivise, in modo che applicazioni e utenti diversi possano accedervi anche simultaneamente, secondo le opportune modalità.
Un DBMS deve garantire affidabilità, intesa come la capacità del sistema di conservare intatta la base di dati anche in caso di malfunzionamenti hardware e software, e privatezza, intesa come la capacità di vincolare le azioni sui dati in funzione dei permessi associati alle persone che le eseguono.
I DBMS sono sistemi transazionali, vale a dire destinati a conservare i dati prodotti dalle transazioni aziendali Per questa ragione, essi sono progettati con particolare attenzione alle modalità di aggiornamento dei dati, poiché è fondamentale mantenere allineata l'informazione conservata con la situazione reale.
La crescita dell'importanza dell'analisi dei dati ha portato a una separazione architetturale dell'ambiente transazionale da quello dedicato all'analisi rappresentato dai Data Warehouse (DW), cioè “depositi” di dati provenienti da differenti sorgenti, destinati a conservare grandi quantità di dati con un livello di profondità temporale molto elevato (nei DW si possono immagazzinare anni di storia dell'azienda mentre, tipicamente, nei DBMS transazionali sono conservati solo i dati più recenti, necessari all'operatività corrente).
La tecnologia di memorizzazione nei DW è orientata alla consultazione e non all'aggiornamento delle informazioni. Questo vuol dire che, mentre nei DBMS è fondamentale che l'informazione sia aggiornata frequentemente e perfettamente allineata con la realtà, nei DW si possono verificare dei disallineamenti temporanei, dovuti alla modalità di aggiornamento dei dati che, tipicamente, viene svolta in modalità batch (ad esempio, di notte quando le attività aziendali sono ferme).
A loro volta, i DW possono essere suddivisi nuovamente in sottoinsiemi di dati specificamente selezionati per fini di analisi, i quali prendono il nome di Data Mart (DM). I DM sono, quindi, delle collezioni di dati con una profondità temporale elevata e relativi ad uno specifico obiettivo di analisi. Poiché contengono meno dati rispetto ad un DW, le operazioni di analisi sui DM sono in genere più veloci.

mercoledì 12 novembre 2008

Approfondimenti su SQL: clausole where, having, group by

  • La clausola GROUP BY: Una clausola GROUP BY , come suggerito dal nome, raggruppa un set selezionato di righe in un set di righe di riepilogo in base ai valori di una o più colonne o espressioni. Per ogni gruppo viene restituita una sola riga. La sintassi generale, molto semplice è la seguente: GROUP BY
  • La clausola Having: La proposizione HAVING consente di specificare i record visualizzati dopo che questi sono stati raggruppati dalla proposizione GROUP BY. Vediamo la sintassi di questa clausola: SELECT . . . FROM . . .
    GROUP BY . . .
    HAVING (condizione di ricerca che deve essere soddisfatta dal gruppo)
  • La clausola WHERE: Specifica una condizione di ricerca per la restrizione delle righe restituite. Where limita le selezioni ed include solo le righe che corrispondono ai criteri specificati. Il suo utilizzo generale è: WHERE campo predicato valori

Particolarità riscontrate lavorando con l'SQL in Access: differenze rispetto agli altri DBMS


Un Data base Management System (DBMS) è un sistema software per la creazione e la gestione di basi dati. Il DBMS, pertanto, è un insieme di programmi rivolti alla gestione di dati memorizzati in archivi. A differenza di altri DBMS, in Access un unico file comprende tutti gli strumenti per lo sviluppo delle applicazioni: tabelle, query, maschere e report.

1. Le tabelle sono strutture bidimensionali identificate da campi e da record. Nelle tabelle i dati vengono organizzati in colonne e righe.

2. Il termine query invece si riferisce all'interrogazione del database finalizzata all'ottenimento dei dati. Nella maggior parte dei casi le query vengono formulate in linguaggio SQL (Structured Query Language). Le Query SQL sono quindi stringhe di comando utilizzate per ottenere dati da un Database.

3. Le Maschere invece costituiscono l'interfaccia primaria tra l'utente ed il DataBase di Access. Esse permettono la visualizzazione, la modifica, l'inserimento e l'eventuale eliminazione dei dati. Di seguito un esempio di maschera:

4. Infine Access permette la creazione di report, che costituiscono uno strumento quanto mai efficace per presentare i dati in un formato adatto ad essere stampato. In un report le informazioni possano essere organizzate in modo schematico, chiaro e diretto.

Inoltre in Access è possibile creare 5 tipi di query:

Query a campi incrociati: permette di raggruppare dati riepilogativi estratti da una o più tabelle.

Query di eliminazione: elimina record da una o più tabelle secondo una predeterminata condizione.

Query di aggiornamento: utilizzate per modificare i dati in una o più tabelle esistentiQuery di accodamento: aggiunge ai record di una tabella i record provenienti da una seconda tabella.

Query di creazione tabelle: utilizzate per esportare una tabella in un altro Data Base.

Attraverso la maschera di creazione query presente in access è possibile selezionare una di queste tipologie di query e procedere in maniera semplice e diretta alla interrogazione della base di dati.

ANSI SQL


L'acronimo ANSI SQL sta per Structured Query Language dell'American National Standards Institute e si riferisce ad uno standard creato per il famoso linguaggio di interrogazione SQL. Oltre allo standard ANSI esiste quello ISO (International Organization for Standardization). L'American National Standards Institute è una organizzazione privata no-profit statunitense che si occupa della creazione e dello sviluppo di standard per prodotti, servizi e sistemi. Si occupa altresì di coordinare gli standard realizzati con quelli internazionali, al fine di creare un linguaggio informatico e tecnologico proteso alla universalità. SQL nasce a metà degli anni settanta nei laboratori dell'IBM e viene adottato dall'ANSI come standard nel 1986, seguita l'anno successivo dall'ISO. La prima versione standard è denominata SQL/86. Successivamente furono messe a punto ulteriori versioni: SQL/89, SQL/92 e SQL/2003. Questo processo di standardizzazione aveva come fine ultimo l'intento di creare un linguaggio universale che funzionasse su tutti i DBMS relazionali, obiettivo quanto mai ambizioso che non fu mai raggiunto completamente. Difatti le versioni che furono immesse nel mercato si attenevano solo in minima parte allo standard ANSI ed ognuna di esse presentava importanti differenze.