• Non ci sono risultati.

CAPITOLO 6 STRUTTURA BACK-END ESISTENTE vs MIGRATA

6.3 Esempi di confronto performance

6.3.2 Esecuzione query nel DWH

Si è pensato possa essere interessante fornire un altro esempio di comparazione tra i sistemi di Oracle e Greenplum che esula dalla migrazione di per se. Si è provato, ad effettuare la create di una tabella, e si è effettuata un’insert su essa di tutti i dati già

presenti nel DB. Entrando nel dettaglio, si è creata una copia della FT_CONTRACT, denominata FT_CONTRACT_COPY sia con il tool Toad sia con pgAdmin e si è fatto in modo che essa venga infasata tramite un’insert con tutti

i dati contenuti attualmente nella FT_CONTRACT. Le tempistiche risultanti possono venir considerate come ulteriore spunto di confronto.

a) GREENPLUM

Query eseguita:

create table FT_CONTRACT_COPY as select * from FT_CONTRACT where 1=2

DISTRIBUTED BY (id_contratto);

insert into FT_CONTRACT_COPY select *

from FT_CONTRACT

where dat_fin_val = to_date('31129999','ddmmyyyy');

Dopo aver effettuato la insert la stringa risultante è stata la seguente: ‘Query returned successfully: 15534538 rows affected, 41119 ms execution time’.

L’esecuzione è stata effettuata in 41 secondi circa.

b) ORACLE

Query eseguita:

create table FT_CONTRACT_COPY tablespace TBS_TRASH as select * from FT_CONTRACT

Tesi di Laurea Magistrale 2015/2016

146

CREATE UNIQUE INDEX DWH_DM.PK_FT_CONTRACT_H ON

DWH_DM.FT_CONTRACT_COPY

(ID_CONTRACT)

insert into FT_CONTRACT_COPY select *

from FT_CONTRACT

where dat_fin_val = to_date('31129999','ddmmyyyy');

Dopo oltre i 90 minuti di esecuzione si è deciso di abortire la query e provare ad effettuare delle operazioni di tuning che potessero migliorarne i tempi.

In primis si è provata la creazione della FT_CONTRACT_COPY in modalità compressa, questa modalità è introdotta dalla versione Oracle 9i e consiste nel memorizzare i record in una forma codificata, ciò consente di risparmiare tempo, nonché di spazio su disco.

create table FT_CONTRACT_COPY tablespace TBS_TRASH compress as select * from FT_CONTRACT

where 1=2;

CREATE UNIQUE INDEX DWH_DM.PK_FT_CONTRACT_H ON

DWH_DM.FT_CONTRACT_COPY

(ID_CONTRACT)

Anche in questo caso si è proceduto con l’abort della insert dopo i 90 min di

esecuzione.

Un ulteriore intervento di Tuning è stato effettuato impostando gli hint nella insert in modo che la query venga eseguita con 16 paralleli in lettura e 16 in scrittura, modificando la insert in:

alter session enable parallel DML;

insert /*+parallel(a,16)*/ into FT_CONTRACT_COPY a

Tesi di Laurea Magistrale 2015/2016

147

from FT_CONTRACT b

where dat_fin_val = to_date('31129999','ddmmyyyy');

In questo caso l’insert è avvenuta in 57 minuti.

I tempi, dunque, non sono minimamente paragonali per l’esecuzione dell’operazione di insert: si passa da un’unità di misura ristretta in secondi a quasi

un ora di elaborazione.

Tesi di Laurea Magistrale 2015/2016

148

CONCLUSIONE

La migrazione sviluppata ha fornito lo spunto per approfondire le conoscenze personali dei diversi tool utilizzati in ambito professionale e formare uno spirito critico verso le diverse architetture esistenti nell’ambito del data warehousing. E’ stato un progetto di tesi sfidante, in cui con le competenze già apprese si sono

dovute adattare strutture esistenti per renderle descrivibili anche a chi non conosce l’ambito di analisi o non ha dimestichezza con Oracle. Al tempo stesso, si sono dovute studiare nuove logiche di implementazione e l’architettura Greenplum che

fino a questo momento non era mai stata utilizzata in ambito progettuale.

Oltre alla realizzazione della migrazione delle strutture reali, si è provveduta alla creazione di strutture ad-hoc che potessero essere mostrate nel presente eleborato, potesse venirne descritta la logica di caricamento e portassero alla definizione di un Data Mart di interesse analitico. Da esso, utilizzando le sole strutture create nel corso della migrazione, si è passati alla definizione di un universo su cui generare un report, dando dimostrazione del legame tra i processi Back-End volti alla gestione dei dati e quelli Front-End incentrati sulle analisi richieste dagli utenti. Si sono utilizzati report esistenti come esempio per potersi porre dal lato dell’utente e

poter immaginare cosa potesse essere utile analizzare. Sono stati effettuati diversi tentativi alternando varie combinazioni di fattori per poter produrre reportistica significativa, i cui dati risultanti potessero venir mostrati.

Durante il percorso di formazione e il periodo di sviluppo si è avuto modo di comparare costantemente i sistemi adottati, trovandone le analogie e le differenze soprattutto in termini di performance. Si è provveduto ad approfondire le tematiche

Tesi di Laurea Magistrale 2015/2016

149

trattate ponendo il focus sulle perfomance, in particolare sui tempi di elaborazione. Per cercare di fornire un confronto quanto più accurato possibile, si sono creati degli esempi ad-hoc che permettessero di evidenziare le differenze di calcolo dei due sistemi: un esempio facente riferimento al DWH conosciuto, l’altro più generico che mettesse in evidenza i tempi di creazione e inserimento record in una tabella. Entrambi gli esempi mostrano una netta convenienza, dal punto di vista dei tempi, nell’utilizzo dell’architettura Greenplum.

Per concludere, sebbene i test di performance riportano il sistema migrato come preferibile a livello di tempistiche, per quanto riguarda il DWH presentato, non si può dire con certezza che sia il migliore. Per l’uso che si sta facendo attualmente risulta essere un sistema valido, ma anche l’utilizzo di Oracle non ha causato

problemi di sorta. La scelta della tecnologia che si vuole utilizzare va unita a considerazioni circa l’utilizzo che si vuole fare del Data Warehouse e delle

operazioni più frequenti che vengono compiute. Ad esempio, Oracle supporta diversi tipi di linguaggi di programmazione, Greenplum un set più ristretto; oppure, se si ragiona lato manageriale, Oracle è noto negli ambienti professionali, Greenplum è disponibile come Open Source e questo può far la differenza quando vengono prese delle decisioni ad alto livello.

Tesi di Laurea Magistrale 2015/2016

Tesi di Laurea Magistrale 2015/2016

151

RIFERIMENTI

[1] Ralph Kimball, Margy Ross, The Data Warehouse Toolkit, Third Edition, John Wiley & Sons, Inc, 2013.

[2] W. H. Inmon, A Tale Of Two Architectures, InmonCif.com, ultimo accesso Gennaio, 2017.

[3] Inmon, W. H. Building the Data Warehouse, Fourth Edition, John Wiley & Sons, 2005.

[4] http://www.computerweekly.com/tip/Inmon-vs-Kimball-Which-approach-is- suitable-for-your-data-warehouse, ultimo accesso Dicembre 2016

[5] http://tdan.com/data-warehouse-design-inmon-versus-kimball/20300, ultimo accesso Marzo 2017

[6] https://bennyaustin.wordpress.com/2010/05/02/kimball-and-inmon-dw-models/, ultimo accesso Marzo 2017

[7] http://tdan.com/data-warehouse-design-inmon-versus-kimball/20300, ultimo accesso Marzo 2017

[8] http://datawarehouse4u.info/ETL-process.html, ultimo accesso Dicembre 2016

[9] Luca Cabibbo, Introduzione ai data warehouse dimensionali, http://cabibbo.dia.uniroma3.it/dw/pdf/110_intro_dw_dim_architettura.pdf, ultimo accesso Novembre 2016

[10] http://www.zentut.com/data-warehouse/kimball-and-inmon-data-warehouse- architectures/, ultimo accesso Marzo 2017

[11] http://www.bistrategy.it/app_bi_origini_definizione.aspx, ultimo accesso Febbraio 2017

[12] https://it.wikipedia.org/wiki/Business_intelligence, ultimo accesso Gennaio 2016

[13] http://gpdb.docs.pivotal.io/4350/admin_guide/intro/partI.html, ultimo accesso Marzo 2017

[14] https://italy.emc.com/about/news/press/2011/20110921-02.htm, ultimo accesso Febbraio 2017

Tesi di Laurea Magistrale 2015/2016

152

[15] http://www.ictbusiness.it/cont/news/emc-greenplum-i-big-data-spiegati-alle- imprese/29129/1.html, ultimo accesso Gennaio 2017

[16] http://greenplum.org/, ultimo accesso Aprile 2017

[17] https://it.wikipedia.org/wiki/Oracle, ultimo accesso Aprile 2017

[18] http://www.html.it/pag/16910/l-architettura-di-oracle/, ultimo accesso Gennaio 2017

[19] https://docs.oracle.com/database/122/CNCPT/introduction-to-oracle- database.htm#CNCPT001, ultimo accesso Gennaio 2017

[20]

https://help.sap.com/doc/businessobject_product_guides_boexir4_it_xi4_universe_ design_tool_it_pdf/XI4.0.4/it-IT/xi4_universe_design_tool_it.pdf, ultimo accesso Aprile 2017

[21] http://www.nwlapcug.com/come-comprimere-la-tabella-di-dati-di-oracle/, ultimo accesso Aprile 2017

[22]

https://it.wikipedia.org/wiki/Normalizzazione_(informatica)#Prima_Forma_Normal e, ultimo accesso Aprile 2017

[23] http://datawarehouse4u.info/OLTP-vs-OLAP.html, ultimo accesso Aprile 2017

[24] https://it.wikipedia.org/wiki/Data_mart, ultimo accesso Aprile 2017

Tesi di Laurea Magistrale 2015/2016

153

RINGRAZIAMENTI

Sicuramente questa sarà la sezione che meno si presterà ai formalismi fin qui mantenuti. Prima di romperli in modo definitivo, però, ci tenevo a ringraziare distintamente la mia relatrice, la prof.ssa Alina Sirbu e la mia tutor aziendale, nonché People Manager, Cristina Fea; entrambe si sono messe a disposizione per il raggiungimento di questo traguardo sia per gli aspetti prettamente professionali sia per facilitarmi il più possibile in quelli burocratici e logistici.

Ringrazio i miei genitori che mi hanno sostenuto in questi anni e che hanno contribuito a rendermi la persona che sono. Grazie ad Alessandro, anche se ormai sei (quasi) grande, sarai sempre la mia piccola peste.

Grazie ad Antonio perché è un complice perfetto e anche se la distanza non ci aiuta, riesce sempre e comunque ad essere presente.

Grazie a nonno Agostino e Tonino e a nonna Elsa e Rosangela che, in un modo o nell’altro, sono stati sempre presenti. Grazie ai membri del gruppo Family: zia Enza, zio Guido, zia Arianna, zio Francesco e a Martina, Marco, Francesca e Leonardo che hanno fatto sentire sempre la loro presenza. Grazie a zio Massimo, zia Nicla e Luca, ovviamente accompagnato da un forte abbraccio.

Grazie ad Umberto e Antonietta che mi hanno accolto come una figlia e mi fanno costantemente sentire il loro affetto.

Un grazie a Fabio e Valentina, compagni di tanti e lunghi viaggi sempre pieni di emozioni, uniti da una sola e forte passione. A voi che, anche in mezzo a più di 41.000 persone, nelle città più diverse e distanti, riuscite sempre a farmi sentire A CASA.

Grazie a Valentina, un’Amica, che ha pazientemente ascoltato i miei sfoghi, che c’è sempre stata per un supporto morale e ha tifato per me in questi mesi.

Grazie ad Antonio che ritengo una guida e mi ha insegnato molto di più di quanto potessi apprendere in una qualsiasi aula universitaria, non facendo mai mancare la parola giusta e un sorriso per motivarmi.

Tesi di Laurea Magistrale 2015/2016

154

Grazie ai miei colleghi che non posso nominare tutti singolarmente, ma ogni giorno mi confermano quanto sia importante la forza del gruppo, valore in cui ho sempre creduto e che reputo fondamentale. In particolare voglio ringraziare Alessandro, Giacomo, Giuseppe, Luca e Stefano per un’idea, un consiglio, una dritta, la disponibilità ad ascoltarmi e a rendersi rintracciabili per potermi supportare quando ne ho avuto bisogno. Grazie a Claudio che è stata la prima persona di riferimento in azienda. Grazie ad Annamaria che mi sprona ad essere critica su ogni cosa che faccio e mi trasmette tantissimo. Grazie a Valerio con cui un anno fa ho iniziato un nuovo percorso lavorativo e da allora è in assoluto la persona che tutti i giorni sopporta (e causa) le mie frecciatine e i miei sfoghi, senza avermi fatto mancare il supporto per il raggiungimento di questo traguardo.

Grazie anche a chi nonostante tutto è rimasto presente come poteva.

Potrei concludere con un modo di dire che forse è venuto in mente alla maggior parte dei lettori, che approfitto a ringraziare per aver letto questo elaborato, ma voglio terminare scrivendo: Grazie a Me perché ce l’ho fatta !!!

Documenti correlati