PJ-slides

Werbung
Projekt Ferienclub
Business Intelligence
Jan Weinschenker
[email protected]
Agenda
Ziele und Aufgaben
 BI-Architektur
 Datenmodelle
 Extraktion, Transformation, Laden
 Vorgehen im Projekt
 Zusammenfassung und Ausblick

Jan Weinschenker
2
Ziele und Aufgaben

Business Intelligence im Ferienclub
Testdaten generieren
 Unsere Anwendungsfälle realisieren

Testschema mit Kundendaten
 Appointments
 (Tracking)

Jan Weinschenker
3
BI-Architektur
80
70
Datenquelle
60
50
40
30
20
10
0
1
Arbeitsbereich
Basisdatenbank
Darstellung
Datenquelle
ETL
Analyse
Jan Weinschenker
4
Basisdatenbank
ptt_dimension_place
ptt_dimension_categories
PK
PK
categoryid
category
ptt_facts
ptt_dimension_home
PK
homeid
PK
id
FK4
placeid
age
genderid
categoryid
stateid
appointmentid
beginyear
beginmonth
beginday
beginhour
beginminute
begintimestamp
endyear
endmonth
endday
endhour
endminute
endtimestamp
homeid
FK3
FK2
FK5
FK1
country
city
FK6
placeid_extern
name
longitude
latitude
validrange
ptt_dimension_gender
PK
genderid
gender
ptt_dimension_states
ptt_dimension_appointments
PK
placeid
PK
appointmentid
stateid
statename
appointmentid_extern
Jan Weinschenker
5
Ausgangslage: PTT
ptt_dimension_place
ptt_dimension_categories
PK
ptt_appointment
categoryid
category
ptt_place
PK
placeid
ptt_facts
name
longitude
PK
id
latitude
FK4validrange
placeid
ptt_dimension_home
PK
homeid
country
city
ptt_address
PK
addressid
PK
country
province
zipcode
street
email ptt_dimension_appointments
phone PK appointmentid
appointmentid_extern
age
genderid
categoryid
stateid
appointmentid
beginyear
beginmonth
beginday
beginhour
beginminute
ptt_user
begintimestamp
endyear
userid
endmonth
endday
endhour
name
endminute
anrede
endtimestamp
firstname
FK6
homeid
FK3
FK2
FK5
FK1
FK1
password
addressid
geburtsdatum
PK
placeid
PK
appointmentid
placeid_extern
name
subject
longitude
latitude datetime
duration
validrange
FK1
category
placeid
status
lead
ptt_dimension_gender
PK
genderid
gender
ptt_appointment_user
PK,FK2
PK,FK1
userid
appointmentid
ptt_dimension_states
PK
stateid
statename
Jan Weinschenker
6
Extraktion und Transformation

Extraktion der Daten


Aus Produktivsystem in
den Arbeitsbereich
Transformation der Daten

In eine analyseoptimierte Form
Jan Weinschenker
7
Laden der Daten

… in die Basisdatenbank

Dort endgültige Lagerung
Basis für Analysen
 Keine Änderungen mehr

Jan Weinschenker
8
Verwendete Werkzeuge

Arbeitsbereich und Basisdatenbank


BizGres DBMS (ein PostGreSQL-Fork)
ETL: Enhydra Octopus
Java-basiert
 Konfiguration über XML
 Datenbankzugriff per JDBC (kein Bulkload)


Diverse JDBC-Treiber
Jan Weinschenker
9
Verwendete Werkzeuge

Eclipse-Plugins
XMLBuddy
 QuantumDB

Fedora Linux
 Aqua Data Studio
 Ant

Jan Weinschenker
10
Vorgehen im Projekt

Installation und Konfiguration der
Arbeitsumgebung (MS I)

Erzeugen von Testdaten
Testdaten und Testdatenschema (MS II)
 Testdaten für PTT-Schema (MS III)

Jan Weinschenker
11
Vorgehen im Projekt

ETL-Jobs verfassen (XML, SQL)

Definition von
 Quell-
und Zieldatenbank
 Quell- und Zielschema
 Kopier- und Transformationsvorgängen

Fehlersuche und Debugging
Eigenheiten von JDBC-Implementierungen
 Änderungen an Datenbankschemata

Jan Weinschenker
12
Zusammenfassung und Ausblick
 ETL
ist Fummelkram
 Man kennt die Datenschemata aller
Beteiligten

Ich hätte gerne noch
Ein besseres Cleanup der
Quelldaten gemacht
 Eine SOA-Adminschnittstelle
implementiert

Jan Weinschenker
13
Fragen?
Jan Weinschenker
14
Quellen

BizGres DMBS


Enhydra Octopus ETL-Tool


http://octopus.enhydra.org
JTDS JDBC-Treiber (für MS SQLServer)


http://www.bizgres.org
http://jtds.sourceforge.net/
PostgresQL JDBC-Treiber (für BizGres)

http://jdbc.postgresql.org/
Jan Weinschenker
15
Quellen

XMLBuddy Eclipse Plugin


QuantumDB Eclipse Plugin


http://fedora.redhat.com/
Aqua Data Studio


http://quantum.sourceforge.net/
Fedora Linux


http://xmlbuddy.com/
http://www.aquafold.com/
Apache Ant

http://ant.apache.org/
Jan Weinschenker
16
Herunterladen