Tesina di analisi di basi di dati: Buoni sconto

annuncio pubblicitario
Tesina di analisi di basi di dati: Buoni sconto Descrizione del problema
Una società di analisi di mercato vuole studiare l’utilizzo dei buoni sconto nella grande
distribuzione. I buoni sconto sono dei particolari biglietti che i consumatori possono ritagliare dalle
riviste, giornali, confezioni, ecc.
I buoni sconto sono utilizzati al posto del denaro per pagare la spesa, ottenendo quindi uno sconto
sugli specifici prodotti acquistati e per i quali sono validi.
L’utilizzo di un buono sconto all’acquisto di un prodotto è detto redenzione del buono, quindi un
buono è definito redento. I produttori distribuiscono molti buoni sconto per i loro prodotti, ma solo
una parte è effettivamente redenta, cioè solo alcuni sono usati all’acquisto di tali prodotti.
La società di analisi di mercato è interessata ad analizzare il numero di buoni sconto redenti e il
valore dello sconto ottenuto.
L’analisi deve essere condotta tenendo conto delle seguenti caratteristiche. I buoni sconto possono
essere redenti durante periodi di tempo limitati, definiti campagne promozionali. Un prodotto può
essere oggetto di diverse campagne promozionali, ciascuna delle quali può avere una durata diversa,
espressa in numero di settimane (es. una campagna può durare una settimana e un’altra tre
settimane). Il prodotto appartiene a uno specifico settore (es. “frutta”). I settori sono aggregati in
categorie merceologiche (es. “alimentari”). Inoltre, un prodotto è fornito da uno specifico
produttore (es. “Barilla”).
La società vuole analizzare il numero di redenzioni e lo sconto ottenuto in ogni supermercato. I vari
supermercati appartengono a delle catene (es. “Carrefour”, “Auchan”). Ogni supermercato si trova
in una città. Inoltre l’analisi deve essere svolta tenendo conto anche della provincia, della regione e
dello Stato in cui si trova il supermercato in cui i buoni sono redenti.
L’analisi deve considerare la data in cui avviene la redenzione dei buoni, il giorno della settimana, il
mese e l’anno.
Infine, i buoni sconto redenti devono poter essere analizzati in base al mezzo di distribuzione
utilizzato per diffonderli: alcuni buoni sconto possono essere messi nelle riviste, altri su giornali,
depliant o confezioni, altri su alcuni di questi mezzi o eventualmente su tutti. Alla redenzione di un
buono, è possibile risalire ai mezzi con cui era stato distribuito.
Il data warehouse realizzato deve contenere le informazioni relative agli anni 1998-2008.
Alcune delle interrogazioni frequenti alle quali la società di analisi di mercato è interessata sono le
seguenti:
a) Per ogni supermercato selezionare la percentuale di buoni sconto redenti rispetto al numero
totale di buoni sconto redenti nella catena a cui appartiene. Si consideri solo la categoria
merceologica “alimentari” e le redenzioni avvenute nel 2007.
b) Per la categoria merceologica “alimentari”, separatamente per ogni catena di supermercati,
selezionare lo sconto mensile totale ottenuto dai consumatori usando i buoni sconto, e lo
sconto totale dall’inizio dell’anno per ogni mese.
c) Per ogni anno e per ogni giorno della settimana, selezionare lo sconto medio ottenuto per
ogni buono redento considerando solo la categoria merceologica “alimentari”.
Page 1 of 2
d) Per ogni supermercato e per ogni mese, assegnare un rank ai prodotti per numero di
redenzioni, dal più alto al più basso.
e) Per ogni anno e per ogni categoria merceologica, selezionare lo sconto totale ottenuto dalla
redenzione dei voucher per le diverse combinazioni di mezzi di distribuzione.
f) Per ogni prodotto, assegnare un rank alle campagne promozionali in base al numero di
redenzioni decrescente nel 2007.
g) Per ogni valore di durata delle campagne promozionali, selezionare il numero medio di
redenzioni giornaliere nel 2007, considerando solamente il produttore “Ferrero”.
Progettazione
1)
2)
3)
4)
5)
Progettare 2 sorgenti dati relazionali in cui sono memorizzate le informazioni utili per alimentare il data
warehouse descritto in precedenza. Per ogni sorgente è necessario
• definire con un diagramma E-R lo schema concettuale della base di dati,
• costruire uno schema logico relazionale normalizzato per la stessa base di dati
• realizzare gli script necessari per la creazione delle tabelle della base di dati in Oracle XE o Microsoft
Visual Studio 2005
• alimentare la base di dati con almeno 1000 tuple.
Progettare il data warehouse necessario per soddisfare almeno le richieste descritte nelle specifiche del
problema. È possibile inoltre estendere le specifiche del problema. Per il data warehouse è necessario
• definire con uno o più Dimensional fact model lo schema concettuale del data warehouse
• definire il modello relazionale (ROLAP) del data warehouse
• decidere come gestire la dinamicità (variazione) dei dati all’interno delle dimensioni.
• realizzare gli script necessari per la creazione delle tabelle del data warehouse in Microsoft Visual
Studio 2005 e in Oracle XE.
Definire il processo ETL necessario per effettuare il caricamento dei dati presenti nelle 2 sorgenti dati
definite al punto (1) all’interno delle tabelle del data warehouse che avete creato al punto (2). Realizzare
il processo di ETL con un progetto di Business Intelligence di tipo “Integration services” mediante
Microsoft Visual Studio 2005.
Per le interrogazioni frequenti (a)-(g) descritte nelle specifiche del problema
• esprimere le interrogazioni utilizzando il linguaggio SQL esteso da eseguire in Oracle XE.
• usare Microsoft Visual Studio 2005 (Analysis Services Project) per creare i cubi ritenuti utili per
rispondere velocemente alle interrogazioni proposte
Considerando le caratteristiche del data warehouse realizzato e la cardinalità dei dati memorizzati nel
data warehouse, decidere quali viste materializzate potrebbero essere utile definire con Oracle XE al
fine di ottimizzare i tempi di risposta delle interrogazioni proposte nelle specifiche del problema. Motivare
le scelte fatte e definire le viste.
Materiale da consegnare
Consegnare una relazione finale in cui si descrive dettagliatamente il progetto svolto.
Consegnare gli script per la creazione delle sorgenti dati e per popolarle.
Consegnare gli script per la creazione del data warehouse.
Consegnare il progetto di Business Intelligence di tipo “Integration services” sviluppato mediante
Microsoft Visual Studio 2005 per il processo di ETL.
10) Consegnare il progetto di Business Intelligence di tipo “Analysis Services Project” sviluppato mediante
Microsoft Visual Studio 2005 per creare i cubi.
11) Consegnare gli script per effettuare le query e creare le viste materializzate in Oracle XE
6)
7)
8)
9)
Page 2 of 2
Scarica