27
Projektarbeit Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers Jan Lübeck Envers AG

Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Embed Size (px)

Citation preview

Page 1: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Projektarbeit

Erstellen einer Webseitenstatistikmithilfe eines OLAP-Servers

Jan LübeckEnvers AG

Page 2: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Agenda

Page 3: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Einleitung

Page 4: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Seit 2000 in DU-Rheinhausen• Zur Zeit 11 Mitarbeiter• IT Dienstleistungen• Entwicklung/Vermarktung von

Softwarelösungen

Die Envers AG

Page 5: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Eigenes CMS “Flexcove 3”• Modularer Aufbau• Serverseitiges Sessionsystem• Administration über

Controlcenter

Das CMS

Page 6: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Page 7: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Speicherung pro Seitenzugriff– Relationale Datenbank ( MySQL )– 2 Tabellen• 1. Tabelle: Zugriffsdaten• 2. Tabelle: Parameter pro Zugriff( 1:n )

• Große Datenmengen• Flexible Datensammlung

Datensammlung

Page 8: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Anzeige pro Zeiteinheit/Zeitraum:– Benutzerzahlen – Seitenaufrufe– Referer– Javascript – Bildschirmauflösung

Auswertung

Page 9: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Daten per SQL-Statements• Neuberechnung bei jeder

Abfrage• „Joins“ mit anderen

Datenbanken• Langsam:– 4 bis 11 Minuten

Performance

Page 10: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Google Analytics:– Javascript nötig– Keine Benutzer-Auswertung

• Log-Auswertung:– Langsam oder Statisch–Wenig Information

• Generell:– Abhängigkeit vom Datenformat

Externe Tools

Page 11: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Soll - Konzept

Page 12: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Online Analytics Processing• Daten in “Cubes”– “Cube” ist Sinnbild– Enthält Werte

• Dimensionen– Definieren die Bedingungen– Enthalten Elemente– Summenelemente

OLAP

Page 13: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Abfrage von Werten• Wert( 2008, Januar, Bot)• Wert( 2008, Jahr, Benutzer )• Wert( Gesamt, Jahr, Zugriffe )

OLAP

Monat- Jahr - Januar - Februar - …

Monat- Jahr - Januar - Februar - …

Jahr- Gesamt - … - 2007 - 2008

Jahr- Gesamt - … - 2007 - 2008

Schlüssel- Zugriffe - Admin - Benutzer - Bot

Schlüssel- Zugriffe - Admin - Benutzer - Bot

Page 14: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Operationen– Slicing/Dicing ( Scheiben/Würfel )– Drill-Down / Drill-Up ( Detailgrad )– Pivoting ( Drehen )

• Methoden zur Speicherung–MOLAP ( Multidimensionales

„Array“ )– ROLAP– HOLAP

OLAP

Page 15: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Beschleunigung der Auswertung• Einsatz eines OLAP-Servers• Abfrage per Webbrowser• Linux/Apache/PHP• Gleiches UI• Gleicher Datenumfang

Sollkonzept

Page 16: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Linux, Apache, PHP ( Anforderung )

• OLAP-Server Bedingungen:– Linux–Möglichst kostengünstig– PHP-Schnittstelle

Software

PALO

Page 17: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Realisierung

Page 18: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Softwareinstallation

Palo

Page 19: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Zeitliche Einteilung– Datum( “Year”, “Month”, “Day” )– “Hour”, “Minute”, “Second”

• Art der Zusammenfassung– “Request”– “Session” ( Bot, User, Admin )

Definition der Dimensionen

Page 20: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Schlüssel-Wert-Paare– HTTP-Variablen:– Übergabeparameter– Javascript-Parameter, wenn

verfügbar

• Summierung als Hierarchie– Typ– Schlüssel–Wert

Definition der Dimensionen

Page 21: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Beispiel

HTTP

HTTP|Referer

HTTP|Referer|www.goo

gle.de

HTTP|Referer|

www.msn.com

HTTP|User_Agent

HTTP|User_Age

nt|Firefox

HTTP|User_Age

nt|IE_7

Page 22: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Importscript

- Auslesen der Daten von MySQL- Füllen der Dimensionen- Benutzer- Zugriffe- Schlüssel

-Füllen des Cubes

Page 23: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Trennung von Daten und Darstellung– Klasse „Analysis“• Wertet Überparameter aus• Ermittelt Daten• Erstellt XML-Daten

– XSLT-Prozessor• Erhält XML-Daten• Benutzt XSLT-Template• Erstellt HTML-Daten

Auswertung

Page 24: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Fazit

Page 25: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

Vergleich

Bisherige

Auswertung

Neue Auswertun

gZeitvorteil

Erster Seitenaufruf

11 Minuten 4 Minuten 275%

Weitere Seitenaufruf

e1-6 Minuten 15-45

Sekunden400-800%

Import Ad-HocCa. 10

Minuten -

Page 26: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Jan LübeckErstellen einer Webseitenstatistik mithilfe eines OLAP-

Servers

Ist - Aufnahme

Soll - Konzept

Realisierung

Fazit

Einleitung

• Erfahrungen mit PALO– Relativ unflexibel– Skaliert nicht– Langsam im Import

• Alternative: HOLAP• Zu bewältigende Hürden– Zugriff über PHP– Einsatz Linux oder Windows

Ausblick

Page 27: Jan Lübeck Envers AG. Jan Lübeck Ist - Aufnahme Soll - Konzept Realisierung Fazit Einleitung Agenda

Vielen Dank für Ihre Aufmerksamkeit