29
“Sakilla DW and Datamining” Università degli studi “La Sapienza” di Roma Tesina di Sistemi Informativi Aziendali Umberto Griffo e Claudio Papa

Sakilla Datawarehouse and Datamining

Embed Size (px)

DESCRIPTION

Presentazione della tesina sviluppata per conseguire l'esame di Sistemi Informativi Aziendali Presso l'università "La Sapienza di Roma".

Citation preview

Page 1: Sakilla Datawarehouse and Datamining

“Sakilla DW and Datamining”

Università degli studi “La Sapienza” di Roma

Tesina di Sistemi Informativi Aziendali

Umberto Griffo e Claudio Papa

Page 2: Sakilla Datawarehouse and Datamining

Sakilla è un’azienda “giocattolo” che ha in gestione 2 video store situati nella stessa città. Si vogliono utilizzare le metodologie e le tecnologie del datawarehouse e del datamining per monitorare ed ottimizzare il processo di noleggio di DVD al fine di migliorare l’attività commerciale.

Problema considerato

2

Page 3: Sakilla Datawarehouse and Datamining

Scoprire quale sia lo store più redditizio Scoprire quale sia il genere di DVD più

noleggiato Scoprire quali sono i DVD più noleggiati Soddisfare i clienti, in termini di reperibilità

dei DVD Caratterizzare i comportamenti dei clienti

Obiettivi

3

Page 4: Sakilla Datawarehouse and Datamining

cliente

Visita scaffale dello store

Scelta di un DVD

Preleva Un DVD

Vai alla cassa

Consulta inventario

Verificadisponibilità

Registra assenza in

stock

Effettua pagamento

Registra pagamento

Registra noleggio

Rental Business Process (Prelievo) - WIDE

DVD

interessa

! interessa

!altro DVD

altro DVD

!disponibile

disponibile!cambia

cambia

4

Page 5: Sakilla Datawarehouse and Datamining

DVDVerifica stato

DVD

Danneggiato o mancante

Confronta la data di restituzione con quella

di noleggio

Calcola mora

Registra restituzione

Pagamento mora

no

!moroso moroso

si

Rental Business Process (Riconsegna) - WIDE

Applica penale

Effettua pagamento

Registra pagamento

Registra pagamento

5

Page 6: Sakilla Datawarehouse and Datamining

Sigla Nome Metrica

Definizione Tipologia

NRTOT Num. Di noleggi totali

ℕ COUNT(Fact_rental) Efficienza

NR Num. Di noleggi restituiti

ℕ AGGREGATE (Returned=Yes, NRTOT)

Efficienza

NNR Num. Di noleggi non restituiti

ℕ AGGREGATE (Returned=No, NRTOT)

Efficienza

PNR Percertuale noleggi restituiti

% NR / NRTOT Efficienza

PNNR Percentuale noleggi non restituiti

% NNR / NRTOT Efficienza

FATT Fatturato € SUM(Fact_rental.amount) Efficienza

PGR Percentuale guadagno da clienti ritardatari

% [ FATT – SUM(Fact_rental.RentalRate) ]/ FATT

Efficienza

6

KPI: Rental Process

Page 7: Sakilla Datawarehouse and Datamining

Sigla Nome Metrica

Definizione Tipologia

TMR Tempo medio di riconsegna

ℕ AVG (Fact_rental.rental_effective_duration)/NRTOT

Qualità

TMDF Tempo medio disponibilità film

ℕ AVG(Data_disponibilità – Data_richiesta)

Servizio

NDANN Num. DVD danneggiati

ℕ COUNT(Inventory.damaged=true)

Qualità

NDS Num. DVD in stock

ℕ COUNT(Inventory) – NNR

Qualità

7

KPI: Rental Process

Page 8: Sakilla Datawarehouse and Datamining

8

KPI: Triangolo degli indicatori • NRTOT

• NR• NNR• PNR • FATT• PGR

Efficienza

ServizioQualità

• TMR• NDANN• NDNIS

• TMDF

Page 9: Sakilla Datawarehouse and Datamining

E-mail

Rentals

Datamart Rentals

FilmLenght

Title

Special features

Category

Rental Rate

LanguageStore

Manager Id

First Name

Last Name

E-mailCustome

r

IndirizzoAddress

CityCountry

Rental Date

MonthTen Days

Week

• Amount• Rental Duration• Rental Rate• Replacement Cost• Rental Effective

Duration Hours• Rental Effective

Duration Days• Total Rental Count Replacement cost

Release year

Address

CityCountry

Staff

Return Time

Rental Time

Minute

Hour

First Name

Last Name

Return Date

9

Page 10: Sakilla Datawarehouse and Datamining

Migrazione del Database Normalizzazione del DatabaseAggiunta delle dimensioni temporali

10

Fasi di costruzione datamart:

Page 11: Sakilla Datawarehouse and Datamining

SQL Server Migration Assistant

11

Fase 1 – Migrazione del DB

Page 12: Sakilla Datawarehouse and Datamining

Database di partenza 12

Page 13: Sakilla Datawarehouse and Datamining

13

Fase 2 – Normalizzazione(1/5)

Inventory

Country

City

Store Address

Rental

Film

Customer

Staff

Category ActorLanguage

Page 14: Sakilla Datawarehouse and Datamining

14

Fase 2 – Normalizzazione(2/5)

Inventory

Store

Rental

Film

CustomerStaff

Category

Film Category

Page 15: Sakilla Datawarehouse and Datamining

15

Fase 2 – Normalizzazione(3/5)

Store

Rental

Film

CustomerStaffCategory Store

Address

Page 16: Sakilla Datawarehouse and Datamining

16

Fase 2 – Normalizzazione(4/5)

Store

Rental

Film

CustomerStaffCategory Store

Address

Language

Address

Country

City

Country

City

Page 17: Sakilla Datawarehouse and Datamining

17

Fase 2 – Normalizzazione(5/5)

Rental

What: Film

Film

Language

Category

Where: Store

StoreCountry

City

Address

Who: Staff

StoreStaff

Who: CustomerCustomerCountry

City

Address

Page 18: Sakilla Datawarehouse and Datamining

18

Fase 3 – Aggiunta dim. Temporali

Rental

What: Film Where: Store Who: Staff Who: Customer

When: Rental Date

When: Rental Time

When: Return Date

When: Return Time

Page 19: Sakilla Datawarehouse and Datamining

19

Cubo Realizzazione

Page 20: Sakilla Datawarehouse and Datamining

20

KPI Realizzazione

Page 21: Sakilla Datawarehouse and Datamining

21

KPI Realizzazione

Realizzazione delle aggregazione e dei calcoli necessari alla realizzazione dei KPI

Page 22: Sakilla Datawarehouse and Datamining

22

KPI Realizzazione

Page 23: Sakilla Datawarehouse and Datamining

23

Olap - Esempio

Page 24: Sakilla Datawarehouse and Datamining

La videoteca vuole aumentare il numero noleggi analizzando le abitudini di noleggio dei clienti

Si vogliono trovare delle associazioni sulle categorie di film noleggiati.

Tale processo che prende il nome di market basket analysis è utile per l'adozione di strategie di marketing ad hoc.

Nel caso specifico la strategia è quella di disporre vicino, negli scaffali, le categorie di film che vengono più frequentemente noleggiate insieme

24

Datamining

Page 25: Sakilla Datawarehouse and Datamining

Association Algorithm (1/2) Per poter effettuare la market basket

analysis dobbiamo creare un Association model . Questo lo costruiamo su un dataset che contiene i DVD che possono essere noleggiati. Ogni DVD sarà rappresentato da una variabile booleana che starà ad indicare se è stato noleggiato o meno, ogni noleggio quindi sarà rappresentato da un vettore di booleani.

È ora possibile scoprire pattern sotto forma di regole di associazione A=>B 

Un insieme di oggetti noleggiati è detto itemset.

25

Page 26: Sakilla Datawarehouse and Datamining

A corredo di ogni regola di associazione si utilizzano misure quali il supporto e la confidenza, regole che avranno tali indici inferiori rispetto a una predeterminata soglia (minimo supporto e minima confidenza) saranno scartate in quanto non interessanti, viceversa saranno dette regole forti.  

Il supporto è definito dasupporto(A => B) = Prob(A U B)

la confidenza è definita daconfidenza(A => B) = Prob(B | A) 26

Association Algorithm (2/2)

Page 27: Sakilla Datawarehouse and Datamining

Per poter costruire l’association model abbiamo preparato una tabella, chiamata customer_transaction, contenente tutti i noleggi effettuati(o transazioni) dai clienti.

Questa è stata collegata come nested table alla tabella dim_customer.

Su di esse abbiamo costruito il modello impostando come colonna da predirre l’attributo category della tabella customer_transaction

27

Datamining – Preparazione del DB

Page 28: Sakilla Datawarehouse and Datamining

28

Datamining – Strong Rules

Page 29: Sakilla Datawarehouse and Datamining

29

Datamining – Dependency network