11 giugno 2008 Progetto CARE Ludovico Ferrara Partner Technology Reply s.r.l. Club TI Triveneto –...
-
Author
aurelio-turco -
Category
Documents
-
view
224 -
download
4
Embed Size (px)
Transcript of 11 giugno 2008 Progetto CARE Ludovico Ferrara Partner Technology Reply s.r.l. Club TI Triveneto –...

11 giugno 2008
Progetto CARE
Ludovico FerraraPartner Technology Reply s.r.l.
Club TI Triveneto – Evento Grandi Moli di Dati

2
Reply

3
Revenue & People
Mill
ions
of E
UR
O
Headcount as at Dec. 31
2006
230.2230.21999
244
18.618.62003
875
86862004
1011
1121122005
1277
144.7144.72002
750
77.177.12001
647
60.360.32000
396
33.333.3
1925
2007
277.2277.2
2272
People

5
Focalization
Methodology
Culture
Flexibility
Reply Characteristics
A strong team culture
Reply companies work together and join their
expertise aiming to optimize efficiency and reach
An increased market strenght.
Autonomous and specialized Enterprises
Reply Companies share management philosophy,
Goals and management functional standards,
to guarantee quality, proficiency and effectiveness.
Ethics
Reliability
Honesty
Transparency

6
Reply Companies
Reply Germany

7
> Focused on design and development of Architetture
Service Oriented projects using Oracle Fusion Architecture.
> Location in Milan, Turin, Rome, Treviso
> “Tuned” with Oracle Technology using the
certification program (OCA, OCP, OCM) and joining to Beta
Site Program (Database, Oracle Fusion Middleware).
> Focus on Design and Build up solution for the extended enterprise
using Oracle eBusiness Suite
> Location in Milan, Rome, Treviso
> Functional skills on eBS modules.
> Technological skills in order to implement vertical solution.
Reply: 2 companies focused on Oracle’s proposition

8 8
Some Milestones
1996 20081998
Startup
First Beta Site (Oracle8) then 8i, 9, 10g and OAS Beta Server (Bpel, Esb)
Customer Satisfation Awards for eBusiness Suite
2002
Largest Competence Center on Oracle Application in Italy
2004 20062000
Oracle Certified Partner (Technology)
Certified Advantage Partner (Technology)
OPN Innovation Award
Customer Excellence Partnering
Certified Advantage Partner for eBS
OFM11g Beta Site

9
Our Offer
Application Integration
Architecture (AIA)
eBusiness Suite
OTM, Demantra, Agile PLM
Application SolutionsTechnologies
Enterprise Web2.0 (RIA)
BI & CPM
SOA
Identity & Access Management
Core Technologies
Customers
SOA Methodology (SOA Maturity Model)
Process Design (BPA Suite)
Technological Stack
Methodologies, Processes

10
Progetto CARE

11
Analytic C
RM
Ope
ratio
nal C
RM
CA
RE
Platfo
rm
Customer Analysis, Relation & Experience

12
CARE come supporto al Relation Management
MIDA
RELATION MANAGEMENT
(operatività di marketing)
ATTIVAZIONE GESTIONE ESITO
INBOUND
OUTBOUND
EVENTI
ALTRO
ASSISTENZA
INFOS
RECLAMI
ACQUISTA
NON ACQ.
VALUTA
ALTRO
SERVIZI
GALYLEO
PS8
OBS
GALYLEO
PS8
OBS
Informazioni anagrafiche storiche
Target profilati selezionati
Valore del cliente
Esperienza del cliente
.....
Anagrafiche aggiornate
Esperienza del cliente
Informazioni sintetiche sulla gestione e esiti
.....
EVENTI ACQUISTA
MIDA
RELATION MANAGEMENT
(operatività di marketing)
ATTIVAZIONE GESTIONE ESITO
INBOUND
OUTBOUND
EVENTI
ALTRO
ASSISTENZA
INFOS
RECLAMI
ACQUISTA
NON ACQ.
VALUTA
ALTRO
SERVIZI
GALYLEO
PS8
OBS
GALYLEO
PS8
OBS
Informazioni anagrafiche storiche
Target profilati selezionati
Valore del cliente
Esperienza del cliente
.....
Anagrafiche aggiornate
Esperienza del cliente
Informazioni sintetiche sulla gestione e esiti
.....
EVENTI ACQUISTA
CARE

13
Customer Analysis, Relation & Experience
Relativamente ai consumatori vengono collezionate:• le informazioni utilizzate dalle applicazioni di CRM
applicativo• le informazioni utilizzate dalle applicazioni analitiche
(es.: score di Data Mining)• le informazioni sui prodotti e i servizi e sulle relazioni di
proprietà/uso da parte del consumatore• le informazioni relative alle iniziative di marketing, di
promozione prodotti e servizi• le informazioni sui ritorni da parte dei consumatori alle
iniziative• le informazioni sulle richieste e/o i contatti sui canali di
relazione• le informazioni circa le risposte/azioni intraprese nei loro
riguardi

14
CARE: schema funzionale
CARE Portal
Ad
min
GU
I an
dD
ata
Qu
alit
y M
anag
emen
t G
UI
DataBrowsing
AndSearching
CustomerIdentity
InfosCampaign
Mgr
ContactMgr
[TBV]
DataMiningTool
CustomerIntelligenceReporting
AndAnalysis
Web
Services In
terface
Runtime Services/Components
Schemas / Meta Schemas
CampaignDefinition,
RedemptionMeasures
CustomerAnd
ConsumerSocioDemo
characteristics
Products,Services,Contacts
Tracking History
Contact Management[TBV]
Data Acquisition
Territory,Dictionary
Normalization,Validation,Matching
Rules
Mapping,Transformation,
LoadingRules
P,S&Cdata access
C&Pdata access
Data browsingand
searching services
Data edit services
Data Browsing
Dealerauthorizationmanagement
Appointmentmanagement
Agenda
Contact mgmt [TBV]
Report & analysisengine
Data miningengine
Data martaccess
Data Miningand
Analysis
Adminservices
Admin
DataAcquisitionSubsystem
and Services:
Normalization,Validation,Matching
DataQuality Campaign mgmt
Target extractionschedule
Campaigndefinition
Targetdefin.

15
CARE: Architettura logica acquisizione dati
Pre
pro
ce
ss
ing
(es
.: sp
lit de
i files
, pa
dd
ing
)
Files di alimentazione
DW
I ED
M: m
ap
pin
g p
er fo
rma
ti inte
rni
sta
nd
ard
CA
RE
(es
.: MO
VA
N, M
UR
F)
Liste di alimentazione
Formato standard interno
Formato MURF
Ca
rica
tore
da
ti di p
rod
otto
, s
erv
izio e
co
nta
tto
Care repository
DW
I DN
A: n
orm
alizza
tore
(1), g
en
era
tore
di
ha
sh
co
de
DW
I PA
RT
Y: d
ob
lon
ato
re e
ca
rica
tore
da
ti a
na
gra
fico
ne
lla b
as
ed
ati
(1) per alcuni mercati si usano algoritmi di normalizzazione di terze parti (es.: ASSESSO Datacare per il brasile)

16
• Oracle Database 10.2.0.3.0 Enteprise Edition
– Data Mining Option
– Partitioning Option
– Oracle Workflow
• Oracle Application Server 10.1.2.2.0 Enterprise Edition; relativamente alle sue componenti viene utilizzato il conteiner java OC4J e le componenti runtime di Oracle Discoverer
• Oracle Discoverer 10.1.2 (in piano il passaggio ad Oracle BI EE)
• Oracle Warehouse Builder 10.2.0.1
• SPSS Clementine Server 10.1
• Microfocus Cobol Server Express 4.0
• Piattaforma di normalizzazione DWI costituita da:– Mappatura e configurazione flussi dati (modulo EDM)
– Normalizzatore e codificatore hash (moduli specifici per mercato es.: DNA 5.0 per l’Italia oppure DNA 5.0 con integrazione engine di normalizzazione ASSESSO di Datacare per il brasile)
– Deduplica e caricamento dati DB (modulo PARTY)
– User Interfaces per configurazione prodotti DWI (design time), per ricerca, navigazione e aggionarmento delle tabelle del sottosistema di acquisizione anagrafica (run time)
CARE: software di base e prodotti

17
Care: architettura fisica
DMZ
HTTPS
Load Balancer
Application Server
Database Server
HTTPS
Reverse Proxy
Intranet FIAT AutoInternet

18
Le dimensioni della base dati
• Allocazione RDBMS produzione: 1800 Gb• Allocazione RDBMS certificazione: 1100 Gb
• Consumatori (IT): 51,5 M– Aziende: 4,5 M– Privati 47 M
• Veicoli (IT): 52,5 M– Gruppo FIAT 22,5 M– Concorrenza 30M
• Ordini (IT): 9 M (800 K/anno)• Finanziamenti (IT): 3 M (77 K/anno)• Estensioni di garanzia(IT): 1,6 M (77 K/anno)• Interventi (garanzie, soccorsi, etc.): 17,5 M (1,5 M/anno)• Contatti(IT): 38 M
• Per il mercato Italia: ca. 20 flussi dati e aggiornamenti di codifiche al giorno; ca. 25 flussi acquisiti su base settimanale

19
Grandi moli di dati: il punto di vista applicativo

20
Design: capacity planning
• Spazio disco: definizione delle principali entità e calcolo delle loro occupazioni
• Risorse elaborative DB server: definizione della numerosità degli accessi ai dati secondo una classificazione (complessi, medi e semplici); interpolazione con i risultati dei test TPC
• Risorse elaborative Application Server: definizione della numerosità dell’utenza e del tipo e della frequenza di accesso al sistema; interpolazione con i risultati dei test SPECjAppServer2002

21
Data Mining
CustomerIntelligence
Design: modelli dati dedicati
Repository
DB
Operational
DB
Customer Intelligence Data Mart
Data Mart Analysis
Data acquisition engine
Data Information flows

22
DB application: set based vs row basedSet Based: il set di dati viene elaborato con un unica chiamata SQL. • Vantaggi
– prestazioni molto elevati– Codifica software molto strutturata
• Svantaggi– L’anomalia su un singolo record invalida tutta l’operazione – Tracking delle operazioni più complesso – Codifica software più complessa
Per un utilizzo efficace, tale approccio richiede l’implementazione di uno step propedeutico di trattamento dati per prevenire tutte le possibili cause di anomalia.
Row Based: il set di dati viene elaborato con una chiamata SQL per ogni record.• Vantaggi
– Consolidamento dell’operazione sul singolo record (commit) – Semplicità di Tracking delle operazioni– Codifica software più semplice
• Svantaggi– Prestazioni scarse nel caso di manipolazioni a blocco di grosse moli di dati
E’ un approccio indispensabile nelle situazioni dove a seconda dell’esito della singola operazione si condiziona il passo successivo.

23
DB application: opzione Oracle Partitioning
Tabella partizionata: tabella nella quale i dati sono fisicamente segmentati a seconda del valore della/e chiave/i di partizionamento.Es.: Nelle operazioni di accesso ai dati, specificando la chiave di partizionamento, si utilizzerà soltanto il relativo segmento e non tutta la tabella.
• Vantaggi – Ricerche più rapide, soprattutto nelle situazioni in cui sia necessario un table
scan.– Svecchiamento della base dati più efficace (drop di singole partizioni)– Ogni partizione può avere caratteristiche di storage diverse– Distribuzione della tabella segmentata su Tablespaces diversi
• Svantaggi– Ricerche penalizzate nelle situazioni in cui non venga specificata la chiave di
partizionamento– Necessità di intervenire sulla struttura nelle situazioni in cui la chiave di
partizionamento assuma nuovi valori per i quali non era stata definita una partizione
– Il valore della chiave di partizionamento non è aggiornabile

24
DB configuration: l’uso del parallelismo
• Real Application Cluster: utilizzo del parallelismo a livello di nodo server di elaborazione
• Parallelizzazione applicativa: con il disegno di una strategia opportuna per evitare i conflitti e la contesa delle strutture dati è possibile lanciare elaborazioni parallele che vengono risolte dal server RDBMS
• Parallelizzazione del motore SQL: specie nel caso di approcci Set Based il motore può sfruttare l’architettura multiprocessore dei server per parallelizzare l’accesso e la monipolazione dei dati

25
DB configuration: utilizzo di Hints
• Il motore del database normalmente determina autonomamente il miglior piano di esecuzione per la risoluzione di una query.
• Il piano di esecuzione viene definito sulla base delle statistiche calcolate periodicamente sui dati presenti nelle diverse tabelle.
• Qualora si verifichino dei grossi cambiamenti nelle tabelle rispetto alle statistiche il piano potrebbe non essere più ottimale
• In alcuni casi è comunque necessario intervenire manualmente definendo un piano alternativo condizionando il comportamento del motore con direttive che si chiamano hint.
• Questa attività è molto delicata e complessa, per cui deve essere effettuata soltanto quando indispensabile.

26
DB configuration: utilizzo di Hints (esempio)
• Una tabella di staging, sulla quale è presente una PK, è normalmente vuota. La statistica dice che non ci sono record e quindi l’ottimizzatore non può sfruttare l’indicizzazione della PK, in quanto non ha informazioni per orientarsi.
• Una procedura carica massivamente dati sulla tabella. Poichè l’indice sulla PK non viene usato per la verifica di univocità, le prestazioni degradano; all’aumentare dei record aumenta anche il costo della ricerca sequenziale
• Impostando un hint che forzi sempre l’utilizzo dell’indice sulla PK, si migliorano le prestazioni sull’inserimento massimo dei record

27
DB configuration: data compression
E’ possibile configurare la compressione delle aree di memorizzazione fisica dei dati su disco (Tablespace)Questo meccanismo è stato utilizzato per l’ambiente di certificazione, consentendo di poter replicare tutti i dati in produzione con un costo di spazio disco ridotto
• Vantaggi:– Riduzione dei costi: occupazione dello storage ridotta del 40% (da
1.8TB a 1.1TB)– In determinati casi (operazioni di lettura, e di insert) aumento delle
performance
• Svantaggi:– Nelle operazioni di aggiornamento degrado delle performance– Maggiore complessità nelle operazioni di allineamento tra ambiente
di produzione e certificazione

28
Case Study: Data Mart Analysis
Data Mart Analysis: caricamento integrale settimanale
Fase Note Durata
0 MIDA:
Tecnologia SAS, basata su file System
40 ore
1 CARE:
Tecnologia Oracle, hardware partizionato
30 ore
2 CARE:
Tecnologia Oracle,
Hardware non partizionato
20 ore
3 CARE:
Tecnologia Oracle,
Hardware non partizionato,
Tablespace compression
19 ore

29
Gli impatti sulla Web Application
• Il modello dati è stato progettato in modo ottimale per il suo trattamento (es.: informazioni nella loro forma più aggiornata, uso della denormalizzazione, etc)
• Utilizzo dei meccanismi di cache delle componenti di Object Relational Mapping
• Per le estrazioni utenti si realizza l’accesso ai dati in background secondo i criteri di query selezionati e si effettua un pre-calcolo della lista da estrarre (in xml). In un secondo momento si trasforma (uso di xsl) la lista nel struttura e nel formato specifico dell’estrazione richiesta
• Utilizzo di pull parser ovvero parser che consentono le trasformazione di grandi documenti XML con un uso limitato della memoria e compressione dei files per il download