Data Warehouse Appliances and Column-oriented DBMS

mercoledì 9 luglio 2008 alle 09:48 | Pubblicato su Business Intelligence, Diario, Installation and Configuration | Lascia un commento

Non molto tempo fa ho aggiunto a questo blog una nuova categoria: “Business Intelligence“.  In quel periodo ho avuto modo di esplorare, seppur per poco, il mondo della business intelligence cercando di capire cosa fosse, cos’è il data warehouse, i cubi e OLAP. Poi ho avuto un periodo di lavoro particolarmente intenso che ha interrotto i miei approfondimenti. Ora per fortuna sto riprendendo un po’ di fiato, e contemporanemente Kevin Closson ha ripreso a scrivere sul suo blog con una certa regolarità. A dire il vero a tratti sembra un po’ inacidito, perchè gli ultimi post hanno un sapore vagamente polemico. In particolare ho trovato istruttivi e interessanti gli ultimi tre post della serie “I Know Nothing About Data Warehouse Appliances and Now, So Won’t You. Tuning Data Warehouse Appliances” (Part I, Part II, Part III). Questi post mi permettono di riprendere il mio cammino di esplorazione del mondo della Business Intelligence.

Data Warehouse Appliance

Indirettamente questa nuova serie di post di Kevin Closson mi hanno fatto conoscere una cosa nuova: i “Data Warehouse Appliance“. In sostanza si tratta di apparecchi dedicati al datawarehouse, in cui è inclusa una parte harware e  una parte software specializzato, quindi riguarda l’argomento Business Intelligence su cui devo imparare ancora un sacco di cose. Un altro motivo ho trovato interessante  i post di Kevin Closson  è che sono dedicati a smentire degli slogan pubblicitari. Closson attacca più volte il CEO (e fondatore) di DATallegro, un produttore di DW Appliance appunto.

Column-oriented DBMS

Come ha ricordato nel primo post della serie, Kevin Closson ha avuto gia modo di criticare alcune teorie su cui in pratica pare facciano leva sistemi come DATAllegro o Vertica. Egli infatti rimanda a due suoi vecchi post ( columnar technology I, columnar technology II). Qui si parla della teoria dei database Column-oriented in contrapposizione ai database row-oriented. La ricorrenza di questo termine mi ha spinto a cercare di capire un po’ di cosa si trattasse. Il commento di Jonathan Lewis mi è piaciuto molto perchè forse centra il problema, ovvero di propagandare un concetto per quello che non è.  In realtà per quel poco che ho capito e letto il concetto è interessante, anche se come appunto ricorda Jonathan Lewis non stravolge la teoria dei database relazionali. Utile al riguardo mi sembra il commento di Maxim Grinev che cita un articolo in cui vengono confrontate le due tecniche (row-store contro column-store).

Vorrei poter riportare qui qualche informazioni tecnica più precisa e completa, ma siccome non sono ancora così preparato mi limito a citare un po’ di riferimenti e a riportare un po’ quello che ho capito fin’ora. Mi prendo la libertà di usare il blog per quello che è e no per una rivista tecnica specializzata o una enciclopedia. Quindi mi si scusi per l’incompletezza delle informazioni.

Per chi fosse interessato ad approfondire (me compreso) aggiungo alcuni riferimenti:

  • Progetto C-store, vi sono un po’ di documenti che descrivono il concetto di column-oriented DBMS
  • The Database Column. Si tratta di un blog sui DBMS su cui scrivono vari autori fra cui Michael Stonebraker, precursore dei database relazionali, co-fondatore di Vertica e attualmente pare precursore dei column-oriented DBMS.

La mia prima impressione, senza aver studiato tutti i detagli dei sistemi “column-oriented” è che in ambienti datawarehouse, quindi in presenza di dati spesso molto de-normalizzati il concetto di base di organizzare i dati per colonne piuttosto che per righe sembra aver senso. Il fatto è che alcuni venditori di DW Appliance forse lo pubblicizzano,m insieme ad altre cose, come la panacea di tutti i mali. Si tratta delle solite esagerazioni pubblicitarie e propagandistiche che personalmente mi infastidiscono e a quanto pare infastistidiscono anche Kevin Closson.

A pensarci bene, qualche giorno fa, in un post intitolato “Of Gag-Orders, Exitement and New Products” cita una frase di Larry Ellison in cui annuncia per il prossimo Settembre un grossa novità: che si tratti di un Oracle Datawarehouse Appliance ??? ;) staremo a vedere.

Architetture Data Warehouse

venerdì 11 aprile 2008 alle 11:17 | Pubblicato su Business Intelligence | Lascia un commento

Sto scorrendo il capitolo 3 del redbook IBM “Dimensional Modeling: In a Business Intelligenge Environment” in questo capitolo parla ad un certo punto delle possibili architetture di un data warehouse proponento tre possibilità:

  1. Enterprise data warehouse
  2. Independent data marts
  3. Dependent data marts

Riporto anche un’immagine che da’ un po’ un’idea:

In sostanza l’architettura a “data mart indipendenti” è un’architettuttura un po’ disordinata, dove ognuno si fa il proprio data mart indipendente, senza curarsi del fatto che molti dati sono comuni con quelli di altri dipartimenti.

L’architettura a “data mart dipendenti” invece è una archittettura più ordinata, potremmo dire un po’ normalizzata, perchè se più data mart hanno dati comuni essi vengono condivisi e non ridondati, ottenendo gli stessi vantaggli che la normalizzazione porta nel modello relazionale.

Proseguendo nel capitolo si trova un’altra interessante figura, in cui si distingue tra “data warehousing environment” e “data warehouse.

Mi ha lasciato perplesso il fatto che questo paragrafo si afferma che EDW (Enterprise Data Warehouse) è principalmente in terza forma normale (3NF). Se non ho capito male gli strumenti OLAP (quando ci sono) si pongono tra l’EDW, il data mart e l’utente che fa i “report”.

Modello dimensionale

Prima di descrivere le architetture data warehouse il redbook parla dei modelli dimensionali utilizzati per i data mart, generalmente si parla di modello a stella, però vi sono tre varianti:

  • Modello a stella
  • Modello a fiocco di neve
  • Modello multistella

L’immagine che descrive i tre modelli è questa:

In pratica i modelli a fiocco di neve (snowflake) e il modello multistella (multi-star) sono un’estensione del modello a stella.

OLAP: chi era costui?

venerdì 11 aprile 2008 alle 11:38 | Pubblicato su Business Intelligence | Lascia un commento

Nei buchi di tempo continuo ostinatamente nella mio sforzo di approfondimento ed esplorazione della “Business Intelligence”, stimolato in ciò anche da quanto Richard Foote ha scritto ieri. A questo riguardo voglio voglio dire che ogni giorno mi sforzo per non stare seduto ad aspettare che le cose accadano.

Leggendo e rileggendo la breve descrizione introduttiva di OLAP data su dwreviw.com ho avuto l’impressione che il concetto di OLAP sia trasfersale ai concetti di Business Intellingence, Data Warehouse e Data Mart.

Se no ho capito male si può dire che OLAP (On-Line Analitycal Processing) è un’insieme di tecniche (o una tecnica?) per ritagliare e assemblare i dati al bisogno degli utenti. Un frase ricorrente è slice and dice che letterlamente vuol dire ritagliare e fare a cubetti. Gli utenti sono i “business users” quindi credo si possa dire siano in genere i “manager” , i dirigenti, i direttori, gli amministratori o i responsabili (per usare un termine generico come lo è manager).

Sempre su dwreview.com mi sembra interessante la panoramica sul Data Warehouse (Data Warehouse Overiview). Qui si conferma la differenza di vedute sui concetti di Data Mart e Data Warehouse che vengono addirittura separati come simbolo.

Potremmo forse pensare a OLAP come a il sottoinsieme della Business Intelligence in cui il tipo di elaborazione dei dati parte gia da un modello dimensionale, e in cui l’analisi è di tipo aggregato, del tipo a quanto pare più richiesto dal settore commerciale (il marketing).

OLAPReport, o meglio Nigel Pendse (che pare sia uno dei massimi esperti di sistemi OLAP) ha redatto le regole FASMI che un sistema deve rispettare per potersi definire un sistema OLAP.

Oracle, nella documentazione relativa alla versione 11g riporta una interessante definizione:

“Online Analitycal Processing (OLAP) analizza i dati da un data warehouse per processi amministrativi come previsioni, pianificazione e anlisi “cosa succede se”

La versione originale è:

Online Analytical Processing (OLAP) analyzes data from a data warehouse, for business processes such as forecasting, planning, and what-if analysis.”

Oracle pare aver fatto una estensione del database relazionale per farlo apparire come un sistema OLAP vero e proprio. Di questa implementazione ancora non so nulla, ma spero di colmare presto la mia lacuna (magari quando ho capito meglio cos’è veramente OLAP).

Business Intellingence – Prima definizione

mercoledì 9 aprile 2008 alle 09:37 | Pubblicato su Business Intelligence | Lascia un commento

Ho deciso di utilizzare una sorta di approccio evoluzionista, nel senso che comincio a scrivere quello che imparo o leggo, prima di averlo digerito e compreso a fondo. Ad esempio di ciò riporto delle definizioni come le ho capite io ad oggi.

Business Intelligence (BI)

Con questa “espressione” si intende generalmente la disciplina informatica che comprende metodi, applicazioni, tecniche di integrazione ed analisi dei dati aziendali. si potrebbe dire che è la scienza della trasformazione dei dati aziendali in informazioni per gli amministratori (i manager, coloro che devo prendere delle decisioni). Queste informazioni hanno appunto lo scopo di aiutare a prendere delle decisioni “corrette”. Il problema è le due parole compenenti l’espressione (ma questo in realtà purtroppo vale per molti termini inglesi) non vengono tradotte, un po’ perchè la traduzione non è perfetta, un po’ perchè usare termini inglesi dà più enfasi. Business, potrebbe essere tradotto benissimo con la parola “affari” (in effetti non rende molto, ma anche usare la parola business dappertutto come avviene in molti discorsi in italiano pur essendo diventato la normalità rimane brutto). Intelligence è un termine più particolare, il significato più comune è quello di intelligenza. Intelligenza va interpretato come la facoltà di capire. Una traduzione corretta di intelligence, che può aiutare è quella di informazione.

Sul concetto di informazione ho piacere di fare un piccolo approfondimento/digressione in onore al corso di “Teoria dell’informazione della Trasmissione” che ho seguito all’università. Rimando quindi alla pagina della wikipedia sulla teoria dell’informazione e al documento originale di Shannon, l’inventore di tale teoria per chi volesse ripassare questa teoria.

Quindi l’espressione Business Intelligence può in qualche modo essere tradotta in italiano con l’espressione “informazioni sugli affari”. Il concetto alla base è che c’è una differenza tra dati e informazione.

Data Warehouse (DW)

Il data warehouse è il magazzino dei dati usati dagli strumenti di Business Intelligence. La traduzione magazzino dati è anche la traduzione letterale delle parole data e warehouse.

Data Mart

Qui la situazione si ingarbuglia un po’. Do’ subito un riferimento interessante che ho trovato ieri “opensourceanalytics.com“, un blog che per la verità non viene aggiornato da un po’ di tempo ma che comunque contiene qualche informazione interessante, ad esempio un post intitolato “Data Mart vs Data Warehouse“. In cui l’autore spiega come vi siano due diverse visioni del rapporto tra data mart e data warehouse.

In ogni caso un data mart può essere visto come un sotto insieme dei dati di un data warehouse specifici di una area di interesse, che significa che possono essere dati specifici di un settore aziendale e specifici per certi utenti. Questo significa che anche gli stessi dati, elaborati per amministratori diversi vengono elaborati in modo diverso, costituiscono due data mart.

OLAP (On-Line Analitical Processing)

Qui ho le idee ancora abbastanza confuse, devo ancora completare la lettura su un sito suggerito nei commenti al precedente post riguardo alla definizione di un sistema OLAP mediante la regola FASMI. Ricorda molto le motivazioni che nel 1985 spinsero Codd a pubblicare le famose “12 Rules” per i database relazionali.

Probabilmente quindi il prossimo post parlerà un po’ più di OLAP.

Una risorsa di informazioni

martedì 8 aprile 2008 alle 08:35 | Pubblicato su Business Intelligence, Documentazione | 5 commenti

Ultimamente sto cercando di allargare i miei orizzonti, credo anzi di essere finito in una spirale perversa che mi porta a cercare di conoscere sempre più cose. Sono in preda ad una sorta di mania di conoscenza, di sapere. Purtroppo la mia memoria non mi ha mai dato un grande aiuto, ma devo anche dire che alle volte sono io pigro. Fatto stà che sono alla continua ricerca di stimoli.

Il campo in cui ho deciso di allargare le mie conoscenze è il campo della “business intelligence” e del “data warehouse”. Termini il primo oscurissimo, il secondo un po’ meno, ma che ho sempre fatto fatica a digerire. Allora gradualmente sto cercando di prendere confidenza per capire bene di cosa si tratta.

Casualmente, come mi capita spesso, mi sono imbattuto pochi giorni fa in un interessante sito dove si possono trovare un sacco di documenti. si tratta di www.redbooks.ibm.com.

Su questo sito, si trovano un sacco di documenti, sia articoli che veri e propri libri, prodotti da IBM allo scopo di “educare” all’utilizzo dei prodotti della stessa IBM.

Ad esempio ora sto dando un’occhiata al libro intitolato “Dimensional Modeling: In a Business Intelligence Environment” nel quale vi è anche una descrizione generale dei concetti di Business Intelligence, di Data Warehouse e di tutto quanto concerne questi argomenti. Il libro appare ripetitivo, ma aiuta molto chi come me entra nell’argomento da “fuori”, ovvero senza conoscerlo bene.

Mi ripropongo di fare dei post in cui cercherò di riportare quanto imparerò, a tal fine ho già predisposto una nuova categoria: “Business Intelligence”. Ovviamente se la fuori c’è qualche anima caritatevole che conosce altre fonti di informazioni interessanti non esiti a segnalarmele.

Crea un sito o un blog gratuitamente presso WordPress.com. | The Pool Theme.
Entries e commenti feeds.

Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 71 follower