Zentralisierte und modulare Business Intelligence Plattform und

Werbung
Zentralisierte und modulare
Business Intelligence Plattform
und Infrastruktur
Master Thesis MT-11.01.01
Experte
Betreuer:
Autoren:
Dr. A. Schmidhauser
M. Schwab
D. Massimi
P. Brändle
_____________________________________________________________________________
A. Vorwort
Die vorliegende Master Thesis entstand als gemeinsames Werk durch Daniele Massimi und
Pascal Brändle im Zeitraum vom 25. April bis 22. September 2011. Das Thema der Arbeit ergab
sich aus einer immer wiederkehrenden Problematik bei der Schweizerischen Post und befasste
sich mit der Entlastung der operativen Datenbanksysteme durch die Realisation eines
unternehmensweiten Operational Data Store.
Das Projekt wurde nach der Hermes Methode durchgeführt. Bei dieser Methode wird für jede
einzelne Projektphase mindestens ein Dokument vorausgesetzt. Um die Anzahl der Dokumente
auf eines zu reduzieren, wurden diese in einem zusammengefasst. Dadurch ergaben sich
gewisse Redundanzen, die wir jedoch aus Gründen der Vollständigkeit im Dokument belassen
haben.
Wir danken Herrn Martin Schwab als Chefarchitekt Entwicklung bei IT Post und Herrn Dr. Arno
Schmidhauser von der Berner Fachhochschule für die kompetente Betreuung und die
Unterstützung während der Master Thesis.
Zu guter Letzt bedanken wir uns bei unseren Familien und Freunden, die uns während dieser Zeit
stets mit viel Geduld begleitet und motiviert haben.
_____________________________________________________________________________
2
_____________________________________________________________________________
B. Inhaltsverzeichnis
1
2
Dokumentaufbau........................................................................................................................6
Management Summary .............................................................................................................7
2.1
Ausgangslage .....................................................................................................................7
2.2
Lösungsansätze und Ergebnis ...........................................................................................7
2.3
Beurteilung und Ausblick ....................................................................................................8
3
Einleitung .................................................................................................................................10
4
Problemstellung .......................................................................................................................11
5
Voranalyse ...............................................................................................................................12
5.1
Interviews ..........................................................................................................................12
5.2
Anforderungen ..................................................................................................................12
5.3
Überprüfung BI Positionierung Post .................................................................................13
5.4
Definition Use Cases Business ........................................................................................17
5.5
Pflichtenheft ......................................................................................................................24
5.6
Ausgangslage ...................................................................................................................24
5.7
Ist-Zustand ........................................................................................................................24
5.8
Ziel ....................................................................................................................................25
5.9
Anforderungen ..................................................................................................................26
5.10 Kriterienkatalog .................................................................................................................28
5.11 Voranalysebericht .............................................................................................................31
6
Konzept ....................................................................................................................................35
6.1
Einleitung ..........................................................................................................................35
6.2
Problematik bei der Schweizerischen Post ......................................................................35
6.3
Daten.................................................................................................................................36
6.4
Begriffsdefinitionen und Technologien .............................................................................38
6.5
Zentralisierung vs. Dezentralisierung ...............................................................................50
6.6
Definition Module „Zentralisierte und modulare BI Plattform und Infrastruktur“ ...............52
6.7
Referenzarchitektur...........................................................................................................55
6.8
Lösungsvarianten / mögliche Architekturen ....................................................................56
6.9
Gegenüberstellung der Lösungsvarianten zu den Muss und Kann Kriterien...................62
6.10 Definition Ziel Architektur „Zentralisierte und modulare ...................................................65
Business Intelligence Infrastruktur und Plattform“ .......................................................................65
6.11 Verfügbarkeit der BI Plattform ..........................................................................................85
6.12 Wiederverwendbarkeit der Daten .....................................................................................85
6.13 Cleanup Daten ..................................................................................................................87
6.14 Sicherheit ..........................................................................................................................87
6.15 Prozesse ...........................................................................................................................96
6.16 Umgang mit Berechtigungen ..........................................................................................101
6.17 Richtlinien und Konvention für ODS Datenbankobjekte.................................................102
6.18 Allgemein gültige Namenskonventionen ........................................................................102
6.19 Konzeptbericht ................................................................................................................108
7
Realisierung ...........................................................................................................................110
7.1
Einleitung PoC ................................................................................................................110
7.2
Aufbau PoC Plattform .....................................................................................................110
7.3
Durchführung PoC ..........................................................................................................114
7.4
Betriebskonzept ..............................................................................................................120
8
Einführung ..............................................................................................................................127
8.1
Supportprozesse .............................................................................................................127
8.2
Weiteres Vorgehen bei operativer Umsetzung...............................................................128
8.3
Interview zur Lösung .......................................................................................................129
9
Projektabschlussbericht .........................................................................................................131
9.1
Allgemeines ....................................................................................................................131
10 Anhang ...................................................................................................................................134
_____________________________________________________________________________
3
_____________________________________________________________________________
C. Akronyme
ABS
ASM
BI
BO
CAS
CDC
CRM
DCL
DDL
DML
DWH
ELT
ERD
ES
ESB
ETL
Fat Client
Grid Control
GUI
HERMES
HPOVO
I/O
IBS
IDS
IPS
IT
JDBC
LOB
LUN
MOLAP
MS SQL Server
MySQL
NIC
ODBC
ODS
OLAP
OLTP
Oracle
OS
P-MAN
PostgreSQL
RDBMS
Repository
ROLAP
ROI
RPO
RTO
Ausserbetriebsetzung
Automatic Storage Management (Oracle Disk Volume Manager)
Business Intelligence
Business Objects (SAP Tool)
Certificate of Advanced Studies
Change Data Capture
Customer Relationship Management
Data Care Luzern AG (Tochtergesellschaft der Post)
Data Definition Language (Strukturverändernde Befehle in der Datenbank)
Data Manipulation Language (Insert, Update und Delete in der Datenbank)
Data Warehouse
Extract Load Transformation (Data Integration Technik)
Entity Relationship Diagramm
Enterprise Service
Enterprise Service Bus
Extract Transformation Load (Data Integration Technik)
Client Software mit integrierten logischen Funktionen
Zentralisierte Datenbanküberwachung und Administration
Graphical User Interface
Projektführungsmethode
Hewlett Packard Openview Operations Center
Input / Output
Inbetriebsetzung
Intrusion Detection System
Intrusion Prevention System
Informationstechnologie
Java Database Connectivity
Large Object (Objekte in der Datenbank, z.B.: BLOB Binary Large Object)
Logical Unit Number
Multidimensional Online Analytical Processing
RDBMS Softwarelieferant
RDBMS Softwarelieferant
Network Interface Card
Open Database Connectivity
Operational Data Store
Online Analytical Processing
Online Transactional Processing
RDBMS Software, Application Server und Applikationslieferant
Operating System
Post Metropolitan Area Network
RDBMS Softwarelieferant
Relational Database Management System
Speicherort für Metadaten
Relational Online Analytical Processing
Return of Investment
Recovery Point Objective
Recovery Time Objective
_____________________________________________________________________________
4
_____________________________________________________________________________
SAN
SAP
SAP BW
SLA
SLES
SOA
SOAP
SQL
SQL*Net
SuSE
UC
UHD
Use Case
VLDB
ZDH
ZDS
Storage Area Network
Softwarelieferant
SAP Business Warehouse
Service Level Agreement
SuSE Linux Enterprise (Enterprise Distribution von SuSE)
Service Oriented Architecture
Simple Object Access Protocol
Structured Query Language
Oracle Network Adapter
Vertreiber von Linux Distribution
Use Case
User Help Desk
Anwendungsfall
Very Large Database
Zentrale Datenhaltung (SAN Storage der IT Post)
Zentrale Datensicherung (Backup Infrastruktur der IT Post)
D. Quellen
Gartner Inc.: Verschiedene publizierte Artikel
Forrester Research Inc.: Verschiedene publizierte Artikel
A. Bauer / H. Günzel: [2009] Data Warehouse System
R. Kimball / M. Ross: [2008] The Data Warehouse Lifecycle Toolkit
W. Inmon: [2005] Building the Data Warehouse
W. Inmon: [2007] DW 2.0
W. Inmon: [1995] Building the Operational Data Store
_____________________________________________________________________________
5
_____________________________________________________________________________
1
Dokumentaufbau
Dieses Kapitel soll helfen einen groben Überblick, über die Themen in den verschiedenen
Projektphasen zu erhalten.
Allgemein



Management Summary
Einleitung
Problemstellung
Voranalyse





Erhebung der Anforderungen (Interviews, Dokumentenstudium)
Überprüfung BI Positionierung bei IT Post
Definition Use Cases aus Business Sicht
Erstellung Pflichtenheft
Erstellung Kriterienkatalog
Konzept









Erläutern der Problematik
Moduldefinitionen
Begriffsdefinitionen und Technologien
Erarbeitete Lösungsvarianten
Wahl der Lösungsvariante
Definition der BI Plattform und Infrastruktur
Berechtigungskonzept
Prozesse
Namenskonventionen
Realisierung



Vorgehen beim PoC
Aufbau der PoC Umgebung
Betriebskonzept
Einführung


Supportprozesse
Weiteres Vorgehen
_____________________________________________________________________________
6
_____________________________________________________________________________
2
Management Summary
Die wesentlichen Aussagen über die Master Thesis „Zentralisierte und modulare Business
Intelligence Infrastruktur und Plattform“ werden im Folgenden kurz zusammengefasst.
2.1
Ausgangslage
Oft sind die operativen Datenbanken überlastet. Betroffene Benutzer beklagen sich über lange
Bearbeitungs- und schlechte Antwortzeiten. Verarbeitungen können nicht immer fristgerecht fertig
gestellt werden, was zu Problemen bei nachgelagerten Systemen führt. Resultate von Analysen
können variieren, weil durch mehrfache Replikationen von einem System auf das andere der
„Single Point of Truth“ nicht mehr feststellbar ist. Zusätzlich wächst auch das Bedürfnis nach
sogenannt zeitnahen bzw. „real time“ Daten für Business Analysen immer mehr.
Dies sind nur einige der Probleme, mit denen die Bereiche zu kämpfen haben.
In einer ersten Analyse konnten folgende Ursachen identifiziert werden:
 Die Auswertungen oder Analysen der Daten werden direkt auf den operativen
Datenbanken ausgeführt.
 Das Replizieren der Daten auf Umsysteme verursacht unnötige Redundanzen und Last.
 Zeitliche Abhängigkeiten in Verarbeitungsprozessen können nicht mehr garantiert
werden.
 Reports, Aggregationen und Datenkonsolidierungen auf den operativen Systemen
beeinflussen die Performance negativ.
 Es gibt kein allgemeines Konzept für die Datenintegration.
 Es fehlt eine einheitliche Infrastruktur, welche die Bereichsdaten zentral zur Verfügung
stellt.
 Nicht abgestimmte Datenstrukturen führen oft zu hohen Laufzeiten (normalisiert vs.
denormalisiert).
Bislang wurde versucht, solche Probleme durch den Einsatz von dedizierten
Auswertungssystemen zu entschärfen, welche mit Replikaten versehen wurden. Dies führte
jeweils zu Mehrkosten und zu sogenannten Insellösungen.
Um diese Probleme nachhaltig zu beheben, soll eine neue zentrale und modulare Plattform
aufgebaut werden.
2.2
Lösungsansätze und Ergebnis
Das Ziel ist daher eine Plattform, welche die operativen Systeme entlastet, indem die Daten den
Consumer-Systemen zur Verfügung gestellt werden. Je nach Bedarf können die Daten in
aufbereiteter Form zur Verfügung gestellt werden um Reports und Verarbeitungen performanter
durchzuführen. Ein Anbinden an bestehende DWHs sollte ebenfalls möglich sein.
Um den Bedürfnisträgern gerecht zu werden, wurden die Bedürfnisse mittels Interviews erhoben.
Danach wurden aus diesen Erkenntnissen die entsprechenden Anforderungen abgeleitet, welche
ein IT System zu erfüllen hat. Es wurde diesbezüglich ein Kriterienkatalog mit erhöhter
Granularität erstellt, welcher zur besseren Beurteilung in Gruppen aufgeteilt wurde.
_____________________________________________________________________________
7
_____________________________________________________________________________
In einem nächsten Schritt wurden verschiedene Lösungsvarianten unter Berücksichtigung der
Einhaltung der Anforderungen erarbeitet.
Die endgültige Lösung entstand aufgrund von technischen und strategischen Gegebenheiten.
Zum einen wurde die Architektur auf die technische Machbarkeit geprüft und zum anderen wurde
bei der Produktwahl auf die strategische Produktpalette bei der Schweizerischen Post geachtet.
Die Lösung wurde ausserdem so konzipiert, dass diese skalierbar ist. Dadurch ist es möglich mit
einer kleiner angelegten Infrastruktur zu beginnen und diese dann mittels Cluster Technologie zu
erweitern. Dank dieser Architektur sind Anfangs keine hohen Investitionen nötig. Dies führt dazu,
dass die Kosten für die Kunden tief gehalten werden können, was in der heutigen Zeit ein
wichtiger Entscheidungsfaktor ist.
In diesem Projekt wurden lediglich die Lizenzkosten und allfällige Investitionen berücksichtigt.
Für die operative Wirtschaftlichkeit muss noch eine detaillierte Berechnung gemacht werden.
Diese muss aufzeigen, welche Kosten anfallen dürfen, um die operativen Systeme zu entlasten.
Für diese Entlastung werden heute zusätzlich dedizierte Systeme aufgebaut. Mit der neuen
Lösung könnte eine kostengünstigere gemeinsame Plattform zur Verfügung gestellt werden,
weshalb diese Kosten kein Hindernis darstellen sollten.
2.3
Beurteilung und Ausblick
Mit dieser Arbeit soll aufgezeigt werden, wie die bereits beschriebenen Probleme durch eine
zentrale und modulare Plattform entschärft werden können. Dabei wurde der Fokus stets auf
folgende Punkte gerichtet:



Entlastung der Operativen Systemen
Vereinheitlichung von Datenintegration
Aufbau einer zentralen Plattform als Basis für ein unternehmensweites Data Warehouse
Mit der „Zentralen und modularen BI Plattform und Infrastruktur“ können die aktuellen Probleme
behoben werden. Als Konsequenz müssen keine zusätzlichen Auswertungssysteme mehr
beschafft und betrieben werden. Dies führt zu Kostensenkungen bei einer gleichzeitigen
Erhöhung der Effizienz der Systeme.
Ein weiterer Vorteil besteht in der Eliminierung von redundanten Daten. Dies spart Speicherplatz
und reduziert die Kosten für die Nutzung der teuren Speichersysteme und deren speziellen
Netzwerktechnologien (SAN). Durch diese Massnahme können die Daten anderen Bereichen
zentral zur Verfügung gestellt, womit man auch wieder einen Single Point of Truth hat.
Zudem kann durch die Entlastung der operativen Systeme, die auf Online Transaktionen
ausgerichtet sind, mit einer gesteigerten Performance gerechnet werden, was sich auch in
kürzeren Antwortzeiten bemerkbar machen würde.
Ein weiterer Aspekt ist, dass durch den Einsatz eines Operational Data Store, die Vorstufe eines
Data Warehouse entsteht. Eine Wiederverwendbarkeit der Daten wäre somit unternehmensweit
gewährleistet. Dadurch wird der Aufwand für das Sammeln der Daten auf verschiedenen
Systemen stark reduziert.
_____________________________________________________________________________
8
_____________________________________________________________________________
Wie bereits erwähnt entstand die Lösung aufgrund der Anforderungen, die bei den Kunden
erhoben wurden. Mittels einem Proof of Concept, welches aus einem Kundenprojekt abgeleitet
wurde, konnte die Lösung zudem validiert und verifiziert werden.
Damit diese Arbeit über den Status eines Proof of Concept hinweg kommt, müssen verschiedene
Punkte angegangen werden.
Als erstes muss eine Wirtschaftlichkeitsrechnung erstellt werden, um die nötigen Investitionen
auszulösen. Anschliessend müssten noch folgenden Schritte eingeleitet werden:






Vernehmlassung des Konzeptes durch das Management
Schulung der betroffenen Mitarbeiter
Eingliedern der Plattform in der Organisation
Betreiben von Marketing
Aufbau des IT Services „Zentralisierte und modulare Business Intelligence Infrastruktur
und Plattform“
Bestimmen eines Serviceverantwortlichen
_____________________________________________________________________________
9
_____________________________________________________________________________
3
Einleitung
Die Schweizerische Post befördert jährlich ca. 121 Millionen Menschen mit dem Postauto.
Täglich stellt sie rund 15 Millionen Briefsendungen und 100 Millionen Pakete pro Jahr zu. Zudem
wickelt die Postfinance 894 Millionen Zahlungsverkehrstransaktionen pro Jahr ab. Diese und
andere Leistungen werden durch eine umfassende IT Infrastruktur unterstützt und ermöglicht.
Der Servicebereich IT Services der Schweizerischen Post betreibt hierzu fast 2000 Datenbanken
von verschiedenen Datenbankanbietern (z.B. Oracle Datenbankmanagement System der Firma
Oracle, MS SQL Server der Firma Microsoft, die Open Source Systeme MySql und PostgreSQL)
mit unterschiedlichen Datenbanktechnologien. Neben der operativen Nutzung werden diese
Datenbanken auch für Analysen und Auswertungen sowie zur Bereitstellung von Services im
Sinne einer Service orientierten Anwendungsinfrastruktur (SOA) verwendet.
Die Replikation der Daten erfolgt mittels verschiedener Technologien wie z.B. Snapshots,
Replikation, Export / Import, Flatfiles, u.v.a.
In der Regel werden die Analysen direkt auf den operativen Systemen ausgeführt. Dadurch kann
es zu Störungen in den operativen Systemen kommen, so dass gelegentlich nicht alle „online“
Anfragen bewältigt werden können.
In der Analyse dieser Daten erkennt man ein Business Intelligence Muster. Gestützt darauf
möchten wir mit diesem Unterfangen eine zentralisierte und modulare BI Plattform realisieren, die
auch als Datenquelle für „read only ES“ dienen kann.
Im CAS BI01 haben wir uns bereits im Rahmen einer Semesterarbeit mit der Thematik
Replikation und Real Time Replikation auseinander gesetzt und so das notwendige Know-How
erarbeitet.
In dieser Abhandlung werden die Replikationsmechanismen deshalb nicht mehr im Detail erörtert
und behandelt.
_____________________________________________________________________________
10
_____________________________________________________________________________
4
Problemstellung
Wie bereits erwähnt, greifen die einzelnen Bereiche der Schweizerischen Post bei einem
Analysebedarf mehrheitlich auf die operativen Datenbanken zu, um Auswertungen oder
Aggregate zu erstellen.
Dabei werden folgende Probleme ersichtlich:

Die Daten werden vermehrt von den operativen Datenbanken abgeholt, was zu
Betriebsstörungen führen kann. Diese Situation hat sich mit SOA akzentuiert.

Die Daten werden vermehrt auf andere Umsysteme repliziert, auf welchen danach die
Analysen der Daten durchgeführt werden.

Die Resultate der Analysen können je nach Umsystem variieren (kein Single Point of
Truth).

Die Daten müssen bis zu einem bestimmten Zeitpunkt (z.B. 06:00 Uhr) garantiert auf
einem Umsystem verfügbar sein, damit das Umsystem korrekt funktionieren kann.

Die Daten werden erst zur Laufzeit auf dem operativen System konsolidiert und
aggregiert, was die Performance der operativen Systeme negativ beeinflusst.

Die Reports werden direkt auf operativen Systemen ausgeführt, was sich ebenfalls
negativ auf die Performance auswirkt.

Die Bereiche benötigen immer häufiger zeitnahe Daten (real time) für Auswertungen.
Dies führt vermehrt dazu, dass Reports direkt auf operativen Systemen ausgeführt
werden.

Es gibt kein allgemein gültiges Konzept für die Integration der Daten.

Es gibt keine Infrastruktur, die Bereichsdaten zentral zur Verfügung stellt.

Nicht abgestimmte Datenstrukturen führen zu hohen Laufzeiten (normalisiert vs.
denormalisiert).
_____________________________________________________________________________
11
_____________________________________________________________________________
5
Voranalyse
Im folgendem Kapitel werden sämtliche Schritte dokumentiert, die bei einer Voranalyse nach der
HERMES Methode notwendig sind.
Im Vordergrund steht das Analysieren und Erheben von Business- sowie System Requirements.
Dabei werden bestehende Probleme, Prozesse und eingesetzte Tools genauer betrachtet.
Hauptaugenmerk bei der Lösungssuche liegt auf folgenden Punkten:






5.1
Entlastung der operativen Systeme
Erweiterung durch Anpassungen am Datenmodell
Kosten
Skalierbarkeit
Benutzbarkeit
Wartbarkeit
Interviews
Um den Anforderungen der Kunden gerecht zu werden, benötigen wir ein genaues Bild ihrer
Problematiken im Bereich Business Intelligence.
Durch die Führung von Interviews haben wir uns einen Überblick über die aktuelle Situation der
Kundenseite verschafft. Dabei galt es nicht nur das Vorhandene zu überprüfen, sondern auch
einen Einblick in die offenen Kundenbedürfnisse zu bekommen.
Aus prozesstechnischen Gründen war es nicht möglich den direkten Kundenkontakt zu suchen,
weshalb wir die Interviews mit Personen durchgeführt haben, die durch ihre Funktion bei der
Schweizerischen Post enge Beziehungen zu den Kunden pflegen.
Die von uns gewählten Interviewpartner haben sowohl die Kundensicht, als auch ihre Sicht als
Verantwortliche in ihrem Bereich vertreten.
Die Interviews wurden so gestaltet, dass Fragen zu Business- sowie System Requirements
abgedeckt waren.
Aus diesen Erkenntnissen haben wir die Anforderungen abgeleitet und ins Pflichtenheft
übertragen. [siehe Kapitel 5.5 und Anhang der einzelnen Interviews]
5.2
Anforderungen
Im folgenden Kapitel werden die Anforderungen beschrieben. Hierbei unterteilen wir diese in
Business- und in Systemanforderungen. Diese Unterteilung dient der besseren
Nachvollziehbarkeit in den späteren Projektphasen.
Der Schwerpunkt liegt auf der Problemlösung im Bereich Business Intelligence sowie Data
Integration.
_____________________________________________________________________________
12
_____________________________________________________________________________
5.2.1
Business Anforderungen
Um für die Bereiche und deren Fachgebiete eine zugeschnittene Lösung zu erarbeiten, die einen
signifikanten Mehrwert bringt, ist es wichtig die Tätigkeiten und die Schwerpunkte der
Fachgebiete zu kennen.
Die wichtigsten Faktoren in Bezug auf die benötigten Informationen sind:









5.2.2
Aktualität der Daten
Quellsysteme und Zielsysteme kennen
Art der Reports
Anzahl der Reports
Kadenz und Zeitkritikalität eines Datentransfers
Prozesse
Datenvolumen
Zielpublikum
Anzahl User
Technische Anforderungen
Bei den technischen Anforderungen werden die relevanten Aspekte eines Systems definiert, die
zur Abdeckung der Business Anforderungen notwendig sind.
Dies umfasst folgende Hauptpunkte:










5.3
Berücksichtigen der aktuellen und zukünftigen Systemlandschaft und der Umsysteme
Einsatz der bestehenden Tools
Einsatz der bestehenden Technologien
Einsatz der bestehenden Datenbank Technologien
Anzahl Benutzer (concurrent)
Skalierbarkeit des heutigen sowie zukünftigen Systems
Recovery Time Objective (RTO)
Recovery Point Objective (RPO)
Lastspitzen und Lastverteilung
Richtlinien und Standardisierung
Überprüfung BI Positionierung Post
Bei der Schweizerischen Post ist die IT Infrastruktur grundsätzlich zentral organisiert. Diese lässt
sich in zwei Hauptbereiche unterteilen, namentlich Postfinance und IT Post. Der
Hauptunterschied zwischen den Bereichen liegt darin, dass die Postfinance sich um ihre eigenen
Systeme kümmert, die IT Post hingegen für die Basisinfrastruktur und die Systeme der anderen
Postbereiche verantwortlich ist.
Die obengenannte Gegebenheit ist von enormer Wichtigkeit, um die Heterogenität der
Geschäftsfelder zu verstehen. Diese Problematik spiegelt sich in allen IT Projekten - so auch im
Bereich Business Intelligence - wider.
_____________________________________________________________________________
13
_____________________________________________________________________________
Im Folgenden soll die Business Intelligence Situation im Bereich IT Post und ihrer Kunden näher
erläutert werden.
Vor einigen Jahren wurden bei der IT Post verschiedene Konzepte und Arbeitspapiere erstellt,
welche die Thematik Business Intelligence beschreiben. Folgendes Arbeitspapier ist derzeit
gültig:
Titel
BI Positionierung IT
Dokument
BK_BI_Positionierung_IT_V0102.pdf
Author
Andreas Mannhart
Im Dokument BI Positionierung IT werden folgende Themen behandelt:




Architektur
BI Technologie
Produktportfolio
Organisation und Aufgaben
Der Zweck des Dokumentes ist die verbindliche Vorgabe für die Realisierung neuer BI Projekte
sowie der Förderung des technischen Verständnisses von Mitarbeitern, die Kundenofferten
erstellen.
Es beinhaltet eine grobe Referenzarchitektur, die sich stark an den Vorschlag von A. Bauer / H.
Günzel anlehnt und als exemplarisches Beispiel dient. Die Einsatzmöglichkeit der
Referenzarchitektur ist jedoch von Fall zu Fall zu verifizieren.
Danach wird eine Vielzahl von Business Intelligence Komponenten und derer Einsatzgebiete
beschrieben. Bei einigen wird auch eine Empfehlung zu ihrer Verwendung abgegeben.
Ein weiteres Kapitel behandelt die Organisation sowie Aufgaben, Kompetenzen und
Verantwortlichkeiten der Rolle Facharchitekt Business Intelligence.
Zudem weist das Dokument ein Produktportfolio mit den strategischen Produkten der
Schweizerischen Post auf. Zum heutigen Zeitpunkt erscheint eine Überprüfung der strategischen
Produkte sinnvoll, da aufgrund veränderter Gegebenheiten die Auswahl neu zu definieren ist.
Nachfolgende Liste ist folgendermassen zu interpretieren:
Das Dokument entstand im Jahre 2009. Seinerzeit wurden seitens IT Post die Softwareprodukte
der Firmen Microsoft und SAP als Ökosystem definiert. Die zweite Spalte bildet somit den
Zustand aus dem Jahre 2009 und die dritte Spalte die Zukunft.
Seit einigen Monaten wird diese Strategie nicht mehr absolut verfolgt. Stellen sich andere
Produkte als geeigneter heraus, werden diese obwohl sie nicht in der Produktliste geführt
werden, trotzdem eingesetzt.
_____________________________________________________________________________
14
_____________________________________________________________________________
Produktliste aus dem Dokument BI Positionierung IT:
BI-Bereich
aktuelle Situation heute bei
IT eingesetzt
Reporting und
Analyse






OLAP Analysen
Statistik, Prognose
und Data Mining
MS SQL Server Reporting
Services
MS SQL Server Analysis
Services
Business Objects
ZEWAS (Jasper Reports)
SAP BW BEx
Oracle Reports
Sollsituation gemäss
Kontinuitätsplanung
( bis 3 Jahre)
 MS SQL Server Reporting
Services
 MS SQL Server Analysis Services
 SAP Business Objects
(WebIntelligence, Crystal Reports,
Voyager  Pioneer)
 ZEWAS (Jasper Reports) *
 SAP Business Explorer (BEx) Web
und Excel Analyzer  Pioneer
 SAP Business Objects Explorer

MS SQL Server Analysis
Services
SAP BW



IBM SPSS / Clementine





Planung und
Budgetierung


SAP SEM / BPS
SAP BI / IP

MIS/Dashboard und
Scorecard






Microsoft Office Dashboard
BusinessObjects Xcelsius
Arcplan Enterprise
SAP SEM
SAP Visual Composer
BusinessObjects

Extraktion,
Transformation und
Laden





PL/SQL
MS SQL Server Integration
Services
BusinessObjects
DataIntegrator
SAP Extraktor Plug-in
Informatica PowerCenter



MS SQL Server Analysis Services
SAP Business Objects (Voyager 
Pioneer)
SAP Business Explorer Web und
Excel Analyzer  Pioneer
IBM SPSS / Clementine
SAP Business Objects Predictive
Analytics
MS SQL Server Data Mining
SAP Netweaver Business
Warehouse / Integrated Planning
SAP BO Business Planning and
Consolidation
SAP Business Objects (Crystal
Xcelsius, Dashboard Builder, BI
Widgets)
SAP Strategic Enterprise
Management  SAP BO Strategy
Management
SAP Netweaver Visual Composer
(VC) (bei


Composite Applications)
MS SharePoint Server


Informatica PowerCenter (*)
SAP Business Objects Data
Services
SAP Business Warehouse
Extraktor Plug-in
MS SQL Server Integration
Services


_____________________________________________________________________________
15
_____________________________________________________________________________
Datenqualitätsmanagement

Fuzzy (Adressen DCL)



Metadatenmanagem
ent


SAP BO Meta Data
Manager
SAP BW


SAP Business Objects Data
Quality Premium
SAP Netweaver
Masterdatamanagement (MDM)
Stammdatendrehscheibe
SAP Business Objects Meta Data
Manager (BOMM)
SAP Business Warehouse (BW)
Legende:
* nicht strategisch, keine neuen Lösungen
(*) wenn Ökosystem nicht geeignet (Eignung wird im Einzelfall geprüft)
5.3.1
Fazit
Zusammenfassend ist das Dokument „BI Positionierung IT“ eher als ein Leitfaden über Business
Intelligence Komponenten anzusehen. Zudem beinhaltet es ein Architekturbeispiel, wie ein DWH
aussehen könnte.
Im Dokument, wird zu wenig konkret auf die Umsetzung von BI resp. DWH Einsatzbereiche
eingegangen. Auf der Intranetseite des BI Teams (das sich hauptsächlich mit BO befasst) wird
jedoch Unterstützung und Beratung bei DWH Projekten angeboten.
Zum heutigen Zeitpunkt sind keine Prozesse im Business Intelligence Bereich bekannt. Es gibt
auch keine nennenswerten „Best Practices“, bereichsübergreifende Namenskonventionen oder
Datenintegrations- oder Transformationsrichtlinien.
Der Schwerpunkt des Dokumentes liegt auf einer detaillierten Produktpalette mit der heutigen
sowie zukünftigen strategischen Ausrichtung.
Eine Beschreibung der Produkte, sowie deren Einsatzbereichen und Integration fehlt gänzlich.
Bei IT Projekten kann dies aber zu Mini-Evaluationen und zu „Insel-Lösungen“ führen. Vermehrte
Einzellfall-Lösungen erschweren schlussendlich den Betrieb, da die Vielzahl der Produkte ein
erhöhtes Know-How erfordert.
5.3.2
Empfehlung
Ein solches Dokument sollte weniger eine Auflistung von verschiedenen Produkten enthalten,
sondern vielmehr den „Weg zum Ziel“ beschreiben.
Aus unserer Sicht sollten folgende Thematiken eingehender behandelt werden:



Standardisierte Prozesse und derer Aktivitäten die zu einem DWH führen
Standardisierte Plattformen
Tools Definitionen: wann ist welches Tool einzusetzen
Mit diesen grundlegenden Informationen könnten BI Projekte dynamischer und effizienter
durchgeführt werden. Insbesondere müsste das Know-How über die verschiedenen Produkte
nicht immer wieder zusätzlich aufgebaut werden.
_____________________________________________________________________________
16
_____________________________________________________________________________
5.4
Definition Use Cases Business
Im Folgenden wird ein Use Case Modell vorgestellt und Typologien von Use Cases behandelt.
Aus den Interviews wurden verschiedene Anforderungen erhoben und festgestellt, dass
verschiedene Kunden ähnliche Anforderungen an die Systeme stellen.
Abbildung 5.1: Use Case Modell Business
_____________________________________________________________________________
17
_____________________________________________________________________________
5.4.1
Use Case Beschreibung
In diesem Kapitel werden die Use Cases des Use Case Modells beschrieben.
5.4.1.1
Use Case 1 „Standardauswertung ausführen“
Name des Use Case
Standardauswertung ausführen
Kurzbeschreibung
Starten von vordefinierten Auswertungen
Auslöser / Motivation
Der Benutzer möchte eine Standardauswertung ausführen, die
eigens für seine Bedürfnisse entwickelt worden ist.
Ergebnis
Die Standard Auswertung wird ausgeführt.
Akteure
BI End User
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit Auswertungstool erstellt
Nachbedingungen
-
Essenzielle Schritte
-
5.4.1.2
Use Case 2 „OLAP Auswertung ausführen“
Name des Use Case
OLAP Auswertung ausführen
Kurzbeschreibung
Starten von OLAP Auswertung mit OLAP Tool. OLAP Tool erlaubt
mittels ROLAP oder MOLAP Abfragen für Analyse Zwecken.
Auslöser / Motivation
Der Benutzer möchte eine OLAP Auswertung ausführen.
Ergebnis
Die OLAP Auswertung wird ausgeführt.
Akteure
BI End User
Eingehende Information
Benutzerspezifische Parameter
Vorbedingungen
Verbindung mit OLAP Tool erstellt
Nachbedingungen
-
Essenzielle Schritte
-
_____________________________________________________________________________
18
_____________________________________________________________________________
5.4.1.3
Use Case 3 „Ad Hoc Auswertung ausführen“
Name des Use Case
Ad Hoc Auswertung ausführen
Kurzbeschreibung
Starten von Ad Hoc Auswertung mit Auswertungstool
Auslöser / Motivation
Der Benutzer möchte eine Ad Hoc Auswertung mittels einem frei
wählbaren Reportingtool ausführen.
Ergebnis
Die Ad Hoc Auswertung wird ausgeführt.
Akteure
BI End User
Eingehende Information
Benutzerspezifische Parameter
Vorbedingungen
Verbindung mit Auswertungstool ist erstellt
Nachbedingungen
-
Essenzielle Schritte
-
5.4.1.4
Use Case 4 „Data Mart Auswertung ausführen“
Name des Use Case
Data Mart Auswertung ausführen
Kurzbeschreibung
Starten von Data Mart Auswertung mit Auswertungstool
Auslöser / Motivation
Der Benutzer möchte eine Data Mart Auswertung, die speziell für
seine Bedürfnisse entwickelt worden ist.
Ergebnis
Die Data Mart Auswertung wird ausgeführt.
Akteure
BI End User
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit Auswertungstool ist erstellt
Nachbedingungen
-
Essenzielle Schritte
-
_____________________________________________________________________________
19
_____________________________________________________________________________
5.4.1.5
Use Case 5 „Daten einfügen“
Name des Use Case
Daten einfügen
Kurzbeschreibung
Der Benutzer möchte mit einem definierten Tool Daten einfügen.
Auslöser / Motivation
Der Benutzer möchten aus Business Gründen Daten einfügen. Dies
um die Daten zu aktualisieren oder weil die geforderte Datenqualität
nicht erfüllt wird.
Ergebnis
Daten werden eingefügt
Akteure
BI End User und BI Plattform Administrator
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit ETL Tool oder anderem Tool erstellt
Nachbedingungen
ETL Ladeprozesse wurde initiiert
Essenzielle Schritte
-
5.4.1.6
Use Case 6 „Daten mutieren (Update)“
Name des Use Case
Daten mutieren (Update)
Kurzbeschreibung
Der Benutzer möchte mit einem definierten Tool Daten mutieren.
Auslöser / Motivation
Der Benutzer möchten Daten mutieren (updaten).
Ergebnis
Daten wurden mutiert
Akteure
BI Plattform Administrator und Developer
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit ETL Tool oder anderem Tool erstellt
Nachbedingungen
ETL Mutationsprozesse wurden initiiert
Essenzielle Schritte
-
_____________________________________________________________________________
20
_____________________________________________________________________________
5.4.1.7
Use Case 7 „Daten löschen“
Name des Use Case
Daten löschen
Kurzbeschreibung
Der Benutzer möchte mit einem definierten Tool Daten löschen.
Auslöser / Motivation
Der Benutzer möchte Daten löschen. Da es aus Business Gründen
keinen Sinn mehr ergibt die Daten länger als nötig auf zu
bewahren, werden alte Daten gelöscht.
Ergebnis
Daten wurden gelöscht
Akteure
BI Plattform Administrator und Developer
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit ETL Tool oder anderem Tool erstellt
Nachbedingungen
ETL Löschprozesse wurden initiiert
Essenzielle Schritte
-
5.4.1.8
Use Case 8 „Ladeprozeduren anstossen“
Name des Use Case
Lade Prozeduren anstossen
Kurzbeschreibung
Der Benutzer möchte eine spezifische Ladeprozedur anstossen.
Auslöser / Motivation
Der Benutzer benötigt neue Daten. Daher soll er diese
Schnittstelle selber bedienen können.
Ergebnis
Ladeprozeduren konnten gestartet werden
Akteure
BI End User, BI Plattform Administrator und Developer
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit ETL Tool oder anderem Tool erstellt
Nachbedingungen
ETL Ladeprozesse wurde initiiert
Essenzielle Schritte
-
_____________________________________________________________________________
21
_____________________________________________________________________________
5.4.1.9
Use Case 9 „Daten Provider anbinden“
Name des Use Case
Daten Provider (Datenquellen) anbinden
Kurzbeschreibung
Anbinden eines neuen Daten Providers
Auslöser / Motivation
Neue Daten Provider sollen angebunden werden
Ergebnis
Neue Daten Provider sind angebunden
Akteure
BI Plattform Administrator und Developer
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit ETL Tool oder anderem Tool erstellt
Nachbedingungen
Daten werden aus dem Quellsystem extrahiert
Essenzielle Schritte
Datenbank Zugriffe müssen geregelt sein (User- / Rollenkonzept)
5.4.1.10 Use Case 10 „Daten Consumer anbinden“
Name des Use Case
Daten Consumer anbinden
Kurzbeschreibung
Anbinden eines neuen Daten Consumers
Auslöser / Motivation
Neue Daten Consumer sollen angebunden werden
Ergebnis
Neue Daten Consumer sind angebunden
Akteure
BI Plattform Administrator
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
Verbindung mit ETL Tool oder anderem Tool erstellt
Nachbedingungen
Daten werden vom Sourcesystem geladen
Essenzielle Schritte
Datenbank Zugriffe müssen geregelt sein (User- / Rollenkonzept)
_____________________________________________________________________________
22
_____________________________________________________________________________
5.4.1.11 Use Case 11 „Daten transformieren“
Name des Use Case
Daten transformieren
Kurzbeschreibung
Daten sollten nach definierten Anforderungen transformiert werden
Auslöser / Motivation
Der Fachbereich benötigt transformierte Daten.
Ergebnis
Daten sind den Anforderungen entsprechend transformiert
Akteure
BI Plattform Administrator und Developer
Eingehende Information
Vordefinierte Parameter
Vorbedingungen
ETL Transformationsprozesse sind definiert
Nachbedingungen
-
Essenzielle Schritte
-
_____________________________________________________________________________
23
_____________________________________________________________________________
5.5
Pflichtenheft
Das Pflichtenheft beschreibt Ziele, welche mit der angestrebten Lösung zu erreichen sind sowie
die Anforderungen und Wünsche an das zukünftige System.
5.6
Ausgangslage
Wie in Kapitel 3 bereits erwähnt, sind die operativen Systeme durch analytische Auswertungen
und unkontrollierte Datenreplikationen von Fremdsystemen stark beeinträchtigt. Dies wiederum
führt zu Störungen im täglichen Betrieb.
5.7
Ist-Zustand
Viele Bereiche der Schweizerischen Post benötigen Daten aus diversen Datenbanksystemen für
Analysen und Auswertungen oder um die Daten im Sinne einer SOA als Service (nachfolgend
Enterprise Service ES) zur Verfügung zu stellen. Die Replikation der Daten erfolgt mittels
verschiedenster Technologien wie z.B. Snapshots, Replikation, Export / Import, Flatfiles, u.v.a.
Umsysteme
allgemeine operative
Systeme
überlastetes
operatives System
User
Application Server
Dedizierte operative
Systeme
XML Gateway
Enterprise Service Bus
Abildung 5.2: Ist-Zustand
_____________________________________________________________________________
24
_____________________________________________________________________________
In der Regel werden diese Analysen direkt auf den operativen Systemen ausgeführt. Diese
Analysen beeinträchtigen die operativen Systeme dermassen, dass dies gelegentlich zu
Störungen führt und nicht alle „online“ Anfragen bewältigt werden können.
1. Die Daten werden vermehrt von den operativen Datenbanken abgeholt, was zu
Betriebsstörungen führen kann. Diese Situation hat sich mit SOA akzentuiert.
2. Die Daten werden vermehrt auf andere Umsysteme repliziert, auf welchen danach die
Analysen der Daten durchgeführt werden.
3. Die Resultate der Analysen können je nach Umsystem variieren (kein Single Point of
Truth).
4. Die Daten müssen bis zu einem bestimmten Zeitpunkt (z.B. 06:00 Uhr) garantiert auf
einem Umsystem verfügbar sein, damit das Umsystem korrekt funktionieren kann.
5. Die Daten werden erst zur Laufzeit auf dem operativen System konsolidiert und
aggregiert, was die Performance der operativen Systeme negativ beeinflusst.
6. Die Reports werden direkt auf operativen Systemen ausgeführt, was sich ebenfalls
negativ auf die Performance auswirkt.
7. Die Bereiche benötigen immer häufiger zeitnahe Daten (real time) für Auswertungen.
Dies führt vermehrt dazu, dass Reports direkt auf operativen Systemen ausgeführt
werden.
8. Es gibt kein allgemein gültiges Konzept für die Integration der Daten.
9. Es gibt keine Infrastruktur, die Bereichsdaten zentral zur Verfügung stellt.
10. Nicht abgestimmte Datenstrukturen führen zu hohen Laufzeiten (normalisiert vs.
denormalisiert).
5.8
Ziel
Das Ziel ist es eine Plattform zu bauen, die die operativen Systeme entlastet, indem die Daten
den Consumer-Systemen zentral zur Verfügung gestellt werden. Bei Bedarf können die Daten in
aufbereiteter Form zur Verfügung gestellt werden, um allfällige Reports und Verarbeitungen
performant durchzuführen. Das Anbinden an bestehende DWHs sollte dabei ebenfalls möglich
sein.
_____________________________________________________________________________
25
_____________________________________________________________________________
5.9
Anforderungen
Aus den Interviews sowie aus unter Kapitel 5.7 erwähnten Betriebsproblemen, können folgende
Anforderungen abgeleitet werden:
5.9.1
PA1
PA2
PA3
PA4
PA5
PA6
PA7
PA8
Anforderungen aus dem Projektauftrag (PA)
Daten müssen auf einer separaten Plattform zur Verfügung gestellt werden, um die
operativen Systeme nicht mehr länger zu beeinträchtigen.
Bilden eines Single Point of Truth
Daten müssen auf einer separaten Plattform aggregiert werden.
Die Reports dürfen nicht mehr auf dem operativen System durchgeführt werden.
Die eingesetzten Replikationsmechanismen müssen Real Time bzw. Near Real Time
Funktionalitäten unterstützen.
Aufbau eines allgemein gültigen Konzepts für die Datenintegration.
Aufbau einer zentralen Infrastruktur für die Bereitstellung von Bereichsdaten für andere
Systeme
Verbesserung der Performance bei langlaufenden Reports durch Anpassen der
Datenstruktur (denormalisieren)
5.9.2
Zusätzliche Anforderung aus den Interviews
Ergänzend zu den Anforderungen aus dem Projektantrag wurden aus den Interviews zusätzliche
abgeleitet.
5.9.2.1
IB1
IB2
IB3
IB4
IB5
IB6
IB7
IB8
IB9
IB10
IB11
Businessanforderungen aus Interview (IB)
Die Auswertungen von Fremdsystemen dürfen nicht auf dem Quellsystem ausgeführt
werden.
Die Daten müssen von mehreren Monaten bis zu mehreren Jahren verfügbar sein.
Die Möglichkeit von Real Time, Near Real Time ist gewünscht.
Der Einsatz der bestehenden Tools sollte weiterhin möglich sein.
Das zukünftige System soll mind. die SLA Anforderungen (RTO, RPO,
Supportzeiten,usw.) der Quellsysteme erfüllen.
Die Prozesse für die Anbindung müssen klar definiert sein.
Beim Datentransfer soll auf die Kadenz und die Zeitkritikalität geachtet werden.
Die Aktualität der Daten muss sichergestellt sein.
Die neue Lösung soll günstiger sein.
Auswertungen mit Scheduler und Mailversand sollen weiterhin möglich sein.
Der Zeitpunkt der Datenintegration soll frei wählbar sein.
_____________________________________________________________________________
26
_____________________________________________________________________________
5.9.2.2
IS1
IS2
IS3
IS4
IS5
IS6
IS7
IS8
IS9
IS10
IS11
IS12
IS13
IS14
Systemanforderungen aus Interviews (IS)
Es müssen verschiedenste Datenquellen angebunden werden können (analog heutiger
Situation)
Verschiedenste Protokolle werden unterstützt (JDBC, SQL*Net, SOAP, ODBC,...)
Es sollen multidimensionale Auswertungen möglich sein.
Das neue System soll stabil / robust sein.
Die Anbindung soll schnell und unkompliziert sein.
Das System muss bidirektional wirken können. (Input aus Sourcen, Delivering von
Targets)
Die von den operativen Systemen replizierten Daten müssen wiederverwendbar sein.
Es müssen verschiedenste Workloads durchgeführt werden können (komplexe Reports,
Data Mining, OLAP, etc.).
Das zukünftige System muss skalierbar sein (vertikal / horizontal).
Das System kann mit einer hohen Anzahl Concurrent-User umgehen.
Die auftretenden Lastspitzen (z.B. an Monatsenden) müssen bewältigt werden können.
Das System muss einem hohem Transaktionsvolumen gewachsen sein.
Das Datenvolumen soll keine Herausforderung darstellen (min. 3 Mt, max. 10Jahre).
Das System soll bei Bedarf (z.B. an Monatsenden) skalierbar sein.
_____________________________________________________________________________
27
_____________________________________________________________________________
5.10 Kriterienkatalog
Um den Kriterienkatalog erstellen zu können, muss die Granularität der Anforderungen erhöht
werden. Nur dann können diese Kriterien entsprechend ihrem Erfüllungsgrad hin gemessen
werden. Dabei werden Muss- und Kann-Ziele definiert.
Hierbei ist es sinnvoll, Gruppierungen nach den zu beurteilenden Kriterien zu erstellen und die
erhobenen Anforderungen direkt im Kriterienkatalog zu referenzieren (z.B. PA1).
Die Anforderungen werden nach funktionalen und nicht-funktionalen Anforderungsgruppen
aufgeteilt.
Funktionale Anforderungen
Data Integration
Plattform
Performance
Skalierbarkeit
Flexibilität / Vielseitigkeit





Nicht Funktionale Anforderungen
Prozesse
Kosten


5.10.1
Funktionale Anforderungen
Data Integration (DI)
Nr. Kriterium
DI1 Real Time resp. Near Real Time Datenreplikation möglich
DI2
DI4
Verschiedenste Datenquellen müssen angebunden werden
können (analog heutiger Situation)
Daten werden bei Integration in eine gemeinsame
einheitliche Datenstruktur überführt
Unregelmässige Ad Hoc Datenintegration möglich
DI5
Denormalisieren der Daten bei Anbindung
DI3
Referenz
PA5, IB3,
IB8
IS1
Muss
X
Kann
X
IS7
X
IB7, IB8,
IB11
PA8, IS3,
IS8, IS11
X
X
_____________________________________________________________________________
28
_____________________________________________________________________________
Plattform (PL)
Nr.
Kriterium
PL1
Aufbau einer separaten zentralen Plattform für
Bereitstellung und Aggregation der Daten
PL2
PL3
PL4
PL5
PL6
PL7
PL8
PL9
PL10
PL11
PL12
PL13
PL14
PL15
PL16
PL17
PL18
PL19
PL20
Der Zugriff auf die Daten ist nicht an ein Protokoll
gebunden
Daten sind während 3 Monaten verfügbar
Daten sind während 12 Monaten verfügbar
Daten sind während >12 Monaten verfügbar
Schnelle, einfach Anbindung
Anbinden von Oracle RDBMS
Anbinden von MySQL
Anbinden von MSSQL
Anbinden von Flatfiles, XML
Der Zugriff mit bestehenden Tools ist weiterhin möglich
Es werden multidimensionale Auswertungen unterstützt.
Die Auswertungen können mittels Scheduler sowie
anschliessendem Mailversand erstellt werden.
Durch den Einsatz bewährter Technologien wird eine hohe
Stabilität und Robustheit des Systems gewährleistet
Die Plattform ist so dimensioniert, dass Lastspitzen keine
Probleme darstellen.
Die neue Plattform erfüllt mindestens die SLA
Anforderungen der Quellsysteme
Das System kann sowohl als Target, wie auch als Source
verwendet werden.
Die Plattform kann mindestens 20 Concurrent-User
bewältigen, welche Standardreports ausführen.
Die Plattform kann mindestens 50 Concurrent-User
bewältigen, welche Standardreports ausführen.
Die Plattform kann mindestens 100 Concurrent-User
bewältigen, welche Standardreports ausführen.
Performance (PE)
Nr. Kriterium
PE1 Zu verarbeitendes Transaktionsvolumen:
hohes Transaktionsvolumen (5-6 Millionen Transaktionen
pro Tag à 1KB)
PE2 Zu verarbeitendes Transaktionsvolumen:
mittleres Transaktionsvolumen (2-5 Millionen Transaktionen
pro Tag à 1KB)
PE3 Zu verarbeitendes Transaktionsvolumen:
tiefes Transaktionsvolumen (1-2 Millionen Transaktionen pro
Tag à 1KB)
PE4 Die Datenmodellierung ist auf Performance ausgerichtet
Referenz
PA1,
PA2,
PA3,
PA4,
PA7, IB1
IS2
IB2
IB2
IB2
IB9, IS5
IS1
IS1
IS1
IS1
IB4, IS8
IS3, IS8
IB10
Muss
X
X
X
X
IS4
X
X
X
X
X
X
X
X
X
X
IS11
X
IB5
X
IS6
IS10
Kann
X
X
IS10
X
IS10
X
Referenz
IS12
Muss
IS12
X
IS12
X
PA8, IS8
X
Kann
X
_____________________________________________________________________________
29
_____________________________________________________________________________
Skalierbarkeit (SK)
Nr. Kriterium
SK1 System muss bei Bedarf skalierbar sein (on demand)
SK2 Das System ist horizontal wie auch vertikal skalierbar
Flexibilität (FL)
Nr. Kriterium
FL1 Die Wiederverwendbarkeit der Daten ist gewährleistet.
FL2 Die Daten sind veränderbar
5.10.2
Referenz
IS14
IS9,
IS10,
IS11,
IS12,
IS13
Muss
Kann
X
X
Referenz
IS7
IS7
Muss
Kann
X
X
Referenz
IB6
PA6,
PA8, IB6,
IS5
Muss
X
X
Kann
Referenz
IB9
Muss
Kann
X
Nicht Funktionale Anforderungen
Prozesse (PZ)
Nr. Kriterium
PZ1 Es sind definierte Integrationsprozesse vorhanden.
PZ2 Erstellen von allgemein gültigen Richtlinien und Standards
für die Datenintegration
Kosten (KS)
Nr. Kriterium
KS1 Die neue Lösung ist günstiger als eine Einzellösung
_____________________________________________________________________________
30
_____________________________________________________________________________
5.11 Voranalysebericht
In dieser Phase des Projektes wurden folgende Aktivitäten durchgeführt:




5.11.1
Erhebung des Ist-Zustandes
Erhebung der Anforderungen
Definition von Use Cases
Erstellung des Kriterienkataloges (Pflichtenheft)
Erhebung des Ist-Zustandes
Bei der IST-Zustand Analyse soll aufgezeigt werden welche Prozesse, Techniken und
Technologien eingesetzt werden.
Hierbei wurden sämtliche existierende Dokumentationen und Prozessdefinitionen sowie die
eingesetzten Technologien und Produkte analysiert.
5.11.1.1 Dokumentation
Die bestehende Dokumentation verweist hierbei lediglich auf die Fachliteratur. Es sind keine
konkreten Architekturen bekannt, vielmehr werden für die jeweiligen Projekte situativ
zugeschnittene Architekturen definiert.
Als Leitfaden dient das interne Dokument „BI Positionierung IT“. Dieses Dokument beschreibt
eine Referenzarchitektur, die sich stark an die A. Bauer / H. Günzel Architektur anlehnt. Jedoch
wird darauf hingewiesen, dass die beschriebene Referenzarchitektur je nach Gegebenheiten und
Anforderungen zu überprüfen ist.
5.11.1.2 Prozesse
Es wird auf Prozesse von bekannten BI Autoren (R. Kimball, A. Bauer / H. Günzel, W. Inmon,
etc.) hingewiesen, allerdings fehlen konzeptionell ausgearbeitete Prozesse. Das führt dazu, dass
bei jedem Projekt wieder von vorne begonnen werden muss und viele Grundsatzentscheidungen
und Prozesse ständig neu definiert werden müssen. Dadurch kommt es sowohl zu einem
organisatorischen, als auch technischen Mehraufwand.
Mittels standardisierter Prozesse wäre eine grössere Effizienz zu erreichen und die Durchlaufzeit
eines Projektes wären um einiges kürzer. Zudem wären die Zuständigkeiten und Aufgaben der
beteiligten Personen klar geregelt.
5.11.1.3 Technologien
Bei der Überprüfung der Ist-Situation wurde festgestellt, dass bei BI Projekten jeweils
verschiedenste Technologien zum Einsatz kommen. Dies ist jedoch völlig normal, da
unterschiedliche Business Anforderungen bestehen, welche nicht mit einheitlichen Technologien
gelöst werden können.
_____________________________________________________________________________
31
_____________________________________________________________________________
5.11.1.4 Produkte
Die grösste Herausforderung stellen die Produkte selbst dar, da hier ein sehr breites Produktportfolio besteht. Diese Gegebenheit ist sehr verlockend, da sich dadurch eine Vielzahl von
Lösungen anbietet. Andererseits ist genau dieser Umstand, der Grund für die bestehenden
Insellösungen. Dadurch benötigt ein Unternehmen entsprechend gut ausgebildete Mitarbeiter, die
über ein enormes Fachwissen der breiten Produktpalette verfügen. Das Betreiben einer solchen
Lösung, wird schnell zu einer Herausforderung, da mit höchster Wahrscheinlichkeit das Knowhow nur bei einzelnen Mitarbeitern vorhanden sein wird. Ausserdem besteht die Gefahr, dass
durch diese Vielzahl an Produkten keine konkreten Richtlinien eingehalten werden können.
Dies führt zu vielen Einzellösungen und zu Problemen im Betrieb, wenn die Dokumentationen zu
wenig ausführlich sind, sofern sie überhaupt vorhanden sind.
In diesem Bereich ist eher eine Harmonisierung des Produktportfolios anzustreben. So könnte
das Know-how viel effizienter aufgebaut werden. Richtlinien und Standards wären viel einfacher
zu implementieren und zu überprüfen.
In dem Produktportfolio werden die Einsatzgebiete grob beschrieben, jedoch fehlt die Information
wann und wie welches Produkt eingesetzt wird.
5.11.2
Erhebung der Anforderungen
Damit der Soll-Zustand realisiert werden kann, müssen die Anforderungen bekannt sein.
Diese wurden, wie bereits erwähnt, mittels Interviews erhoben. Da uns der direkte Kundenkontakt
nicht gestattet ist, wurden die Interviews mit Schlüsselpersonen im Bereich BI, DWH und
Architektur geführt. Diese Personen haben nebst ihrem Fachbereich zusätzlich die Kundensicht
vertreten.
Es wurden Fragen im Bereich Business sowie System gestellt, damit später in den genannten
Bereichen die entsprechenden Anforderungen abgeleitet werden konnten.
Die Schwerpunkte der Interviews bestanden im Erheben der
Business Anforderungen









Aktualität der Daten
Quellsysteme und Zielsysteme
Art von Reports
Anzahl Reports
Kadenz und Zeitkritikalität der Datentransfers
Prozesse
Datenvolumen
Zielpublikum
Anzahl User
sowie der
Technischen Anforderungen



Berücksichtigen der aktuellen und zukünftigen Systemlandschaft und Umsysteme
Einsatz der bestehenden Tools
Einsatz der bestehenden Technologien
_____________________________________________________________________________
32
_____________________________________________________________________________







Einsatz der bestehenden Datenbanktechnologien
Anzahl Benutzer (concurrent)
Skalierbarkeit des zukünftigen Systems
Recovery Time Objective (RTO)
Recovery Point Objective (RPO)
Lastspitzen und Lastverteilung
Richtlinien und Standardisierung
Die erhobenen Anforderungen wurden einerseits in funktionale und nicht funktionale
Anforderungen aufgeteilt und andererseits in einem Kriterienkatalog festgehalten. Damit kann
erreicht werden, dass die Anforderungen messbar sind und die Umsetzung der
Anforderungskriterien gleichzeitig überprüft werden kann.
Die Anforderungskategorien sehen wie folgt aus:
Funktionale Anforderungen





Data Integration
Plattform
Performance
Skalierbarkeit
Flexibilität / Vielseitigkeit
Nicht Funktionale Anforderungen


5.11.3
Prozesse
Kosten
Erstellung des Kriterienkatalog (Pflichtenheft)
Mit der Erstellung des Katalogs wurden die nötigen Kriterien definiert, welche aus den
funktionalen und nicht funktionalen Anforderungen abgeleitet wurden. Gleichzeitig ist damit der
Erreichungsgrad der Umsetzung messbar.
Die Kriterien weisen ein hohe Granularität in Bezug auf die Anforderungen auf und werden als
Muss oder Kann Kriterien klassifiziert.
Die Muss Kriterien müssen für den Soll-Zustand zwingend umgesetzt werden. Das Nicht-Erfüllen
eines Kann Kriteriums hingegen wirkt sich jedoch nicht auf die Grundfunktionalitäten der
Plattform aus.
5.11.4
Definition von Use Cases
Damit die Ziele aus Sicht Fachbereich sichtbar gemacht werden konnten, wurden Use Case
Diagramme erstellt. Diese beschreiben welcher Inhalt nötig ist, um die Ziele zu erreichen.
In der Phase der Voranalyse, beschränken sich die Use Cases lediglich auf die Business Cases.
Dem zu Folge werden die Funktionen auch nur aus Sicht Business modelliert. Die Use Cases
richten sich nach den Business Requirements.
_____________________________________________________________________________
33
_____________________________________________________________________________
Im Bereich Business Intelligence sind die Use Cases limitiert, da die Haupttätigkeiten aus der
Sicht des End Users im Bereich der Auswertung der Daten liegen. Das System als Ganzes
besteht aber dennoch aus weiteren Merkmalen wie Extrahieren, Laden und Transformieren.
Die Modellierung der Systemkomponenten wird in der Phase Konzept eingehender behandelt.
_____________________________________________________________________________
34
_____________________________________________________________________________
6
Konzept
In diesem Kapitel wird das Konzept für die Entstehung der „Zentralisierte und modulare Business
Intelligence Infrastruktur und Plattform“ erstellt. Dabei werden die Aspekte zur Realisierung sowie
der Einführung erarbeitet und definiert.
6.1
Einleitung
Für die Realisierung des Konzepts sollen zunächst mögliche Lösungen erarbeitet, analysiert und
bewertet werden. Nach der Bewertung der erarbeiteten Lösungsmöglichkeiten wird sich eine
Lösung herauskristallisieren und diese wird als zukünftige Plattform definiert.
In einem weiteren Schritt sind die Details des Konzepts zu erarbeiten und die Zielarchitektur, die
notwendigen Prozesse und Richtlinien zu definieren.
6.2
Problematik bei der Schweizerischen Post
In der IT Infrastruktur der Schweizerischen Post greifen einzelne Systeme oft auf andere
Systeme zu, um Auswertungen und Analysen durchzuführen. Häufig ziehen die Systeme die
benötigte Daten ab und persistieren diese auf anderen Systemen. Hierbei werden diese Daten
erneut von weiteren Systemen in Anspruch genommen. Daraus ergibt sich, dass Daten
redundant gehalten werden und man keinen „Single Point of Truth“ mehr hat.
Diese Situation wurde in der Problemstellung [Kapitel 4] bereits angesprochen.
Aus oben genannter Situation ergibt sich ein sogenanntes Spinnennetz (Spiderweb), welches
bekanntermassen langfristig zu Problemen führt, da sämtliche Systeme von ihren Quellen
abhängig sind. Zudem werden die Daten immer wieder nach Anforderungen des Business so
manipuliert wie es gerade sinnvoll ist, was jedoch die Wiederverwendbarkeit der Daten erheblich
einschränkt.
Abbildung 6.1: Spinnennetz (Spiderweb)
_____________________________________________________________________________
35
_____________________________________________________________________________
6.3
Daten
Im nächsten Kapitel wird das Thema Daten näher erläutert.
6.3.1
Definition Daten
Daten sind eine Sammlung von einzelnen Zeichen, die in Kombination einen Sinn und Nutzen
ergeben. Daten alleine ergeben allerdings noch keinen Mehrwert. Erst wenn diese zu
Informationen weiter verarbeitet werden, können Daten für ein Unternehmen sinnvoll eingesetzt
werden. Dabei gilt es, die Daten in einer sinnvollen Struktur zu speichern und gegebenenfalls in
Relation zu anderen Daten zu bringen.
W. Inmon unterteilt in seinem Buch „Building the Data Warehouse“ die Daten in zwei Kategorien:
 Primitive Data / Operational Data
 Derived Data / DSS Data
Abbildung 6.2: Quelle - W.Inmon „Building the Data Warehouse“
Während die „Primitive Data / Operational Data“ eher den Daten in einem ODS gleichen, so sind
die „Derived Data / DSS Data“ in einem DWH anzutreffen. Für unsere Thesis bedeutet dies, dass
wir die Daten, nachdem diese aus den operativen Datenbanken extrahiert wurden, später in ein
DWH überführen müssen.
6.3.2
Von Daten zu Informationen
Eine Schwierigkeit besteht darin, von Daten zu Informationen zu gelangen. Was auf den ersten
Blick für sich alleine uninteressant erscheint, gewinnt in Kombination mit anderen Daten schnell
an Bedeutung. Deshalb ist es sehr wichtig, Art und Weise und den Ort der Datenspeicherung
frühzeitig zu bestimmen. Datenstrukturen und Relationen werden in einem Datenmodell
zusammengefasst, welche mittels Entity Relationship Diagramm verwaltet werden.
_____________________________________________________________________________
36
_____________________________________________________________________________
Daten sind das wichtigste Gut eines Unternehmens, aber erst wenn sie auch zu Informationen
veredelt werden.
Mit Informationen können Unternehmen kritische Entscheidungen auf der Basis von objektiven
Werten treffen und das Business somit zum Optimum führen und in der Regel kommerzielle
Vorteile erlangen.
Ohne die richtigen Informationen würde ein Unternehmen Entscheidungen im Blindflug treffen
und damit allenfalls einen kommerziellen Schaden herbeiführen.
6.3.3
Informationspyramide
Den Detailierungsgrad und die Wichtigkeit der Informationen kann man am besten mittels einer
Informationspyramide darstellen.
Dabei werden die Informationen immer mehr abstrahiert und aggregiert, bis diese letztendlich für
jeden Bedürfnisträger in der gewünschten Form vorliegen.
Strategische Ebene:
 Geringe Anzahl an User
 Wochentliche/Monatliche Aktualisierung
 Grafischorientierte Tools
CEO/CFO/CIO
Leiter
Leiter Finanzen Leiter
Briefzentrum
Paketzentrum
Fachdienste
Poststellen
Integrations
Poststellen Leiter
Systeme
Buchhalter
Mitarbeiter
Taktische Ebene:
 Grosse Anzahl an Usern
 Tägliche/Wochentliche Aktualisierung
 Flexible Analyse- und Reporting-Tools
Operative Ebene:
 Grosse Anzahl an Usern
 Zeitnahe Aktualisierung der Daten
 Zugriff auf detaillierte Daten
 Reporting
Abbildung 6.3: Informationspyramide
_____________________________________________________________________________
37
_____________________________________________________________________________
6.4
Begriffsdefinitionen und Technologien
Um ein gemeinsames Verständnis des Konzeptes zu schaffen, werden nachfolgend einzelne
wichtige Begriffe erläutert.
6.4.1
Dataware House (DWH)
Ein Dataware House ist eine Datenbank die meist riesige Datenmengen beinhaltet und die für
Datenanalysen ausgelegt ist. Es kann historische Daten abbilden und dient als Quelle für BIApplikationen. Als Datenquellen dienen dabei meist operative Datenbanken aber auch andere
Dataware Houses.
Allerdings gibt es in der Fachliteratur keine klare einheitliche Definition zum DWH. Folgende drei
Autoren sind besonders hervorzuheben, die eine weit verbreitete Definition erstellt haben.

W. Inmon: „A data warehouse is a subject-oriented, integrated, time-variant, nonvolatile
collection of data in support of management´s decision-making process.“

A. Bauer / H. Günzel: „Ein Data-Warehouse ist eine physische Datenbank, die eine
integrierte Sicht auf (beliebige) Daten darstellt, um Analysen zu ermöglichen.“

R. Kimball: „A data warehouse is a copy of transaction data specifically structured for
querying and reporting.“
6.4.2
Data Mart
Bei einem Data Mart werden, aus applikatorischen oder organisatorischen Gründen, Teile eines
DWHs in eine separate Datenbank extrahiert. Dabei kann zwischen abhängigen und
unabhängigen Data Marts unterschieden werden. Die Daten weisen jeweils eine hohe
Denormalisierung und Aggregation auf und betreffen meist einen separaten Fachbereich. Data
Marts sind die multidimensionale Sicht eines Fachbereiches. Durch die Verlagerung auf eine
andere Maschine, kann zusätzlich die Performance verbessert werden.
_____________________________________________________________________________
38
_____________________________________________________________________________
6.4.3
Operational Data Store (ODS)
In dem folgenden Kapitel wird der ODS näher beschrieben.
Dabei wird auch auf die verschiedenen ODS Klassen nach Definition von W. Inmon
eingegangen.
6.4.3.1
Was ist ein ODS?
Bei dieser Frage scheiden sich die Geister. Im BI Umfeld sind verschieden Spezialisten tätig, die
Definitionen und Referenzarchitekturen realisiert haben und nach denen sich die meisten BI
Architekten richten. Die bekanntesten Spezialisten sind R. Kimball, W. Inmon und A. Bauer / H.
Günzel.
Alle obengenannten „Referenzen“, haben ihre Definition bezüglich ODS erläutert. Unsere
Definition basiert auf allen drei, da eine Kombination dieser aus unserer Sicht am meisten Sinn
macht.
Der ODS ist eine zentralisierte und integrierte Datensammlung, bei der die operativen
Quellsysteme als Zulieferer dienen. Das ODS beinhaltet die gleiche Granularität der Daten wie
die operativen Datenbanken und weist eine Begrenzung bezüglich historischen Daten aus. Dies
bedeutet, dass die Daten nur für eine gewisse Zeit vorhanden sind. Anschliessend werden diese
entweder gelöscht oder in ein DWH überführt.
Der ODS ist Applikationsneutral. Das Datenmodell ist nicht auf eine spezifische Applikation
zugeschnitten, sondern auf Wiederverwendbarkeit ausgerichtet.
Die Daten in einem ODS sind aktualisierbar. Es ist allerdings empfehlenswert, die Mutationen
direkt auf den operativen Datenbanken durchzuführen und die Daten anschliessend erneut in den
ODS zu laden.
Sinnvollerweise ist ein ODS in verschiedene Kategorien unterteilt (Subject Oriented).
Dabei werden in grossen Unternehmen die Daten in verschiedene Kategorien unterteilt, so dass
die verschiedenen Business Anforderungen abgedeckt werden können.
Dies erleichtert das Management der Informationen, zudem können die Daten besser integriert
werden.
Die Daten eines ODS werden für operative Zwecke verwendet. Daher ist es sinnvoll diese so
aktuell wie möglich zu halten. Zusätzlich unterliegen die Daten aus den operativen Systemen
einer hohen Volatilität. Das heisst, die Daten sind ständigen Veränderungen ausgesetzt. Dies ist
einer der Hauptunterschiede zum DWH.
_____________________________________________________________________________
39
_____________________________________________________________________________
6.4.3.2
Klassenbeschreibung
W. Inmon unterteilt das ODS in verschiede Klassen. Die Klassen unterscheiden sich
untereinander aufgrund des zeitlichen Aspektes bei der Aktualisierung im ODS.
Klasse I:
Das Zeitintervall bis die Daten im ODS vorhanden sind, dauert nur wenige Millisekunden. Diese
Art von Aktualisierung ist für den End User transparent. Das System steuert die Übermittlung,
respektive die Replikation zum ODS. Bei diese Art von Replikation kann von Real Time
gesprochen werden. Für den End User ist es nicht feststellbar, ob sich der Datenbestand im ODS
vom operativen System unterscheidet.
Klasse II:
Bei dieser Klasse vergehen Stunden bis die Daten ins ODS überführt werden. Der End User kann
den Unterschied zwischen operativen System und ODS feststellen.
Klasse III:
In der Klasse III, werden die Daten einmal pro Tag ins ODS repliziert. In der Regel geschieht dies
über Nacht mittels klassischer Ladeprozedur.
Klasse IV:
Die Klasse IV hat den grössten zeitlichen Intervall bezüglich Datenüberführung. dies kann von
mehreren Wochen bis zu mehreren Jahren dauern. Diese Klasse regelt die Datenüberführung
vom ODS ins DWH.
Klasse I
(Millisekunden)
Klasse II
(Stunden)
ODS
Klasse IV
(Monaten – Jahren)
DWH
Klasse III
(Tage)
Abbildung 6.4: ODS Klassen
_____________________________________________________________________________
40
_____________________________________________________________________________
6.4.4
Unterschied zwischen ODS und DWH
Auf den ersten Blick scheinen ODS und DWH sehr ähnlich. Geht es jedoch um Volatilität,
Aktualität und Detailierungsgrad der Informationen, werden erhebliche Unterschiede sichtbar.
Während beim ODS die Daten in kurzen Intervallen laufend aktualisiert werden, werden im DWH
die Änderungen mittels einem erstellten Snapshot in längeren Intervallen übertragen und
historisiert. Kurz gesagt, enthält der ODS aktuelle / frische Daten, während das DWH historische
Daten beinhaltet.
Ein weiterer Unterschied ist die Granularität der Daten. Im ODS sind die Daten sehr detailliert
vorhanden, wohingegen im DWH die Daten bereits aufbereitet und aggregiert vorliegen.
Aus Sicht des DWH ist der ODS nur eine weitere Datenquelle.
6.4.5
Basisdatenbank
Die Basisdatenbank wird gemäss A. Bauer / H. Günzel als Zwischenstufe zwischen operativen
Datenbanken und dem DWH bezeichnet. Sie dient als Integration der Daten für verschiedene
Analysen und agiert als Verteiler. Es wird Wert drauf gelegt, dass die Wiederverwendbarkeit für
andere Zielsysteme gegeben ist.
6.4.6
Unterschied zwischen Basisdatenbank und ODS
Der Unterschied zwischen einer Basisdatenbank und dem ODS besteht darin, dass die Daten
immer in die Basisdatenbank integriert und mehrheitlich auch transformiert werden. Die
Basisdatenbank wird nicht eingesetzt, um etwaige Aggregationen vorzunehmen. Diese Aktionen
werden im DWH durchgeführt, nachdem die Daten weitergereicht wurden.
Grundsätzlich stellt die Basisdatenbank im Gegensatz zum ODS nur eine „Datendrehscheibe“ für
das DWH dar. Mit der Basisdatenbank werden auch Qualitätssicherungsfunktionen
wahrgenommen.
6.4.7
Daten Replikation
Daten Replikationsmechanismen werden eingesetzt, um Daten von einem System zum anderen
zu replizieren. Diese Aktion wird nötig, wenn operative Systeme entlastet werden sollen oder
Daten zur Weiterverarbeitung an ein anderes System übermittelt werden.
Vielfach werden Daten ausgelagert, um anschliessend darauf Reports zu erstellen oder Analysen
durchzuführen.
Es gibt diverse Replikationsmechanismen.
Hier die Bekanntesten:
 Materialized Views
 triggerbasierte Replikation
 transaktionsbasierte Replikation
 High Water Mark Replikation
 logbasierte Replikation
_____________________________________________________________________________
41
_____________________________________________________________________________
In unserer Semesterarbeit (CAS BI01) haben wir uns bereits ausführlich mit diversen
Replikationsmechanismen auseinander gesetzt, weshalb hier nicht mehr detailliert darauf
eingegangen wird.
6.4.8
Online Transactional Processing (OLTP)
Bei einem OLTP System werden Transaktionen verarbeitet. Dabei werden Daten gelesen,
geändert, gelöscht oder geschrieben. Ziel eines OLTP Systems ist es möglichst viele
Transaktionen in möglichst kurzer Zeit zur verarbeiten. Die Transaktionen sind meist von
einfacher Struktur und liefern tendenziell wenige Datensätze zurück.
6.4.9
Online Analytical Processing (OLAP)
Bei OLAP steht die Durchführung von komplexen Analysen in Vordergrund. Die dabei
verarbeitende Datenmenge ist sehr hoch und führt zu Antwortzeiten zwischen Sekunden und
Minuten. Als Resultat werden jeweils sehr viele Datensätze zurückgeliefert. Die Daten liegen für
die Abfragen meist in einem speziellen dimensionalen Modell vor. Häufig trifft man OLAP in
DWHs an.
6.4.10
Extract Transformation Load (ETL)
ETL ist ein Prozess, der in die drei Teilschritte Extract, Transformation und Load unterteilt wird.
Die Daten werden dabei aus einem Quellsystem extrahiert, in die gewünschte Form
umgewandelt und danach in das Zielsystem geladen.
Für den ETL Prozess werden häufig spezielle Tools verwendet.
Extraktionskomponente:
Die Extraktionskomponente ist für die Übertragung der Daten aus einer angebundenen
Datenquelle zur Transaktionskomponente verantwortlich. Als Datenquellen können nebst
anderen Datenbanken auch Flatfiles dienen.
Transformationskomponente:
Die Transformationskomponente hat zum Ziel die Daten, welche meist aus verschiedensten
Quellen kommen in eine allgemeingültige Struktur zu bringen.
Mögliche Transformationsschritte sind:
 Behandlung von Null-Werten
 Erstellen von zusätzlichen Schlüsseln
 Aggregation der Daten
 Standardisierung von Elementen
 Bereinigungen
 De- / Normalisierung
 u.v.a.
_____________________________________________________________________________
42
_____________________________________________________________________________
Ladekomponente:
Die Ladekomponente lädt die transformierten Daten in das Zielsystem. Dabei wir häufig auf
proprietäre Tools des Ziel RDBMS zurückgegriffen. Der Ladevorgang findet meist online statt, so
dass weiterhin auf die Daten des Zielsystems zugegriffen werden kann. Ausnahme bildet der
Initalload, der in der Regel offline durchgeführt wird.
6.4.11
Extract Load Transformation (ELT)
Beim ELT Prozess werden dieselben Komponenten wie beim ETL Prozess verwendet. Der
Unterschied liegt einzig und alleine in der Abfolge der Komponenten.
6.4.12
Structed Query Language (SQL)
SQL ist eine standardisierte Datenbanksprache für Abfragen und Manipulationen von Daten in
einer relationalen Datenbank. Dabei spielt es keine Rolle, ob man sich auf einer Oracle, einer
MSSQL oder einer Datenbank eines anderen Herstellers befindet. Viele Hersteller haben diesen
Standard mit eigenen Funktionalitäten erweitert, was sich durch eine leicht veränderte Syntax
bemerkbar macht.
SQL gilt seit 1992 als standardisierte Sprache (SQL ANSI 92).
6.4.13
Relational Database Management System (RDBMS)
Ein RDBMS ist ein Datenbank System, welches hauptsächlich auf die Relationen der Objekte
(i.d.R. Tabellen) zu einander ausgelegt ist. In einer Datenbank besteht die Gefahr Daten
redundant zu halten. Daher werden in der Software Design Phase die Funktionen so definiert,
dass solche Redundanzen möglichst vermieden werden.
Dies gelingt, indem man sich an die Normalisierungsregeln der 3. Normalform hält. Damit werden
die Entitäten so ausgelegt, dass diese in sich selbst eine sinnvolle Gruppierung ohne
Redundanzen bilden. Anschliessend werden diese Entitäten mit Primary Key ausgestattet und
eine implizite „uniqueness“ gebildet.
Diese Entitäten machen aber erst in Relation mit anderen Entitäten Sinn, da damit sinnvolle
Informationen gebildet werden können.
Die Relationen unter den Entitäten werden mittels Foreign Key bewerkstelligt. Dabei wird das
Primary Key Attribut der einen Entität als Foreign Key der anderen Entität benutzt. Somit stehen
ab diesem Zeitpunkt beide Entitäten in Relation zu einander.
Ein solches relationales Gebilde kann eine unübersichtliche Grössenordnung erreichen. Hierbei
können sogenannte Entity Relationship Diagramm (ERD) Tools Abhilfe schaffen.
Mit RDBMS Datenbanken müssen nicht zwingend die beschriebenen Relationen abgebildet
werden. Sie besagen nur, dass sie im Stande wären, solche Relationen herzustellen.
Die grössten und bekanntesten RDBMS-Anbieter sind:
 Microsoft
 Oracle
 IBM
 MySQL
 PostgreSQL (Open Source)
_____________________________________________________________________________
43
_____________________________________________________________________________
6.4.14
Change Data Capture (CDC)
Change Data Capture (CDC) ist eine Datenbank Technologie, die eingesetzt wird um
Datenveränderungen (Inserts, Updates, Deletes) aufzuzeichnen. Diese Technologie wird häufig
für Data Integration eingesetzt. In gewissen DWH Projekten, bei denes es wichtig ist
Datenveränderungen so schnell als möglich einfliessen zu lassen, ist diese Technologie äusserst
hilfreich.
Die Architektur besteht aus einer Source und einer oder mehreren Staging Areas. Die Staging
Area ist nicht mit dem DWH Staging Area zu verwechseln, da lediglich das Ziel System gemeint
ist.
Source Bereich
Staging Bereich
Change_Table
Subscriber_Table
Subscriber
Abbildung 6.5: CDC Architektur
CDC besteht aus folgenden Komponenten:



Capturing
Publishing
Subscriber
Der Capturing Mode befasst sich mit dem Erfassen der Datenveränderungen.
Der Publisihing Mode hingegen behandelt, wie die Datenveränderungen zum Zielsystem
kommen. Die Subscriber sind die eigentlichen Benutzter. In der Regel sind dies Applikationen.
Diverse RDBMS Anbieter, bieten für ihren Datenbanken die CDC Technologie an. Alles in allem
agieren diese nach ähnlichem Muster.
_____________________________________________________________________________
44
_____________________________________________________________________________
6.4.15
Real Time
Real Time beschreibt jenen Zustand, der die Dauer eines Vorganges klar definiert. Das heisst,
die Zeitdauer darf die kritische Marke des Systems nicht überschreiten, die ansonsten zu
schwerwiegenden Fehlern im System führt. In der Regel spricht man von „verzögerungsarm“. Da
diese Metrik relativ ist, muss diese von Fall zu Fall definiert werden. Dabei kann man von
Millisekunden bis mehreren Sekunden ausgehen.
Real Time wird vielfach mit „im selben Augenblick“ verwechselt. Dieser Zustand sagt noch nichts
über die Übertragungs- oder Verarbeitungsgeschwindigkeit aus.
6.4.16
Near Real Time
Near Real Time ist vom Grundsatz her ähnlich wie Real Time. Der Hauptunterschied ist, dass die
kritische Marke wesentlich höher angesetzt ist. Diese Systeme vertragen somit eine höhere
Latenz, bis es zu applikatorischen Problemen kommt.
6.4.17
Snapshots / Materialized Views
Snapshots oder Materialized Views ist eine Technik, die eingesetzt wird, um Views zu
materialisieren. Damit wird die logische Struktur einer View, die aus mehreren Tabellen bestehen
kann, in einer persistenten Form abgespeichert. In der Regel basiert eine Materialized View aus
einer Tabelle, die nach vordefinierten Zeitintervallen (Refreshs) aktualisiert wird. Bei den
Refreshs bestehen verschiedene Varianten. Es können full, inkrementelle oder
transaktionsbasierte Refreshs stattfinden. Full und inkrementelle Refreshs werden durch einen
Job Scheduler gesteuert.
Die Materialized Views werden dort eingesetzt, wo der Zugriff auf die normale View zu lange
dauert, weil diese aus vielen Joins über verschiedenste Tabellen besteht. Müssen solche Joins in
einer View aufgelöst werden, können enorme Probleme entstehen.
Materialized View werden häufig auch als Replikationsverfahren eingesetzt, da die Möglichkeit
besteht, diese in verteilten Datenbanken einzusetzen.
6.4.18
Normalisierung
Normalisierung ist meist bei relationalen Datenbanken anzutreffen. Dabei wird eine möglichst
hohe Redundanzfreiheit der Daten angestrebt. Dies geschieht, indem Teile der Daten zerlegt und
in eine andere Tabelle ausgelagert werden. Zusätzlich werden die Daten mit Primary und Foreign
Keys in Beziehung zueinander gesetzt. Meist wird nur bis zur 3. Normalform zerlegt, man spricht
dann häufig von 3NF.
6.4.19
Denormalisierung
Bei der Denormalisierung werden die Daten, die in normalisierter Form vorliegen, in wenige
grosse und flache Tabellen zurück umgewandelt. Dabei entstehen Redundanzen, die man jedoch
wegen der geringeren Komplexität und dem Performancegewinn gerne in Kauf nimmt.
_____________________________________________________________________________
45
_____________________________________________________________________________
6.4.20
Multidimensional
Von Multidimensional ist die Rede, wenn Daten so organisiert werden, dass Analysen über die
verschiedenen Dimensionen durchgeführt werden können. In der Regel spricht man von
Dimensionen und Fakten.
Dimensionen sind qualifizierende Daten, was bedeutet, dass sie von beschreibender Natur sind.
Fakten hingegen sind quantifizierende Daten, womit die Daten als Aggregate zur Verfügung
stehen.
Multidimensionale Konstrukte sind auch als Würfel (Cubes) bekannt. Cubes ermöglichen beliebig
viele Analysen über unterschiedliche Dimensionen.
6.4.21
Star Schema
Beim Denormalisieren werden die Daten häufig in ein sogenanntes Star Schema überführt.
Dabei wird eine Faktentabellen und Dimensionstabellen erstellt. Die Faktentabelle bildet mit Hilfe
der Foreign Keys aus den Dimensionen den Primary Key. Durch dieses Konstrukt erreicht man
eine hohe Abfragegeschwindigkeit, da weniger Joins nötig sind. Zusätzlich fördert es durch die
Einfachheit, die Verständlichkeit und Nachvollziehbarkeit.
6.4.22
Snow Flake Modell
Das Snow Flake Modell besteht aus einer Vielzahl von Star Schemas. Wie im Star Schema
beschrieben, steht die Faktentabelle mit den darunterliegenden Dimensionen im Vordergrund.
Das Snow Flake Modell verbindet verschiedene Faktentabellen und deren Dimensionen. Durch
das Verbinden können die Dimensionen weiter verwendet werden, womit diese zu „Comformed
Dimension“ werden.
6.4.23
Operative Datenbanken
Von operativen Datenbanken ist die Rede, wenn diese mittels Applikation für das operative
Kerngeschäft eines Unternehmen von enormer Wichtigkeit sind. In der Regel sind dies
sogenannte Online Transactional Processing (OLTP) Systeme. Eine typische OLTP Applikation
ist ein Customer Relationship Management System (CRM) eines Call Centers. Dort werden
Daten des Kunden online abgefragt und sogleich eingegeben. So ein operatives System
respektive Datenbank, ist auf kurze schnelle Transaktionen ausgelegt und bewältigt die Anfragen
innerhalb von Millisekunden.
Aufgrund der Art der Daten sind diese Systeme für Analysen begehrt, was jedoch zu
Performanceeinbussen im OLTP Bereich führen kann.
6.4.24
Schnittstellen
Schnittstellen ermöglichen in unserem Fall die Verbindung zu einer oder mehreren Datenquellen.
Sie bildet die Basis für den Datenaustausch zwischen den Systemen. Je nach
Datenbankhersteller werden unterschiedliche Datenbankschnittstellen angeboten.
_____________________________________________________________________________
46
_____________________________________________________________________________
6.4.25
Skalierbarkeit (horizontal / vertikal)
Skalierbarkeit ist ein weiter Begriff und bedingt daher einer näheren Interpretation. In einer IT
Systemlandschaft sind verschiedene Komponenten im Einsatz. Jede davon erfüllt eine spezielle
Funktion. Anhand eines Beispiels soll dies näher erläutert werden: zwei Systeme sind
netzwerkmässig miteinander verbunden und tauschen grosse Datenmengen untereinander aus.
Das eine System hat ein 1 Gbit/s Interface hat und das andere ein 100 Mbit/s Interface. In diesem
Fall wird das zweite System unweigerlich ans Limit seiner Bandbreite kommen. Als Konsequenz
daraus, wird man skalieren müssen, was hier einem Erhöhen der Bandbreite entspricht.
Skalierungsprobleme sind in folgenden Hauptkomponenten anzutreffen:
 Hardware
 Storage
 Operating System
 Datenbank
 Applikation
Bevor die Clustering resp. Grid Technologie sich durchgesetzt hat, wurde die Skalierung mittels
Beschaffung von grossen Infrastrukturen und dem stetigen Ausbau der Systeme realisiert, bis
dies nicht mehr möglich war. Diese Art von Skalierung ist auch bekannt als vertikale Skalierung
oder Scale Up.
Server
Memory
Einbau von
zusätzlicher Memory
Vertikale Skalierung
CPU
Einbau von
zusätzlicher CPUs
Abbildung 6.6: Vertikale Skalierung
_____________________________________________________________________________
47
_____________________________________________________________________________
Was ist Clustering resp. Grid Technologie?
Clustering Technologie wird hauptsächlich eingesetzt, um Systeme redundant zu gestalten.
Dabei ist nebst dem aktiven System immer auch ein passives System im Einsatz, das bei einem
allfälligen Ausfall des primären Systems, dessen Funktion übernehmen kann. Mit der Grid
Technologie hat man die Effizienz von Aktiv / Passiv System steigern wollen, so dass Aktiv /
Aktiv Systeme daraus resultierten. Dabei ist in der Regel eine proprietäre Software im Einsatz,
die das Locking Problem über die verteilte Infrastruktur wahrnimmt.
Failover Cluster
passiv
aktiv
Abbildung 6.7: Failover Cluster
Mittels Grid Technologie wurden neue Lösungen für die Skalierungsproblematik möglich. Durch
diese Technologie muss nicht mehr auf eine grosse und teure Infrastruktur gesetzt werden,
sondern es genügt die Beschaffung einer kleineren und kostengünstigeren Infrastruktur, die bei
Bedarf skalieren kann. Diese Art von Skalierung nennt man horizontale Skalierung oder Scale
Out.
Horizontale Skalierung
aktiv
aktiv
aktiv
aktiv
Datenbank
Abbildung 6.8: Horizontale Saklierung
6.4.26
Recovery Time Objective (RTO)
Recovery Time Objective definiert die Zeit, die bei einem Systemausfall längstens verstreichen
darf, bis das System wieder hergestellt und den Usern zur Verfügung steht. Diese Kennzahl ist
bei Business kritischen Applikationen von enormer Wichtigkeit, um bei einem Systemausfall
einen kommerziellen Schaden zu verhindern. Diese Kennzahlen werden in der Regel in den
Service Level Agreements (SLA) festgelegt. Daraus resultiert eine architektonische Lösung die
dem SLA standhält.
_____________________________________________________________________________
48
_____________________________________________________________________________
6.4.27
Recovery Point Objective (RPO)
Recovery Point Objective definiert das Datenvolumen, das bei einem allfälligen Systemausfall
entbehrt werden kann, ohne dass daraus ein kommerzieller Schaden seitens Business resultiert.
Das heisst, die verlorenen Daten können nicht restored werden und müssen neu erfasst resp.
rekonstruiert werden. Zusammengefasst bedeutet dies, dass definiert wird, wieviel Datenverlust
tragbar ist. Diese Kennzahl wird analog dem RTO in einem Service Level Agreement (SLA)
festgelegt. Mittels dieser Kennzahl werden entsprechende architektonische Lösungen realisiert,
die dem SLA entsprechen.
6.4.28
Reporting
Mittels Reporting können Reports (Berichte) aus den Daten in der Datenbank erstellt werden.
Dabei kann zwischen Standardreports und Ad Hoc Reports unterschieden werden. Bei den
Standartreports handelt es sich in der Regel um vordefinierte Abfragen, die vom Benutzer nicht
oder nur minimal angepasst werden können. Diese zeichnen sich in der Regel, dank einer gut
strukturierten Abfrage, durch eine gute Performance aus.
Ad Hoc Reports hingegen können durch den Benutzer zusammengestellt werden. Häufig wird
dafür ein spezielles Tool verwendet, in welchem, der Benutzer die entsprechenden Attribute
zusammenfügen kann. Das Tool generiert danach im Hintergrund ein entsprechendes SQL
Statement. Selbstverständlich können Ad Hoc Reports auch durch selbstgeschriebene SQL
Statements erstellt werden. Solche Ad Hoc Reports können aber zu Problemen führen, wenn
durch suboptimale oder nicht vorhandene Indexes zusätzlich grosse Datenmengen gelesen
werden müssen.
_____________________________________________________________________________
49
_____________________________________________________________________________
6.4.29
View Layer
Der Einsatz von Views ist bei Datenbank Technologien ein bewährtes Hilfsmittel. Mittels Views
können logische Sichten über mehren Datenbankobjekte (i.d.R. Tabellen, Views, Materialisierte
Tabellen) erstellt werden. Wie erwähnt sind dies logische Konstrukte ohne jegliche Persistenz.
Views dienen in der Regel nur als Abfrage Instrumente. Ein Vorteil von Views ist, dass die
Objekte neu benannt werden können. Dies ist vor allem bei weniger aussagekräftigen Attributen
nützlich.
In grossen Unternehmen besteht das Bedürfnis Daten aus verschiedenen Abteilungen bzw.
Bereichen verschiedenen Stakeholdern zur Verfügung zu stellen. Damit eine Vielzahl an
Redundanzen vermieden werden kann, werden die Daten zentral zur Verfügung gestellt. Da
oftmals nicht alle Datenstrukturen die Anforderungen aller Stakeholder, erfüllen, kann mit
entsprechenden auf die Stakeholder angepassten Views dieses Problem behoben werden.
Die Regelung der Zugriffe und Berechtigungen werden zentral verwaltet. Das Deployment kann
ebenfalls von zentraler Stelle gesteuert werden.
End User
Applikations Server
Umsystem
View Layer
View
View
View
View
View
View
View
View
View
Abbildung 6.9: View Layer
6.5
Zentralisierung vs. Dezentralisierung
Beim Aufbau einer Plattform stellt sich die Frage, ob diese zentral oder verteilt gegliedert sein
soll. Je nach Applikation und deren Einsatzzweck macht eine zentralisierte oder verteilte
Plattform mehr oder weniger Sinn.
Bei einem ODS macht eine zentralisierte Plattform mehr Sinn, da die bereitgestellten operativen
Daten eine grössere Erreichbarkeit der verschiedenen Bedürfnisträger ermöglicht.
Die Anforderung der Wiederverwendbarkeit der Daten wird mittels zentralisierter Plattform
vollumfänglich erfüllt.
Wäre ein ODS verteilt, ergäben sich verschiedene Domains auf welchen sich die End User zuerst
die nötigen Zugriffe und Berechtigungen beschaffen müssten. Zudem müssten die Daten unter
_____________________________________________________________________________
50
_____________________________________________________________________________
Umständen über verteilte Datenbanken in Relation (gejoint) gebracht werden, was eventuell gar
nicht möglich wäre, da die Datenstruktur dies gar nicht zulassen würde.
Ein verteilter ODS kann allerdings Sinn machen, wenn die einzelnen ODS's als eigene Kategorie
(Subject Oriented) bereitgestellt werden.
_____________________________________________________________________________
51
_____________________________________________________________________________
6.6
Definition Module „Zentralisierte und modulare BI Plattform und
Infrastruktur“
Damit die Bedürfnisse und Anforderungen der Kunden in einer standardisierten Form erfüllt
werden können, werden Module gebildet.
Damit besteht die Möglichkeit, dem Kunden eine optimale und schnelle Lösung zu bieten.
Die Module lassen sich wie in einem Baukastensystem untereinander kombinieren und die
Projektanforderungen können optimal erfüllt werden.
Die einzelnen Module werden aus einer Kombination von technischen und kundenspezifischen
Anforderungen abgeleitet. Diese werden wie folgt gebildet:
Extraktion
(Replikation)
Datenhaltung
(Aufbewahrung der Daten)
Aktualisierung
(Jobsteuerung)
Transformation
Reporting
DWH Überführung
Abbildung 6.10: Module zu „Zentralisierte und modulare Business Intelligence Plattform und Infrastruktur“
6.6.1
Extraktion
In diesem Modul wird die Extraktion spezifiziert. Der Kunde kann nach seinen Anforderungen aus
folgenden Extraktionseigenschaften, die in zwei Kategorien unterteilt sind, auswählen:
Datenaspekt:
 Extraktion 1:1
 tailorierte Extraktion
Zeitaspekt:
 Extraktion Real Time
 Extraktion Near Real Time
 Extraktion mit definierten Intervall
6.6.1.1
Extraktion 1:1
Mit dieser Option bestimmt der Kunde, dass seine Daten ohne jegliche Strukturänderung und
Transformation ins ODS übernommen werden. Dabei kann auch bestimmt werden, ob sämtliche
Tabellen einer Datenbank oder nur bestimmte übernommen werden sollen. Mit dieser Option wird
nichts bezüglich der Aktualität der Datenübernahme definiert.
_____________________________________________________________________________
52
_____________________________________________________________________________
6.6.1.2
Extraktion Real Time
Bei der Wahl dieser Option bestehen applikatorische Abhängigkeiten betreffend der Aktualität der
Daten. Dies bedeutet, dass beim Überschreiten der kritischen zeitlichen Marke, die Applikation
schwerwiegende Probleme bekommt. Bei dieser Option werden die Daten schnellst möglich
extrahiert.
6.6.1.3
Extraktion Near Real Time
Mit dieser Eigenschaft wird spezifiziert in welchem Intervall die Daten übernommen werden
sollen. Near Real Time hat im Vergleich zu Real Time ein grösseres Intervall. Dies Variante
eignet sich für Applikationen, die in Bezug auf die Aktualität der Daten weniger problemanfällig
sind.
6.6.1.4
Extraktion mit definierten Intervall
Hier kann der Kunde das gewünschte Intervall definieren. Dabei wird die Jobsteuerung so
eingestellt, dass diese den Bedürfnissen des Kunden gemäss den Projektspezifikationen
entspricht.
6.6.2
Aktualisierung (Jobsteuerung)
Bei der Aktualisierung handelt es sich in erster Linie um die Jobsteuerung. Grundsätzlich
kommen dabei zwei unterschiedliche Technologien zum Einsatz.
Einerseits mittels Scheduler, der für das Starten der Jobs zum definierten Zeitpunkt
verantwortlich ist, andererseits mittels einem Agenten, der dafür sorgt, dass die Daten repliziert
werden, sobald diese generiert wurden.
6.6.3
Datenhaltung
In diesem Modul werden unterschiedliche Datenaufbewahrungszeiten definiert. Dabei wird
zwischen zwei Datentypen unterschieden.



temporale Daten
Stammdaten
datumsbezogene Stammdaten
Eine maximale Datenaufbewahrungszeit gilt nur für temporale Daten. Auf die Definition wird
später noch genauer eingegangen.
Für Stammdaten und datumsbezogene Stammdaten hingegen wird keine maximale
Aufbewahrungszeit definiert, da diese in der Regel eher statisch sind und das Datenwachstum
begrenzt ist.
_____________________________________________________________________________
53
_____________________________________________________________________________
6.6.4
Transformation
Mit diesem Modul können Transformationen definiert werden. Dies kann von Strukturänderungen
bis hin zu Änderungen der Daten alles beinhalten. Zudem ist dieses Modul auch zuständig für
eine etwaige Überführung der Daten in ein DWH.
6.6.5
Reporting
Zu einer BI Plattform gehört unweigerlich auch mindestens ein Reportingtool. Für die Reports
werden nur die Schnittstellen zu den Daten zur Verfügung gestellt. Die nötigen Zugriffe und
Berechtigungen müssen aber zwingend geregelt und definiert werden. Darauf wird in einem
späteren Kapitel noch näher eingegangen.
6.6.5.1
Abgrenzung zu Reporting
Dieses Modul wird hier nicht detailliert behandelt, da der Kunde freie Wahl in Bezug des
Reportingtools hat. Durch die enorme Auswahl an Reportingtools, macht eine Eingrenzung der
Möglichkeiten keinen Sinn. Schlussendlich ist für die Plattform das entsprechende Statement
relevant und nicht durch welches Tool es ausgeführt wird.
6.6.6
DWH Überführung
In dieser Arbeit wird nicht genauer auf dieses Modul eingegangen, da der Hauptfokus dieser
Arbeit auf der Entlastung der operativen Systeme liegt und da dies von Fall zu Fall genauer
angeschaut werden muss. Hier müsste definiert werden, wie und in welcher Form die Daten in
das DWH überführt werden sollen.
_____________________________________________________________________________
54
_____________________________________________________________________________
6.7
Referenzarchitektur
Eine Referenzarchitektur soll helfen die Komplexität, durch Zerlegung in einzelne Module, zu
verringern. Sie trägt zu einem einheitlichen Verständnis der beteiligten Parteien bei und dient als
Basis für das Data Warehousing.
Für unsere Arbeit haben wir uns für die Referenzarchitektur von A. Bauer / H. Günzel
entschieden.
Datenbeschaffungsbereich
Auswertebereich
Extraktion
Datenquelle
Laden
Arbeitsbereich
Laden
Basisdatenbank
Analyse
Data
Warehouse
Transformation
Data
Warehouse
Manager
Metadatenmanager
Monitor
Repository
Datenfluss
Kontrollfluss
Abbildung 6.11: Referenzarchitektur A. Bauer / H. Günzel: Data Warehouse System
_____________________________________________________________________________
55
_____________________________________________________________________________
6.8
Lösungsvarianten / mögliche Architekturen
Nachfolgend wird gestützt auf verschiedenen Lösungsvarianten, welche auf den Anforderungen
basieren, die geeignetste Architektur erarbeitet.
6.8.1
Lösungsvariante 1
BI / ETL
Admin
1:1 (CDC)
Operatives
System
ETL
DWH
ODS
po
Re
ts
rts
or
Rep
BI User
Abbildung 6.12: Lösungsvariante 1
Motivation:
Bei dieser Variante steht der „Keep it simple“ Gedanke im Vordergrund. Es wird bewusst auf eine
geringe Komplexität geachtet.
Beschreibung:
Die Daten werden vom operativen System mittels CDC Technologie extrahiert und unverändert in
den ODS überführt. Dies führt zu einem Abbild des operativen Systems. Danach können die
Daten aus dem ODS extrahiert, transformiert und in ein DWH geladen werden.
Der BI User kann nun für Reports, die einen aktuellen Datenbestand verlangen, auf den ODS
oder für Abfragen, die historische Daten benötigen, auf das DWH zugreifen.
Der BI / ETL Admin hat die Möglichkeit die CDC und ETL Prozesse anzustossen und
gegebenenfalls anzupassen.
Vorteile
geringe Komplexität
hohe Standardisierung
schnelle Anbindung der operativen Systeme
Applikation muss für bestehende Abfragen nur
den Connectstring anpassen
Real Time möglich
Nachteile
geringe Flexibilität
Daten liegen im ODS noch nicht in optimaler
Datenstruktur vor
Anbindung von Systemen, die kein CDC
beherrschen wird nicht abgedeckt
_____________________________________________________________________________
56
_____________________________________________________________________________
6.8.2
Lösungsvariante 2
BI / ETL
Admin
1:1 *
Operatives
System
ETL
DWH
ODS
po
Re
rts
s
ort
Rep
* klassische Replikationsmechanismen
wie Materialized Views, SQL, ...
BI User
Abbildung 6.13: Lösungsvariante 2
Motivation:
Erweiterung der Variante 1 zur Behebung derer Nachteile.
Beschreibung:
Diese Variante unterscheidet sich nur geringfügig von der Variante 1. Der Unterschied besteht im
Zulassen von klassischen Replikationsmechanismen für die Übermittlung der Daten in den ODS.
Bei den „klassischen“ Replikationsmechanismen kommen Technologien wie Materialized Views,
SQL Queries, Triggers, uvm. zum Einsatz. [siehe Anhang Semesterarbeit CAS BI 01]
Der Aufgabenbereich und die Funktion des BI User und des BI / ETL Admin bleiben unverändert
im Vergleich zu Variante 1.
Vorteile
geringe Komplexität
hohe Standardisierung
schnelle Anbindung
Applikation muss für bestehende Abfragen nur
den Connectstring anpassen
Real Time möglich
Anbindung von Systemen, die kein CDC
beherrschen, ist abgedeckt
Nachteile
Daten liegen im ODS noch nicht in optimaler
Datenstruktur vor
_____________________________________________________________________________
57
_____________________________________________________________________________
6.8.3
Lösungsvariante 3
BI / ETL
Admin
EL
ETL
Staging
DWH
ODS
1-n
Rep
orts
Operatives
System
T
Rep
s
ort
BI User
<T=mit oder ohne Transformation>
Abbildung 6.14: Lösungsvariante 3
Motivation:
Bei dieser Variante kann anders als bei Variante 1 und 2 bereits, beim Laden in den ODS bereits
transformiert werden. Dabei kommt eine Staging Area zum Einsatz. Bei dieser Technologie wird
keine Middleware verwendet; alles läuft auf dem Zielsystem.
Beschreibung:
Wie bereits erwähnt werden dabei die Daten vom Quellsystem extrahiert. Bei der Replikation
kann die Datenstruktur erhalten bleiben (1:1 Replikation) oder eine tailorierte Replikation
(Teilreplikation) durchgeführt werden. Als Replikationsmechanismus kommen sämtliche
Technologien in Frage. Dies wird durch die Business Anforderungen entsprechend gesteuert. Die
Idee ist ein standardisiertes Verfahren zu implementieren, welches sämtliche Anforderungen
(Real Time bis asynchrone Replikation) abdecken kann. Das standardisierte Verfahren hat den
Vorteil, dass die Anbindung schnell und einheitlich durchgeführt werden kann. Dabei kann immer
nach dem gleichen Muster vorgegangen werden.
Auf dem Zielsystem, in diesem Fall dem ODS, wird ein ELT Tool installiert, welches für das
Laden und die Transformierung zuständig ist. Die extrahierten Daten werden in eine Staging Area
überführt. Diese kann logisch oder physisch sein, abhängig vom eingesetzten ELT Tool und der
definierten Transformation.
Die Daten können so modelliert werden, wie diese schlussendlich für das Business
sinnvollerweise vorliegen sollen. Falls die Daten bereits in der gewünschten Form vorliegen,
muss der beschriebene Prozess nicht durchlaufen werden.
_____________________________________________________________________________
58
_____________________________________________________________________________
Die Überführung vom ODS in ein allfälliges DWH wird via ein ELT oder ein allfälliges ETL
durchgeführt.
Die Zugriffe sind derart geregelt, dass der BI Admin zusammen mit dem BI Entwickler für das
Deployen der Transformationen zuständig ist. Zudem ist der BI Admin für das Monitoren der ELund der Transformationsprozesse zuständig.
Dem BI End User wird der Zugriff auf die bereitgestellten Daten gewährt. Dies kann auf dem ODS
oder einem allfälligen DWH sein.
Der Einsatz dieser Technologie hat natürlich Vor- und Nachteile. Diese sind untenstehender Liste
zu entnehmen:
Vorteile
Keine Middleware
Einheitliche und schnelle Anbindung
Niedrige Kosten:
 Hardware für Middleware sind nicht
notwendig
 Teure Lizenzen sind begrenzt
 Teure Connectoren für ETL sind nicht
notwendig
Daten können im ODS in „abfrageoptimierter“
Form abgelegt werden
Real Time möglich
Anbindung von Systemen, die kein CDC
beherrschen, ist abgedeckt
Nachteile
Ressourcenverbrauch auf Zielsystem
Keine „saubere“ Trennung zwischen
Datenbanksystem und ELT Tool
Staging Area mit Persistenz notwendig
_____________________________________________________________________________
59
_____________________________________________________________________________
6.8.4
Lösungsvariante 4
BI / ETL
Admin
MIDDLEWARE
ETL
Operatives
System
ETL
DWH
ODS
1-n
po
Re
ts
rts
or
Rep
BI User
Abbildung 6.15: Lösungsvariante 4
Motivation:
Diese Variante soll die Anforderungen mittels einer Middleware (ETL) abdecken.
Dabei soll mit einem einzigen Tool extrahiert, geladen und transformiert werden.
Beschreibung:
Mit dieser Variante wird auf das „klassische“ ETL referenziert. Mittels ETL Software werden die
ETL Prozesse grösstenteils „deklarativ“ programmiert. Die Middleware ist zuständig für die
Anbindung ans Quell- und Zielsystem. Zudem werden dabei je nach Business Anforderungen die
Prozesse so modelliert, dass neben der Extraktion und dem Ladeprozess gleichzeitig
transformiert werden kann. Dabei kommen die bekannten ETL Funktionen zum Zuge wie
Extrahieren, Transformieren und Laden. Die Staging Area wird implizit durch die Middleware in
Form eines Memorybereiches des ETL Tool bereitgestellt.
Die Middleware wird in der Regel auf ein separates System installiert, auf welchem auch die
Metadaten der ETL Prozesse generiert werden. Die Metadaten werden normalerweise in einer
Datenbank abgespeichert. Diese kann sowohl auf dem gleichen System wie das ETL Tool, als
auch auf einem anderen System liegen.
Das Weiterreichen der Daten an weitere Systeme wie ein DWH wird ebenfalls mittels Middleware
realisiert. Dabei können die Daten weiter verarbeitet werden. Zum Beispiel durch Aggregation
oder andere ETL Funktionen.
Der BI Admin agiert direkt auf der Middleware. Dies kann mittels Web-GUI oder Fat Client
geschehen. Dabei wird für die jeweiligen Projekte ein Repository angelegt, auf welchem die
Metadaten der ETL Prozesse logisch abgebildet werden.
_____________________________________________________________________________
60
_____________________________________________________________________________
Der BI End User greift mittels Reporting Tool direkt auf den ODS zu. Die Zugriffe werden in der
Regel entweder mittels Reporting Tool oder direkt auf der Datenbank geregelt.
Auch diese Variante weist Vor- und Nachteile auf:
Vorteile
Sigle Point of Action
einzelnes und einheitliches Tool
Je nach Produkt kann die Middleware um
weitere Optionen erweitert werden (z.B. Data
Quality, u.v.a)
Metadaten Management geregelt
zentrale Überwachung
Nachteile
Konnektoren für jeweilige Quell- und
Zielsystem notwendig
zusätzliches System notwendig
teure Third Party SW Lizenzen
Lock In zu SW Lieferant
ETL Prozesse nicht portierbar auf Konkurrenzprodukte
Höhere Belastung des operativen Systems als
bei Variante 3
_____________________________________________________________________________
61
_____________________________________________________________________________
6.9
Gegenüberstellung der Lösungsvarianten zu den Muss und Kann
Kriterien
In diesem Kapitel soll aufgezeigt werden, welche Lösungsvariante die meisten Muss und Kann
Kriterien abdeckt und sich daher am besten eignet.
Dabei werden die Kriterien mittels einem Punktesystem gewichtet. Je nach Erfüllungsgrad wird
höher oder tiefer bewertet.
Die Skala der Punktevergabe sieht wie folgt aus:
Erfüllt:
Teilweise erfüllt:
Nicht erfüllt:
2 Punkte
1 Punkte (z.B.: durch Einsatz von kostenpflichtigen Optionen)
0 Punkte
Nr.
Kriterien
DI1
Real Time resp. Near Real Time Datenreplikation
möglich
Verschiedenste Datenquellen müssen
angebunden werden können (analog heutiger
Situation)
Aufbau einer separaten zentralen Plattform für
Aggregation und Bereitstellung der Daten
L1
L2
L3
L4
X
2
2
2
1
X
2
2
2
2
X
2
2
2
2
X
2
2
2
2
PL3
Der Zugriff auf die Daten ist nicht Protokoll
gebunden
Daten sind während 3 Monaten verfügbar
X
2
2
2
2
PL7
Anbinden von Oracle RDBMS
X
2
2
2
2
PL15 Die Plattform ist so dimensioniert, dass
Lastspitzen keine Probleme darstellen.
X
2
2
2
2
PL16 Die neue Plattform erfüllt mindestens die SLA
Anforderungen der Quellsysteme.
X
2
2
2
2
PL18 Die Plattform kann mindestens 20 ConcurrentUser bewältigen, welche Standardreports
ausführen.
PE3 Zu verarbeitendes Transaktionsvolumen:
tiefes Transaktionsvolumen (1-2 Millionen
Transaktionen pro Tag à 1KB)
X
2
2
2
2
X
2
2
2
2
PE2
Zu verarbeitendes Transaktionsvolumen: mittleres
Transaktionsvolumen (2-5 Millionen
Transaktionen pro Tag à 1KB)
X
2
2
2
2
PE4
Die Datenmodellierung ist auf Performance
ausgerichtet
Es sind definierte Integrations-Prozesse
vorhanden.
Erstellen von allgemein gültigen Richtlinien und
Standards zu Datenintegrationen
X
0
1
2
2
X
2
2
2
2
X
2
2
2
2
0
1
2
2
DI2
PL1
PL2
PZ1
PZ2
DI3
Daten werden bei Integration in eine gemeinsame
einheitliche Datenstruktur überführt
Muss
Kann
X
_____________________________________________________________________________
62
_____________________________________________________________________________
Nr. Kriterien
Muss Kann L1 L2 L3 L4
DI4
Unregelmässige Ad Hoc Datenintegration möglich
X
0
1
2
2
DI5
Denormalisieren der Daten bei Anbindung
X
0
1
2
2
PL4
Daten sind während 12 Monaten verfügbar
X
2
2
2
2
PL5
Daten sind während >12 Monaten verfügbar
X
2
2
2
2
PL6
Schnelle, einfach Anbindung
X
1
1
1
1
PL8
Anbinden von MySQL
X
2
2
2
2
PL9
Anbinden von MSSQL
X
2
2
2
2
PL10 Anbinden von Flatfiles, XML
X
2
2
2
2
PL11 Der Zugriff mit bestehenden Tools ist weiterhin
möglich
PL12 Es werden multidimensionale Auswertungen
unterstützt.
PL13 Die Auswertungen können mittels Scheduler
sowie anschliessendem Mailversand erstellt
werden.
PL14 Durch den Einsatz bewährter Technologien, wird
eine hohe Stabilität und Robustheit des Systems
gewährleistet.
PL17 Das System kann sowohl als Target wie auch als
Source verwendet werden.
X
2
2
2
2
X
2
2
2
2
X
2
2
2
2
X
2
1
2
2
X
2
2
2
2
PL19 Die Plattform kann mindestens 50 ConcurrentUser bewältigen, welche Standardreports
ausführen.
PL20 Die Plattform kann mindestens 100 ConcurrentUser bewältigen, welche Standardreports
ausführen.
PE1 Zu verarbeitendes Transaktionsvolumen: hohes
Transaktionsvolumen (5-6 Millionen
Transaktionen pro Tag à 1KB)
X
2
2
2
2
X
2
2
2
2
X
2
2
2
2
SK1
System muss bei Bedarf skalierbar sein (on
demand)
Das System ist horizontal wie auch vertikal
skalierbar
Die Wiederverwendbarkeit der Daten ist
gewährleistet.
Die Daten sind veränderbar.
X
2
2
2
2
X
2
2
2
2
X
2
2
2
2
X
2
2
2
2
Die neue Lösung ist günstiger als eine
Einzellösung.
X
2
2
2
1
63
66
71
69
SK2
FL1
FL2
KS1
Total:
Nach Auswertung der Punktevergabe hat sich ergeben, dass die Lösungsvariante 3 sich am
besten eignet.
Bei dieser Entscheidung wurden die Kosten nicht abschliessend berücksichtigt. Hauptaugenmerk
wurde auf die Funktionalitäten gelegt. Alle Lösungsvarianten verursachen Mehrkosten, hier gilt es
mittels Wirtschaftlichkeitsrechnung heraus zu finden, wie hoch diese sein werden und welchen
_____________________________________________________________________________
63
_____________________________________________________________________________
quantifizierbaren Mehrwert daraus geschlagen werden kann. In der dargestellten Bewertung
werden lediglich die Lizenz- und Wartungskosten berücksichtigt.
Durch allfällige Veränderungen der strategischen Ausrichtung bei IT Post und neuen
Lizenzvereinbarungen kann oben formulierter Entscheid beeinflusst werden.
_____________________________________________________________________________
64
_____________________________________________________________________________
6.10 Definition Ziel Architektur „Zentralisierte und modulare
Business Intelligence Infrastruktur und Plattform“
Nachfolgend wird die Lösungsvariante 3, die sich als beste Lösung heraus gestellt hat, in ihre
Einzelteile zerlegt. Somit können die verschiedenen Komponenten eruiert und allfällige Probleme
früh erkannt und angegangen werden. Zusätzlich wird auch die dafür notwendige Hardware
definiert.
6.10.1
Use Case Modell Systemarchitektur
In diesem Kapitel wird mittels UML auf die Systemarchitektur eingegangen. Dabei werden die
unterschiedlichen Komponenten näher betrachtet.
6.10.1.1 Zentrale Komponenten
Die zentralen Komponenten zeigen gleichzeitig auch die Grobarchitektur der Lösungsvariante 3.
Folgende 3 Hauptkomponenten sind ersichtlich:
 die zu entlastenden operativen Datenbanken
 das ETL / ELT Environment, das für die Datenreplikation sowie die Transformation
zuständig ist
 das ODS, in das schlussendlich die Daten ausgelagert werden
Abbildung 6.16: Komponente Zentrale Komponenten
_____________________________________________________________________________
65
_____________________________________________________________________________
6.10.1.2 Operative Datenbanken
Hier werden die Standardkomponenten bei den operativen Datenbanken aufgezeigt. Dies
spiegelt die bestehende Situation wider. In der Regel wird ein Server benötigt, um die Datenbank
als Software Komponenten zu verwalten. Die Datenbank ist vom Server als
Hardwarekomponente abhängig. Die Hardwarekomponente ist so auszulegen, dass diese den
Business Anforderungen und den daraus resultierenden SLAs standhält.
Abbildung 6.17: Komponente Operative Datenbanken
6.10.1.3 ETL / ELT Environment
Dieser Teil ist das Herzstück der gesamten Plattform. Im Vordergrund steht die Komponente
„ETL / ELT Environment“. Abgebildet wird diese zwar als Einheit, in Wirklichkeit besteht sie aber
aus mehreren Teilkomponenten, namentlich einer
Extraktions-, einer Transformations- und einer Ladekomponente. Der Einfachheit halber werden
diese ETL / ELT Komponenten als Ganzes betrachtet.
Die ETL / ELT Komponente wird dabei als Software klassifiziert und ist von der
Softwarekomponente Datenbank und von der Hardwarekomponente Server abhängig.
Abbildung 6.18: Komponente ETL / ELT Environment
_____________________________________________________________________________
66
_____________________________________________________________________________
6.10.1.4 Operational Data Store (ODS)
Beim Operational Data Store handelt es sich um diejenige Komponente, welche die extrahierten
Daten persistiert. Hierbei sehen die Komponenten analog der operativen Datenbanken aus. Sie
besteht aus einer Softwarekomponente für die Datenbank und eine Hardwarekomponente für den
Server.
Abbildung 6.19: Komponente ODS
_____________________________________________________________________________
67
_____________________________________________________________________________
6.10.1.5 Use Case „Zentralisierte und modulare Business Intelligence
Infrastruktur und Plattform“
In diesem Model werden die Use Cases, welche für die ETL / ELT Aktivitäten zuständig sind in
die Hauptkomponente „Zentralisierte und modulare Business Intelligence Infrastruktur und
Plattform“ eingebettet.
Die Use Cases aus Sicht des BI End User werden nicht abgebildet, da diese Use Cases mittels
Reportingkomponente realisiert werden. Diese ist jedoch nicht Bestandteil der zu realisierenden
Plattform.
Abbildung 6.20: Use Case „Zentralisierte und modulare Business Intelligence Plattform und Infrastruktur“
6.10.1.6 Sequenzdiagramm der Komponenten
Mit dem Sequenzdiagramm wird aufgezeigt, wie die beschriebenen Komponenten miteinander
interagieren. Dieses Diagramm zeigt die Interaktion auf der obersten Ebene.
Der Ausgangspunkt ist die ETL / ELT Komponente, welche sich benötigte Daten von den
operativen Datenbanken holt und diese weiter verarbeitet. Die verarbeiteten Daten werden
anschliessend im Operational Data Store abgespeichert und zur Verfügung gestellt.
Abbildung 6.21: Sequenzdiagramm der Komponenten
_____________________________________________________________________________
68
_____________________________________________________________________________
6.10.1.7 Sequenzdiagramm Use Case 5
Der Use Case 5 wird speziell behandelt, da mit der Aktion des Use Case 5, Daten eingefügt
werden. Dabei soll das Einfügen ohne ETL / ELT möglich sein, soll heissen mittels einer Third
Party Applikation oder via „inserts“ direkt in der Datenbank. Daher ist im Sequenzdiagramm nur
die Interaktion zwischen BI Admin / Entwickler und dem ODS, ohne den Einsatz von
Komponenten der Zentralisierten und modularen BI Plattform und Infrastruktur, abgebildet.
Abbildung 6.22: Sequenzdiagramm Use Case 5
_____________________________________________________________________________
69
_____________________________________________________________________________
6.10.1.8 Sequenzdiagramm Use Case 6,7,8,9,10 und 11
In diesem Sequenzdiagramm werden die Aktionen der Use Cases 6,7,8,9,10 und 11 abgebildet.
Hier eine nochmalige Auflistung der entsprechenden Use Cases:
UC 6: Daten mutieren (Aktionen via ETL / ELT Environment)
UC 7: Daten löschen (Aktionen via ETL / ELT Environment )
UC 8: Lade Prozeduren anstossen (Aktionen via ETL / ELT Environment )
UC 9: Daten Consumer anbinden
UC 10: Daten Provider anbinden
UC 11: Daten Transformieren
Die Interaktion wird vom BI Plattform Admin oder Entwickler angestossen.
Dabei werden sequentiell ein oder mehrere der obengenannten Use Cases angestossen.
Abbildung 6.23: Sequenzdiagramm Use Case 6,7,8,9,10 und 11
6.10.1.9 Sequenzdiagramm Use Case 1,2,3 und 4
Für die Use Cases 1 bis 4 wurden keine Sequenzdiagramme erstellt, da diese Use Cases die
fachliche Seite im Sinne von Erstellung von Reports beschreiben. Diese Arbeit befasst sich
hauptsächlich mit der Überführung der Daten von den operativen Datenbanken zu derer
Entlastung und daher werden die Use Cases 1 bis 4 in diesem Sinne nicht weiter behandelt.
_____________________________________________________________________________
70
_____________________________________________________________________________
6.10.2
Infrastrukturkomponenten
Im Folgendem wird die Infrastruktur der Lösungsvariante 3 konkretisiert. Dabei sollen die
Hardware- und Basissoftwarekomponenten erläutert und definiert.
6.10.2.1 Architektur der Infrastrukturkomponenten
Ein Ziel der Plattform ist es bei Bedarf zu skalieren. Damit ist es möglich auf eine einfache Art
und Weise Ressourcen zu erweitern. Die Thematik Skalierbarkeit wurde bereits im Kapitel 6.4.25
erläutert. Ein weiterer Aspekt der Skalierung ist, dass keine exorbitanten Kosten verursacht
werden. Die Plattform muss so kostengünstig wie möglich aufgebaut werden. Nur damit ist eine
solche Plattform zu rechtifertigen.
Um die Kosten niedrig zu halten, wird diese Plattform mit Standardservern, die bei der
Schweizerischen Post eingesetzt werden, aufgebaut.
Die zentrale Datenbank, der Operational Data Store (ODS), wird auf Basis einer Oracle
Datenbank aufgebaut. Dies aus folgenden Gründen:






Sehr gute Handhabung von grossen Datenbanken (Partitioning, Storage Management, uvm.)
Sehr gutes Know-how bei IT Post
Sehr gute Hochverfügbarkeitstechnologien
Sehr gute Skalierungstechnologien
Sehr gute Recoverytechnologien
Sehr gute Lizenzierungsmodalitäten bei der Schweizerischen Post
Der Disk Storage wird aus der Zentralen Datenhaltung (ZDH) bezogen, die aus mehreren
zentralen SAN Storage Systemen besteht.
Die Netzwerkinfrastruktur, welche die verteilte Datenbankarchitektur miteinander verbindet, wird
aus der zentralen Netzwerk Infrastruktur P-MAN (Post Metropolitan Area Network) bezogen.
Die BI Plattform wird auf derselben Hardware wie der ODS betrieben. Somit entfällt eine teure
Middleware Plattform. Die detaillierte Beschreibung dazu folgt in den nachfolgenden Kapiteln.
Die SLAs, welche in Zusammenarbeit mit den Kunden definiert wurden, müssen eingehalten
werden. Da mit diesem Konzept eine zentrale Plattform aufgebaut wird, gilt es die höchste SLA
Definition abzudecken.
Sämtliche Hardwarekomponenten müssen auf diese SLAs abgestimmt werden, damit bei einem
allfälligen Systemausfalls, die definierten Ausfallzeiten eingehalten werden können.
Die Plattform ist nach dem oben Gesagten redundant aufzubauen. Dies betrifft sämtliche
Komponenten der Plattform.
Aus Kostengründen wird in einer ersten Phase auf die vertikale Skalierung gesetzt, die in
späteren Phasen in eine horizontale Skalierung überführt werden kann.
Dies bedeutet, dass zunächst eine kleine kostengünstige Plattform aufgebaut wird, die in Zukunft
entsprechend den erhobenen Anforderungen ausgebaut werden kann.
Dies ermöglicht uns gleich von Beginn an dem Kunden eine attraktive, kostengünstige und
zentrale Lösung zur Verfügung zu stellen.
_____________________________________________________________________________
71
_____________________________________________________________________________
Die „anfängliche“ Hardware Architektur sieht wie folgt aus:
Umsysteme
BI End User
XML Gateway
Application Server
aktiv
ETL Environment
passiv
Log Shipping
ODS
ODS
Hot Standby
Abbildung 6.24: „anfängliches“ System
Wenn die „anfängliche“ vertikale Skalierung ausgeschöpft ist, wird mittels Clustering horizontal
weiter skaliert. Dabei muss das „zukünftige“ System mittels Cluster Software um weitere Knoten
(Server) erweitert werden. In dieser Phase wird nicht die „Aktiv / Aktiv“ Variante mittels Grid
Computing angestrebt, sondern der Fokus wird lediglich auf die Hardwareerweiterung gelegt.
Hierfür können die Server gruppiert werden, so dass diese nur für spezifischen Applikationen zur
Verfügung stehen. Wie bereits erwähnt, besteht bei der Konfiguration dieser Architektur keine
Möglichkeit die Server im „Aktiv / Aktiv“ Modus zu betreiben. Somit ist ein Workload Balancing für
die Applikationen nicht möglich.
Jedoch kann diese Architektur ohne grössere Probleme soweit ausgebaut werden, dass diese im
„Aktiv / Aktiv“ Modus arbeiten könnte. Diese Ausbauphase wäre die dritte Ausbaumöglichkeit
womit man schlussendlich beim Grid Computing angelangt wäre.
Beim Grid Computing und dem entsprechenden „Aktiv / Aktiv“ Modus wird via dem Cluster
Interconnect das Memory geshared. Nur so ist es möglich gleichzeitig obengenannten Modus zu
betreiben. Hierbei werden die Datenblöcke aus dem jeweiligen Memory Bereich eines Servers
auf den anderen übertragen. Dieser Mechanismus kann allerdings auch zu Problemen führen,
wenn Datenblöcke zu häufig gebraucht werden. Dies führt zu Performanceproblemen, weil die
benötigten Blöcke immer wieder hin und her geschoben werden müssen.
Um dieses Phänomen zu unterbinden sind applikatorische sowie datenbanktechnische
Adaptierungen notwendig.
_____________________________________________________________________________
72
_____________________________________________________________________________
Umsysteme
BI End User
Application Server
XML Gateway
ETL Environment
ODS Cluster 1
ODS Cluster 2
ODS
Hot Standby
Gruppe 3
ODS
Gruppe 2
Gruppe 3
Log Shipping
Log Shipping
Gruppe 2
ODS
ODS
Hot Standby
ODS
ODS
Hot Standby
Gruppe 1
Gruppe 1
Log Shipping
Abbildung 6.25: „zukünftiges“ System
6.10.2.2 Server
In diesem Kapitel soll die zugrunde liegende Hardware näher beleuchtet werden. In unserem Fall
handelt es sich um Low End Server der Firma Hewlett Packard (HP). Diese bilden die Basis für
den Aufbau der Plattform.
Die angedachten Server gehören zur Blade Architektur. Blade Server werden in Blade Racks als
Server Batterien verbaut. Dies bewirkt eine kompakte Verbauung und demzufolge eine
Konsolidierung von Server Räumen. Zudem ermöglicht das Erstellen von Server Profilen eine
einfachere Handhabung des Hardware Lifecycle.
Wie bereits beschrieben wird nicht gleich von Anfang an die definitive Plattform aufgebaut, um
insbesondere eine „Kostenexplosion“ zu vermeiden. Die Plattform soll den Bedürfnissen
entsprechend wachsen können.
Angaben zum Server:
Typ
HP Blade DL465
CPU
AMD mit 2 CPU und 12 Core, 2,56 Ghz
Memory
Bis 256 Gb
NIC
4 Ports mit bis zu 10 Gbit/s geshared – FCoE für SAN Storage Anbindung
OS
SuSE SLES 11 SP1
_____________________________________________________________________________
73
_____________________________________________________________________________
6.10.2.3 Datenbank
Als Standard Datenbank wird die RDBMS von Oracle eingesetzt. Oracle als einer der führenden
RDBMS Lieferanten, deckt sämtliche Anforderungen an ein RDBMS bei der Schweizerischen
Post ab. Wie bereits beschrieben wird das Oracle RDBMS aus folgenden Gründen eingesetzt:






Sehr gute Handhabung von grossen Datenbanken (Partitioning, Storage Management, uvm.)
Sehr gutes Know-how bei IT Post
Sehr gute Hochverfügbarkeitstechnologien
Sehr gute Skalierungstechnologien
Sehr gute Recoverytechnologien
Sehr gute Lizenzierungsmodalitäten bei der Schweizerischen Post
Aus technischer Sicht sticht das Argument „Very Large Database“ (VLDB) hervor, wenn man
davon ausgeht, dass man sich bei diesem Unterfangen, mit sehr grossen Datenmengen
auseinander zu setzen hat. Oracle bietet diesbezüglich sehr gute Funktionen.
Hier ein kleiner Auszug von nutzvollen Oracle RDBMS Features im DWH Bereich:







Partitioning (add, split, drop, exchange)
Ermöglicht grosse Datenbank Objekte (32 TB mit 8k und 64 TB mit 16k Blocksize)
Gute Lade und Entlade Funktionen (Export / Import, Data Pump, SQL*Loader, uvm.)
Materialized View
Tabellen Kompression (ermöglich das Einsparen von Disk Space)
Pivot und Unpivot Operatoren
LOB (Large Object) Management
Einige Eckdaten des eingesetzten RDBMS:
RDBMS
Oracle Enterprise Edition (EE) 11.2.0.x
Optionen:
Partitioning
Advanced Compression
Oracle Text
Java Option
XML DB
Funktion
Partitionieren von Tabellen und
Indexes
Komprimieren von Tabellen,
ermöglicht Disk Space Einsparung
und Performancegewinn
Erlaubt mittels Indexierung des
Dateninhaltes eine Volltext Suche
Erlaubt das Einbinden von Java
Programmen in die Datenbank
Erlaubt das Einbinden von XML
Strukturen
Bei der Schweizerischen Post werden weitere RDBMS betrieben, wie zum Beispiel MS SQL
Server, MySQL oder PostgreSQL. MS SQL Server Datenbanken werden immer häufiger
eingesetzt und gewinnen an Bedeutung, mit diesen Datenbanken werden aber eher kleine
Applikationen betrieben. Bei der Schweizerischen Post wurden bis heute keine DWHs mit MS
SQL Server realisiert. Die RDBMS MySQL und PostgreSQL werden momentan noch in
reduzierter Form betrieben.
_____________________________________________________________________________
74
_____________________________________________________________________________
6.10.2.4 Storage
Eine grosse Datenbank benötigt auch einen grossen Disk Space. Dieser Aspekt muss vor dem
Aufbau einer solchen Plattform berücksichtigt werden, um eine optimale Flexibilität beim Ausbau
der Plattform zu gewährleisten oder etwaige Performanceprobleme im Zusammenhang mit Disk
I/O zu vermeiden.
Unweigerlich stellt sich die Frage, auf welchem Filesystem die Datenbankdateien abgelegt
werden sollen. Hierfür besteht eine Vielzahl an Filesystemen, die für Datenbankdateien mehr
oder weniger geeignet sind.
Für unsere Plattform wird ein Disk Volume Manager eingesetzt. Die Aufgabe eines Disk Volume
Managers ist das Verwalten der „rohen“ Disks oder der Logical Unit Number (LUN). Mittels Disk
Volume Manager werden die „rohen“ Disks in logische Einheiten aufgeteilt und mit einem Stripe
Size versehen. Die Stripe Size ist diejenige Grösseneinheit, welche auf jeder Disk oder LUN
sequentiell geschrieben wird. Dieses Verteilen schliesst sogenannte Hot Disks aus, das heisst die
Disks, resp. LUNs werden alle im gleichem Masse belastet. Zusätzlich wird durch das Verteilen
eine höhere I/O Bandbreite erreicht, was zu einer Performancesteigerung im I/O Bereich führt.
Abbildung 6.26: Disk Striping
Der Disk Volume Manager hat zudem den Vorteil, dass Operationen im Bereich Storage
Management „online“ durchgeführt werden können. Dies ist von enormer Wichtigkeit, wenn
Systeme im 7x 24 Modus betrieben werden müssen.
Disk Volume Manager haben weitere Vorteile:





Online Ein- und Ausbinden von LUNs
Automatisches Rebalancing der Diskgruppen beim Hinzufügen oder Löschen von LUNs
Einsatz von Ausfall Gruppen (Host based Mirror)
Einfache Migration von Diskgruppen auf neue Server
Backup und Restore der Disk Volume Managers Metadaten
Eckdaten des Disk Volume Manager:
Produkt
Oracle Automatic Storage Management (ASM) 11.2.0.x
Diskgruppen
Bis zu 64
Verwaltbare Grösse
Bis zu 140 Petabyte per File
_____________________________________________________________________________
75
_____________________________________________________________________________
6.10.2.5 Netzwerk
Das Netzwerk ist bei verteilten Datenbanken eine der wichtigsten Komponenten.
Diese ermöglicht den Datenaustausch der Datenbanken untereinander. Es ist speziell darauf zu
achten, dass die Bandbreite des Netzwerkes gross genug dimensioniert ist, damit sehr
umfangreiche Datenmengen bewältigt werden können.
Eine hohe Bandbreite ist dann sichergestellt, wenn sämtliche Komponenten in einem
Netzwerkverbund (Netzwerkadapter, Switch, Router) die erforderlichen Durchsätze garantieren.
Heutzutage sind Komponenten, die eine Bandbreite von 1 Gbit/s oder höher erlauben,
standardmässig in den meisten Servern oder Netzwerkkomponenten verbaut.
Eckdaten der geforderten Netzwerkbandbreite:
NIC
>= 1Gbit/s (i.d.R. 1 Gbit/s)
Switches
>= 1Gbit/s (i.d.R. 10 Gbit/s)
Router
>= 1Gbit/s (i.d.R. 10 Gbit/s)
_____________________________________________________________________________
76
_____________________________________________________________________________
6.10.3
Definition BI Plattform
Im Weiteren wird auf die Definition der BI Plattform detailliert eingegangen. Dabei werden die
relevanten BI Komponenten erläutert und definiert.
6.10.3.1 Tag 1 zu Tag n Phänomen
Beim Aufbau einer BI Plattform ist es nicht möglich alles auf einmal aufzubauen, da die Kosten
und der Ressourcenbedarf zu hoch wären. Daher werden zunächst nur die notwendigen
Komponenten realisiert und in späteren Schritten weiter ausgebaut.
Das „Tag 1 zu Tag n Phänomen“ dient hierbei natürlich nur als Veranschaulichung. In der Realität
verläuft diese Phase über eine längere Zeitperiode. Die nachfolgende Grafik zeigt auf, wie sich
dieses Phänomen verhält:
Tag 1:
Es existieren nur operative Systeme.
Sämtliche analytische Operationen und
Reporting werden direkt auf diesen Systemen
realisiert.
Existierende Systeme
Tag 2:
Es wird das erste DWH realisiert. Die ersten
End User greifen zu und führen analytische
Operationen und Reporting durch.
DWH
End User
Existierende Systeme
Tag 3:
Es entstehen weitere „subject oriented“ DWHs.
Die Anzahl an End User steigt. Analytische
Operation und Reporting werden auf diesen
ausgeführt.
DWH
Existierende Systeme
DWH
DWH
Tag 4:
Durch die steigende Datenmenge und Anzahl
User werden Bereichsdaten in Data Marts
abgebildet oder sie werden mittels OLAP Tools
analysiert.
Existierende Systeme
End User
End User
End User
DWH
End User
DWH
End User
DWH
End User
_____________________________________________________________________________
77
_____________________________________________________________________________
Tag n:
Am Tag n müssen multidimensionale
Datenmodelle Abhilfe schaffen. Das System
wird schnell und kostengünstig. Die BI
Plattform ist zu Ende ausgebaut.
End User
End User
DWH
End User
End User
DWH
Existierende Systeme
End User
DWH
End User
End User
6.10.4
BI Plattform Architektur
Wie anhand des „Tag 1 zu Tag n Phänomen“ dargestellt, wird in diesem Unterfangen nicht eine
„voll“ ausgebaute BI Plattform realisiert. Es wird lediglich die erste Stufe bis zum ODS realisiert.
Dieser Umstand hindert jedoch nicht künftige Ausbauten bis hin zu einem etwaigen DWH zu
erstellen.
Unsere BI Plattform Architektur wurde bereits im Kapitel „Lösungsvariante / Mögliche
Architekturen„ definiert, beschrieben und bewertet.
Die Lösungsvariante 3 erfüllt die Bedürfnisse der Stakeholder am besten. Die Spezifikationen der
Lösung wird in diesem Kapitel detailliert beschrieben.
Wie bereits in der Problemstellung beschrieben, verfolgen wir das primäre Ziel der Entlastung der
operativen Datenbanken. Dies heisst, dass wir uns in dieser Phase, lediglich auf die
Datenbewegungen und Transformationen bis ins ODS fokussieren (roter Kreis in Abb. 6.27).
Diese Lösung gilt als EL-T Lösung. Transformiert wird erst nachdem die Daten geladen wurden.
BI / ETL
Admin
EL
ETL
Staging
DWH
ODS
1-n
Rep
orts
Operatives
System
T
Rep
s
ort
BI User
Abbildung 6.27: Architektur Lösungsvariante 3
_____________________________________________________________________________
78
_____________________________________________________________________________
6.10.4.1 Softwarekomponenten
Die BI Plattform umfasst diverse Softwarekomponenten. So gibt es nebst der Datenbank als
Hauptkomponente noch die Extraktions-, Lade- und Transformationskomponente. Zusätzlich
kommen noch Aspekte der Verfügbarkeit, Sicherheit und Skalierbarkeit hinzu.
6.10.4.1.1
Datenbankkomponenten
Die Datenbankkomponente in der BI Plattform wird hauptsächlich für das Metadaten
Management des ELT Tool und derer Transformationsprozesse eingesetzt. Auf die Staging Area
und den ODS wird in diesem Kapitel nicht weiter eingegangen. Dies wurde im Kapitel
Infrastrukturkomponenten bereits erläutert.
Hier die Eckdaten der Datenbankkomponente:
RDBMS
Oracle Enterprise Edition (EE) 11.2.0.x
OS
SuSE SLES 11 SP1
6.10.4.1.2
Extraktionskomponente
Als primäre Extraktionskomponente wird das Oracle Produkt Goldengate eingesetzt. Dies ist ein
sehr schlankes und effizientes Tool, das die CDC Technologie nutzt, um Daten von A nach B zu
transferieren. Durch die aktuellen Vertragsbedingungen der Post mit Oracle, sind für dieses Tool
keine weiteren Lizenzkosten zu erwarten.
Durch die Wahl der Extraktionskomponente Oracle Goldengate können sämtliche geforderten
Datenbanksysteme mittels einem Tool angebunden werden. Dieser Umstand führt nebst den
bereits erläuterten technologischen und kommerziellen Gründen dazu, dass eine starke
Standardisierung bei der Extraktion der Daten vorgenommen werden kann.
Im Rahmen unserer Semesterarbeit haben wir uns schon ausführlich mit diesem Tool
auseinander gesetzt. Dabei konnten wir bereits erste Erfahrungen mit der Real Time
Funktionalität von Goldengate sammeln.
Folgende Hauptkomponenten von Oracle Goldengate, sind als Hintergrundprozesse vorhanden:
 Extract
 Data Pump
 Replicat
 Trail oder Extract Files
 Manager
 Collector
_____________________________________________________________________________
79
_____________________________________________________________________________
Folgende Quellen können mittels Oracle Goldengate angebunden werden:







Oracle RDMBS
MS SQL Server
DB2
MySQL
Sybase
Teradata
Flat Files
Die Architektur von Oracle Goldengate sieht wie folgt aus:
Abbildung 6.28: Oracle Goldengate Architektur
Eckdaten der Extraktionskomponente:
Software
Oracle Goldengate 11.1.1.x
6.10.4.1.3
Ladekomponente
Als Ladekomponente wird dasselbe Tool wie bei der Extraktionskomponente eingesetzt. Hierbei
ist zu beachten, dass bei einer 1:1 Übernahme der Daten die Staging Area übersprungen werden
kann.
Die Architektur ist analog der Extraktionskomponente aufgebaut.
Eckdaten der Ladekomponente:
Software
Oracle Goldengate 11.1.1.1.x
_____________________________________________________________________________
80
_____________________________________________________________________________
6.10.4.1.4
Transformationskomponente
Mit der Transformationskomponente bringt der BI Admin die Daten in die gewünschte Form nach
der Spezifikation des Entwicklers oder des Fachdienstes. Wie in der Lösungsvariante 3
ersichtlich ist, liegt die Transformationskomponente nicht als Middleware vor. Die
Transformationskomponente wird direkt auf dem Server installiert, auf welchem sich auch der
ODS befindet. Wie bereits erwähnt, handelt es sich um eine ELT Lösung, und gibt uns die
Flexibilität neben der 1:1 Datenübernahme, die keine Transformation benötigt, zusätzlich noch zu
transformieren.
Die Transformation wird mittels Oracle Data Integrator und Oracle Goldengate realisiert.
Letzteres wird für kleine, nicht komplexe Transformationen eingesetzt. Oracle Data Integrator
wird für alle weiteren Transformationsschritte eingesetzt.
Der Entscheid ODI einzusetzen basiert auf folgenden Überlegungen und ist nur für diese Arbeit
gültig.
Gründe dafür sind:
 Aktuelle Lizenzvereinbarungen
 Evaluieren eines ELT Tools
 Möglicher Nachfolger für heute eingesetzte ELT Tools wie z.B. Oracle Warehouse Builder
 „horizonterweiterung“
Prinzipiell können auch andere bereits eingesetzte Tools verwendet werden.
Die grobe Architektur von Oracle Data Integrator besteht aus folgenden Komponenten:




Repositories
User Interface (GUI)
Desing-time Projects
Runtime Agents
Übersicht über die Oracle Data Integrator Architektur:
Entwicklung
User Interface
Topology /
Security
Administrators
Design-time
Repository
Metadata /
Rules
Entwickler
User Interface
Legacy
Code
Execution Log
Agent
Data Flow
Conductor
Execution
Return
Code
DWH
Flat/XML
ESB
Produktion
Topology /
Security
Administrators
Operator
Entwicklung
CRM
Runtime
Repository
Execution Log
Produktion
CRM
Code
Execution Log
Agent
Data Flow
Conductor
Execution
DWH
Legacy
Return
Code
Thin Client
Business
Users
Metadata
Lineage
Metadata
Navigator
ESB
Flat/XML
Abbildung 6.29: ODI Architektur
_____________________________________________________________________________
81
_____________________________________________________________________________
Eckdaten der Transformationskomponente:
Software
Oracle Data Integrator 11.1.1.5.0
Oracle Goldengate 11.1.1.1.0
6.10.4.1.5
Reportingkomponente
Bei der Wahl der Reportingkomponente lassen wir dem BI User sämtliche Freiheiten. Hierbei
können sämtliche Tools, die sich gegen eine Oracle Datenbank verbinden können, eingesetzt
werden.
Bei der Schweizerischen Post werden in der Regel folgende Tools verwendet:





Quest Toad
Quest Toad for Data Analyst
Microsoft Excel
SAP Business Objects (Reporting und OLAP)
Jasper Report
Die Liste der Produkte ist nicht abschliessend, wie bereits erwähnt werden hier keine
Einschränkungen definiert.
_____________________________________________________________________________
82
_____________________________________________________________________________
6.10.5
ODS-Organisation
Eine besondere Schwierigkeit stellt die Gruppierung der Daten dar. Dabei stellen sich folgende
Fragen:


Soll für die Daten im ODS pro Quellsystem ein eigenes Schema erstellt werden oder alles in
einem einzigen Schema abgelegt werden?
Welche Daten machen zusammen Sinn, bzw. sind zusammen zu fassen?
Hier wird erläutert, wie im ODS mit den Daten aus den operativen Systemen umgegangen
werden soll.
6.10.5.1 Subject oriented
Damit man nicht eine wahllose Sammlung an Daten hat, empfiehlt es sich den ODS zu
organisieren. Der von uns verwendetet Ansatz ist „Subject oriented“.
Zunächst sind die Daten den entsprechenden Konzernbereichen zuzuordnen. In unserem Fall
bilden wir dafür Datenbank Schema für die jeweiligen Postbereiche.
Das Modell sieht wie folgt aus:
DB3
DB4
DB2
Roles
Reporting
Tool
BI_APPL_1
Reporting
Tool
Roles
DB3
DB4
DB5
BI_APPL_2
Subject Oriented Gruppe 3
DB2
DB1
Subject Oriented Gruppe 2
DB1
Subject Oriented Gruppe 1
ODS
Roles
Reporting
Tool
BI_APPL_3
DB5
Abbildung 6.30: Subject oriented Konzept
Mit diesem Ansatz bewahren wir uns eine gewisse Flexibilität im Falle einer Datenmigration.
_____________________________________________________________________________
83
_____________________________________________________________________________
6.10.5.2 Zugriffsrichtlinie
Bei den in den ODS geladenen Daten gibt es für jedes Quellsystem ein eigenes Datenbank
Schema. Um den „Subject Oriented“ Gedanken trotzdem aufrecht zu erhalten, werden diverse
übergeordnete Schemas für den Zugriff erstellt.
Daten
Fachbereich
PM
Daten
Fachbereich
PL
Daten
Fachbereich
XY
DBA
Schnittstellen User
BI
User
BI / ETL
Admin
C, R, U, D
Appl
Owner
PM
C, R, U, D
Appl
Owner
PL
R(*)
Appl
Owner
XY
R(*)
C, R, U, D
R
R
C, R, U, D
R
R
C, R, U, D
R(*)
C, R, U, D
R(*)
C, R, U, D
R
R
C, R, U, D
R(*)
R(*)
C, R, U, D
Legende: C=Create, R=Read, U=Update, D=Delete
(*) mit Bewilligung des Datenherrs
Zugriffe auf die Daten erfolgen in der Regel jeweils nur lesend. Ausnahmen bilden dabei der
DBA, der BI / ETL Admin und das Appl Owner Schema.
Applikationen greifen über einen Schnittstellenuser auf die Daten. Dieser besitzt nur einen
lesenden Zugriff. Dabei wird für jede zugreifende Applikation ein eigener Schnittstellenuser
erstellt.
Die BI User können mittels persönlichen oder vordefinierten Datenbankaccounts auf die Daten
zugreifen; dies wiederum nur lesend.
Um die Zugriffe zu regeln, werden entsprechende Datenbank Rollen erstellt [siehe Kapitel 6.14.1
Richtlinien zum User- und Rollenkonzept], mit denen die entsprechenden Berechtigungen auf die
Daten spezifisch vergeben werden können.
Die Datenhoheit obliegt dem zuständigen Fachdienst. Er ist der sogenannte Datenherr. Benötigt
eine Applikation oder eine Person aus einem anderen Fachbereich Zugriff auf die Daten, so sind
diese beim entsprechenden Datenherr einzuholen. Der Datenbankbetrieb wird dann einen
Datenbankaccount erstellen und ihm die entsprechenden Berechtigungen mittels Rollen zuteilen.
6.10.5.3 ODS Datenaustausch
Das Konzept sieht vor, dass der ODS die Daten nur über den defnierten ELT Prozess erhält.
Es dürfen keine Daten über andere Ladertechnolgien (Datenbank Links, SQL*Loader, etc.)
geladen werden. Es ist jedoch erlaubt andere Datenbanken mittels Datenbank Links mit Daten
aus dem ODS zu beliefern.
_____________________________________________________________________________
84
_____________________________________________________________________________
6.11 Verfügbarkeit der BI Plattform
Die Verfügbarkeit der Plattform wurde bereits in der Architektur der Plattform berücksichtigt und
entsprechend gestaltet.
Die Verfügbarkeit richtet sich an den RTO und RPO, welche in den SLAs definiert wurden. Da
eine zentrale Plattform realisiert wird, muss sich die Verfügbarkeit an jenen Service anlehnen,
welcher die strengsten SLA Definitionen hat.
6.11.1
Definition der Plattformverfügbarkeit
Das SLA ist ein Vertragsdokument zwischen dem Auftraggeber und dem Service Provider,
welches die zu erbringende Leistung und Qualität (Güte) eines IT Services regelt.
Jeder Service hat sein eigenes SLA, zugeschnitten auf dessen Bedürfnisse. Für unsere Plattform
relevant sind die unten definierten Ausfall- und Wiederherstellungszeiten (RTO) und die
maximalen Datenverlustzeit (RPO):
Klasse
Zeitkritikalität
Maximale
Wiederherstellungszeit
IT Service
Maximale
Datenverlustzeit
Höchste
Zeitkritikalität
bis 4 Stunden
A
Kein
Datenverlust
toleriert
Erhöhte
Zeitkritikalität
bis 12 Stunden
bis 4 Stunden
B
Zeitkritisch
bis 3 Tage
bis 8 Stunden
Standard
> 3 Tage (best Effort)
> 8 Stunden (best Effort
Bemerkungen
C
D
Standardanforderungen des
IT-Grundschutzes
Abbildung 6.31: SLA IT Post
Da wir als Minimalkriterium das SLA des kritischsten Service abzudecken haben, muss die
Plattform auf die Klasse A ausgelegt werden.
Einige Kunden haben für ihre business kritischen Applikationen in den SLA‟s
Konventionalstrafen vereinbart, falls die SLA‟s nicht eingehalten werden.
6.12 Wiederverwendbarkeit der Daten
Es werden zwei Typen unterschieden:


Daten die im ODS als Replikat für andere operative Systeme zur Verfügung gestellt werden
Daten die im DWH historisiert werden
_____________________________________________________________________________
85
_____________________________________________________________________________
6.12.1
Replikate
Werden die Daten nur als Replikat für die eigene oder andere Applikationen verwendet, so kann
auf eine Anpassung der Struktur verzichtet werden. Es ist jedoch empfehlenswert, die Daten
bereits bei einem Releasewechsel in eine künftig wiederverwendbare Form zu bringen.
6.12.2
Ausprägungen der Daten im ODS
Die Daten im ODS sind operativer Natur, was sich auch in der Datenaktualität bemerkbar macht.
Es werden folgende Datenkategorien unterschieden:
 temporale Daten
 Stammdaten
 Datumsbezogene Stammdaten
6.12.2.1 Temporale Daten
Temporale Daten sind Daten, die mit einem Zeitstempel versehen sind. Bei solchen Daten sind
Zeitinformationen vorhanden, wie zum Beispiel, wann ein Ereignis stattgefunden oder geendet
hat. Temporale Daten können aufgrund ihrer Eigenschaft einfach bewirtschaftet werden. So
können diese partitioniert oder aufgrund ihres Zeitstempel verändert oder gelöscht werden.
6.12.2.2 Stammdaten
Stammdaten sind statische Daten. Diese werden in der Regel einmal erfasst und - wenn
überhaupt - nur in grossen Abständen verändert. Stammdaten werden zur Identifikation,
Klassifizierung und Charakterisierung von Bewegungsdaten benötigt. Diese stehen in einem
grossen Unternehmen meistens mehreren Applikationen zur Verfügung und sind daher auf die
Wiederverwendbarkeit ausgelegt.
6.12.2.3 Datumsbezogene Stammdaten
Datumsbezogenen Stammdaten sind eine Art Mischform zwischen Stamm- und temporalen
Daten. Sie erlangen resp. verlieren ihre Gültigkeit mittel einem IBS-Flag
(Inbetriebsetzungsdatum) und einem ABS-Flag (Ausserbetriebsetzungsdatum) .
Dies trifft häufig zu, wenn die Historisierung bereits auf dem Quellsystem gemacht wird
(z.B. Daten über Wohnadressen von Kunden). Diese Daten werden inkl. der bereits
„abgelaufenen“ Einträge übernommen.
6.12.3
Historisierte Daten
Bei der Überführung der Daten aus dem ODS ins DWH sind diese, wenn möglich in ein allgemein
gültiges Format zu transformieren. Dies muss jedoch immer von Fall zu Fall entschieden werden.
Die Richtlinien betreffend Datenmodellierung im DWH sind nicht Bestandteil dieser Arbeit, sie
müssen situativ oder projektspezifisch behandelt werden.
_____________________________________________________________________________
86
_____________________________________________________________________________
Falls Daten aus dem ODS aus Compliance Gründen zu archivieren sind, müssen die Compliance
Richtlinien der entsprechenden Institution befolgt werden. Auf die Archivierungsaspekte gehen
wir im Rahmen dieser Arbeit nicht weiter ein.
6.12.4
Handhabung der Daten im ODS
Der ODS ist nicht als Archiv vorgesehen. Daher werden folgende Richtlinien definiert:
Nr.
HIS-1
HIS-2
HIS-3
HIS-4
Richtlinie
Stammdaten und datumsbezogene Stammdaten können beliebig lange im ODS
gehalten werden
Temporalen Daten wird eine maximale Aufbewahrungsfrist von 90 Tagen gewährt
Temporale Daten werden als partitionierte Tabellen gespeichert
Nach Ablauf der 90 Tagen werden die Daten entweder gelöscht oder in ein DWH bzw.
in ein Archiv überführt
6.13 Cleanup Daten
Beim Cleanup der Daten im ODS wird zwischen zwei Fällen unterschieden:
- Cleanup durch Quellsystem ausgelöst
- Cleanup durch den ODS ausgelöst
Generell gilt, wenn nichts Weiteres definiert ist, werden die Daten nach der im Antragsformular
definierten Zeit wieder gelöscht.
6.13.1
Cleanup durch Quellsystem ausgelöst
Falls das Quellsystem bereits über ein eigenes Cleanup verfügt, muss auf dem ODS kein
separates Cleanup eingerichtet werden. Werden auf dem Quellsystem Daten gelöscht, wird dies
von Goldengate registriert und die Informationen der zu löschenden Daten an den ODS
übermittelt. Danach werden die entsprechenden Records automatisch gelöscht.
6.13.2
Cleanup durch ODS ausgelöst
Daten die nach der Extraktion und dem Laden in den ODS noch transformiert werden, erhalten
zusätzlich einen Surrogate Key mit einem Timestamp. Mittels diesem Timestamp können später
die Daten, die älter als die definierte Aufbewahrungsfrist sind, gelöscht werden.
6.14 Sicherheit
Die Vorgaben des Grundschutzhandbuches betreffend Datenintegrität, Verfügbarkeit und
Vertraulichkeit sind zwingend einzuhalten.
Das Rollen- und Userkonzept, welches im folgendem Kapitel behandelt wird, behandelt einen Teil
des Datenschutzes und muss entsprechender beachtet werden. Dies hat schlussendlich Einfluss
auf die Verfügbarkeit, Vertraulichkeit und Integrität der Daten.
_____________________________________________________________________________
87
_____________________________________________________________________________
Datenschutz im technischen Bereich bedeutet:



Schutz der gespeicherten Daten gegen Zugriff durch Dritte
gilt sowohl für die Datenbank als Ganzes als auch für spezielle Datenbereiche
unterscheidet den Zugriff zu eigenen Objekten bzw. zu fremden Objekten
Oracle hat ein umfangreiches und ausgefeiltes Datenschutzkonzept, welches durch das
Zusammenspiel verschiedener Mechanismen realisiert wird:



Zugriff auf Datenbank
Zugriff auf eigene und fremde Objekte
Durchführung von Operationen
Um diese Mechanismen abzudecken, werden User, Rollen, Profiles und Packages eingesetzt.
6.14.1
Richtlinien zum User- und Rollenkonzept
Folgende Richtlinien für User und Rollen dienen der Sicherheit und sind zwingend einzuhalten.
6.14.1.1 Usertypen
Nr.
SEC-01
Richtlinie
Oracle User XY
Zweck
User XY ist der Applikationsuser. Er ist der einzige User, der Objekte erstellen darf.
Dem Applikationsuser XY gehören n Objekte der Applikation XY.
Rollen und Grants
Er besitzt die Rollen DBA_MAKE_SESSION und DBA_APPL_OWNER. Sind
Berechtigungen auf andere Applikationen notwendig, müssen diese via Rollen erteilt
werden. Ausnahmen bilden Packages, welche einem anderen Owner gehören. In
diesem Fall muss das EXECUTE Recht direkt vergeben werden.
Alle Grants, welche der Applikationsuser braucht, dürfen nur unter der
Berücksichtigung des Securityaspektes vergeben werden. Das heisst,
Systemprivilegien wie ANY ..., BECOME USER und GRANT ANY ... sind nicht
erlaubt.
Passwort Management
Das Passwort darf vom Datenbankbetrieb jederzeit auf den Produktions- und
Integrationsdatenbanken geändert werden und ist dem Applikationsverantwortlichen
und Entwickler nicht bekannt. Auf den anderen Datenbanktypen (Development, Test
und Schulung) darf dies erst nach Absprache mit dem Applikationsverantwortlichen
und Entwickler durchgeführt werden. Dies ist notwendig, da sie für Weiterentwicklung
und Debugging Zugriff auf die Datenbank benötigen.
Profile
Profile Default
_____________________________________________________________________________
88
_____________________________________________________________________________
Nr.
Richtlinie
SEC-02
Oracle User XY_SS
Zweck
Er ist ein Schnittstellenuser. Dieser User wird für den Datenaustausch zwischen zwei
Datenbanken benötigt, falls der Quelluser und der Zieluser nicht identisch sind.
Rollen und Grants
Er besitzt die Rolle DBA_MAKE_SESSION und eine Schnittstellenrolle mit den
Berechtigungen auf die Objekte des Zielusers. Die Rolle wird nach dem
Schnittstellenuser XY_SS_ROL benannt.
Passwort Management
Der Datenbankbetrieb darf das Passwort, nach Absprache mit dem
Applikationsverantwortlichen, auf allen Datenbanktypen (Development, Test,
Schulung, Integration und Produktion) ändern.
Bei einer Passwortänderung sind die bestehenden Datenbanklinks mit dem neuen
Passwort anzupassen. Dies gilt auch für allfällige Scripts und Konfigurationsfiles.
Profile
Profile Default
SEC-03
Oracle User XY_APPL
Zweck
Es handelt sich um einen Schnittstellenuser zum Applikationsserver. Dieser User wird
für N-Tier Applikationen gebraucht und ist auch, entsprechend geschützt, in
Konfigurationsfiles auf dem Applikationsserver vorhanden. Er dient als Verbindung
zwischen dem Applikationsserver und der Datenbank.
Rollen und Grants
Der User besitzt die Rolle DBA_MAKE_SESSION und die entsprechenden
Applikationsrollen.
Passwort Management
Der Datenbankbetrieb darf das Passwort, nach Absprache mit dem Applikations- und
Systemverantwortlichen, auf allen Datenbanktypen (Development, Test, Schulung,
Integration und Produktion) ändern.
Das Passwort der Produktions- und Integrationsdatenbanken ist nur dem
Datenbankbetrieb sowie dem Systemverantwortlichen, welcher die Konfigurationsfiles
verwaltet, bekannt.
Profile
Profile Default
SEC-04
Oracle User XY_SU
Zweck
Je nach Applikation sind 1-n Administrationsuser erlaubt, die Monatsverarbeitungen
_____________________________________________________________________________
89
_____________________________________________________________________________
Nr.
Richtlinie
der Applikation sowie Abfragen auf dem Catalog durchführen dürfen.
Rollen und Grants
Er besitzt die Rollen DBA_MAKE_SESSION, SELECT_CATALOG_ROLE (eventuell
auch eine eigene Rolle auf ALL_ Views) und die entsprechenden Applikationsrollen,
welche auch das Ausführen von DML Befehlen erlauben.
Passwort Management
Der Datenbankbetrieb darf das Passwort nach Absprache mit dem
Applikationsverantwortlichen auf allen Datenbanktypen (Development, Test,
Schulung, Integration und Produktion) ändern.
Profile
Profile Default
SEC-05
Oracle User XYZ
Zweck
Ist ein Enduser, welcher je nach Applikationsberechtigungen Abfragen auf den
Applikationsobjekten ausführen darf.
Rollen und Grants
Er besitzt die Rolle DBA_MAKE_SESSION, SELECT_CATALOG_ROLE (nur
Applikationsverantwortlicher), die entsprechenden Applikationsrollen und auch eigene
Rollen auf ALL_ Views.
Passwort Management
Das Passwort darf nur auf Anweisung der Benutzers geändert werden.
Profile
Profile End_User
_____________________________________________________________________________
90
_____________________________________________________________________________
6.14.1.2 Rollen der verschiedenen Usertypen
Nr.
SEC-06
Richtlinie
Durch den Datenbankbetrieb werden per Default 2 Rollen auf der Datenbank erstellt.
Dies sind die Rollen DBA_MAKE_SESSION und DBA_APPL_OWNER. Sie beinhalten
folgende Privilegien:
DBA_MAKE_SESSION (für Applikations-, Schnittstellen- und Enduser)
-
create session
alter session
DBA_APPL_OWNER (für Applikationsuser)
-
alter session
create any synonym
create cluster
create database link
create procedure
create public synonym
drop public synonym
create sequence
create snapshot
create synonym
create table
create trigger
create type
create view
grant query rewrite
Sämtliche von der Applikation erstellte Rollen werden durch den DBA geprüft. Dabei
wird kontrolliert, ob sie dem Standard entsprechen und keine Berechtigungen
enthalten, welchen dem Security- und Integritätsaspekt widersprechen.
In keiner Applikationsrolle dürfen Berechtigungen enthalten sein, welche Änderungen
an der Konfiguration oder Struktur der Datenbank zulassen.
Werden dennoch zusätzliche Berechtigungen benötigt, müssen diese mit dem DBA
abgesprochen werden und mittels einer separaten Rolle vergeben werden.
SEC-07
System-Privilegien
Es ist untersagt Oracle Systemprivilegien an End User zu vergeben. Einzige
Ausnahme ist der Applikationsuser.
Falls die Applikation zwingend irgendwelche Systemprivilegien benötigt, muss dies
vorgängig mit dem DBA abgesprochen werden.
_____________________________________________________________________________
91
_____________________________________________________________________________
6.14.1.3 Rollenkonzept für Applikation, System - und Objektprivilegien
Nr.
SEC-08
Richtlinie
Das Rollenkonzept ist nach dem „Subject oriented“ Ansatz auszurichten. [Kapitel
„Subject oriented“]
Alle Zugriffsprivilegien auf Datenbankobjekte werden ausschliesslich an Rollen
vergeben. Diese Rollen werden restriktiv an den entsprechenden Usertyp vergeben.

Das direkte Erteilen von Zugriffsberechtigungen an die Usertypen ist nicht
gestattet. Ausnahme sind Packages, Prozeduren mit Objekten die einem anderen
User gehören.

Das Erteilen von Zugriffsberechtigungen an PUBLIC ist in der Regel nicht
gestattet.

Das Erteilen der Systemrollen CONNECT, RESOURCE oder DBA an die
Usertypen ist nicht gestattet.
Bei einem Rollenkonzept ist darauf zu achten, dass dieses nicht mehr als drei Levels
enthält. Der Grund liegt darin, dass es ansonsten unübersichtlich und damit schlecht
wartbar wird. Dadurch allfällige entstandene Redundanzen werden in Kauf
genommen.
6.14.1.4 Profile
Nr.
SEC-09
Richtlinie
Es werden die Profiles DEFAULT und END_USER eingesetzt. Das Profile
END_USER unterscheidet sich nur in der Anzahl Sessions per User und ist für alle
Benutzer der Applikation verbindlich.

CREATE PROFILE END_USER LIMIT SESSIONS_PER_USER 8;
6.14.1.5 Tablespaces
Nr.
SEC-10
Richtlinie
Dem Appl Owner sind als Default Tablespace Appikationstablespaces zugeteilt,
welche auf „Quota Unlimited Tablespace“ gesetzt sind. Als Default Tablespaces wird,
falls es nicht anderes gewünscht ist <APPLICATIONSNAME_S> verwendet.
Allen anderen Usern wird als Default Tablespace USERS zugewiesen, auf welchem
sie keine Quota besitzen.
Allen Usern wird der Temporary Tablespace TEMP zugewiesen.
_____________________________________________________________________________
92
_____________________________________________________________________________
6.14.1.6 Datenbanklinks
Nr.
SEC-11
Richtlinie
Es gibt keine direkten Datenbanklinks auf fremde Objekte. Alle Zugriffe werden über
Schnittstellenuser geregelt. Datenmanipulationen müssen mittels Packages
durchgeführt werden. Somit ist garantiert, dass von keinem anderen User aus, auf
einer externen Datenbank, Daten ohne Wissen manipuliert werden können.
Create DB-Link und ansprechen von Objekten über DB-Link
Im ODS dürfen DB-Links nicht direkt angesprochen werden. Das Ansprechen der DBLinks muss in Synonyme implementiert werden.
Bei allfälligen Änderungen muss somit nur das Synonym angepasst werden.
z.B.: CREATE SYNONYM TAP_GAT_MASTER FOR
[email protected];
Zwei Varianten von Privat Datenbanklinks sind zulässig.
Variante1:
Quell- und Zielapplikationsuser sind identisch.
z.B: CREATE DATABASE LINK P10PA4.WORLD USING 'P10PA4.WORLD';
Variante2:
Quell- und Zielapplikationsuser sind nicht identisch und werden über einen
Schnittstellenuser verbunden.
z.B: CREATE DATABASE LINK P10PA4.WORLD@ABC_XYZ_SS CONNECT TO
ABC_XYZ_SS IDENTIFIED BY XXXXX USING 'P10PA4.WORLD';
Public Datenbanklinks sind nicht gestattet. Ebenso das Anlegen von DB-Links auf
andere User ausser dem Applikationsuser.
_____________________________________________________________________________
93
_____________________________________________________________________________
6.14.1.7 Ergänzungen und Erklärungen
Im Weiteren sollen einzelne Teile des User- und Rollenkonzeptes näher erläutert werden.
6.14.1.8 Schnittstellenuser erstellen
Damit verteilte Datenbanken, ihre Daten austauschen können, benötigt man in der Regel einen
User und die entsprechenden Zugriffsberechtigungen. Sind mehrere Schnittstellen vorhanden,
verliert man unter Umständen den Überblick von welchen Schnittstellen aus zugegriffen wird. Um
dies zu vermeiden definiert man auf der Quelle einen Schnittstellenuser und vergibt diesem die
notwendigen Berechtigungen. Durch die Namenvergabe wird damit ersichtlich, welche
Schnittstelle diese Daten benötigt. Damit ist auch eine einfachere Bewirtschaftung möglich.
Operative DB
Schnittstellen User auf
Operative DB
ODSDB_OPDB_SS
User
OPDB
ODS
User
ODSDB
Rolle auf Ziel DB
ODSDB_OPDB_SS_ROL
Abbildung 6.31: Schnittstellenuser
Sinnvollerweise ist ein entsprechendes Rollenkonzept zu entwickeln und dem Benutzer sind die
entsprechenden Rollen zuzuweisen.
6.14.1.9 Berechtigungen ohne Rollenkonzept
Bei steigender Anzahl User und Datenbankobjekten wird das Verwalten von
Zugriffsberechtigungen unübersichtlich und enorm schwierig.
User
Tabellen
Abbildung 6.32: Berechtigungen ohne Rollenkonzept
Die Konklusion daraus sind etliche tausende von Grants zu einzelnen Usern. Daraus ist
ersichtlich, weshalb ein User- Rollenkonzept sinnvoll ist.
_____________________________________________________________________________
94
_____________________________________________________________________________
6.14.1.10
Beispiel mit Rollenkonzept
Ein Rollenkonzept ist Initial aufwendig, auf längere Sicht lohnt es sich mehrfach. Im Projektablauf
ist mit dem Rollenkonzept daher hinreichend früh zu beginnen.
User
ZUBO
Role
PM Role
Rollen
ASDP
Role
Adresschecker Role
Tabellen
Abbildung 6.33: Berechtigungen mit Rollenkonzept
_____________________________________________________________________________
95
_____________________________________________________________________________
6.15 Prozesse
In diesem Kapitel werden die Prozesse definiert. Diese werden gebraucht, damit die
erforderlichen Schritte bekannt sind, um eine Überführung in den ODS zu bewerkstelligen. Die
einzelnen Schritte werden definiert, sobald der Kunde bei IT Post die Anfrage startet.
Dabei unterscheiden wir folgende Prozesse:




Prozess „Antrag Kunde“
Prozess „technische Implementation“
Prozess „Zugriffsberechtigung auf Fremddaten bestellen“
Prozess „Zugriffsberechtigung auf Fremddaten erstellen“
_____________________________________________________________________________
96
_____________________________________________________________________________
6.15.1
Prozess „Antrag Kunde“
Es werden lediglich die wichtigsten Schritte aus Kundensicht definiert. Wie bereits erwähnt,
beginnt die Prozessdefinition mit der Kundenanfrage betreffend der Überführung in einem ODS
bei IT Post.
Prozess „Antrag Kunde“
Der Kunde definiert von welcher Datenbank die
Daten extrahiert werden sollen.
Quelldatenbank
definieren
Datenart definieren
Definieren, ob es sich bei den Daten um
temporale Daten oder Stammdaten handelt.
Definieren welche Daten1:1 und welche
tailoriert übernommen werden sollen.
Übernahmeart
definieren
definieren des Intervalls
für die
Datenübernahme
Intervall für die Datenübernahme der
entsprechenden Tabellen definieren.
Zugriffe definieren
Welche User sollen wie auf welche Daten
zugreifen.
temoporale Daten und
Stammdaten definieren
Überführung ins
DWH
nein
Wie soll mit den temporalen Daten nach Ablauf
der maximalen Aufbewahrungsfrist fortgefahren
werden? Falls keine Überführung in DWH
gewünscht ist werden diese gelöscht.
ja
Übernahmeart
definieren
In welcher Form sollen die Daten ins DWH
überführt werden?
(z.B. 1:1, Aggregiert, Denormalisiert)
_____________________________________________________________________________
97
_____________________________________________________________________________
6.15.2
Prozess „technische Implementation“
Der Prozess „technische Implementation“ behandelt die technischen Tätigkeiten, die nötig sind
um die Daten in den ODS zu überführen.
Prozess „technische Implementation“
Goldengate auf
Quelldatenbank
installieren
User auf ODS erstellen
tailoriert
Tabellenstrukturen auf
ODS vorbereiten
Wie sollen die Daten ins ODS
überführt werden? (Tailoriert / 1:1)
1:1
Erstellen der Tabellenstrukturen im
ODS.
Rollen definieren
Cleanup einrichten
nein
Überführung ins
DWH
Datenart
Stammdaten
ja
Transformation/
Aagreagation
Die vom Auftraggeber definierten
User werden auf dem ODS erstellt.
Datenübernahme
Jobs mit
entsprechenden
Intervall definieren
temporal
Der DBA installiert und konfiguriert
Goldengate auf der Quelldatenbank.
Jobs mit
entsprechenden
Intervall definieren
Jobs für die Datenübernahme
erstellen.
Rolle für die User erstellen und
entsprechende Berechtigungen
erteilen.
Handelt es sich um temporale Daten,
die nicht ins DWH überführt werden,
wird ein Cleanup eingerichtet. Die
Daten werden nach max. 90 Tagen
gelöscht.
Werden die Daten in ein DWH
überführt, müssen diese in die
gewünschte Form überführt werden.
Job und Transformation /
Aggregation vorbereiten für die
Überführung ins DWH.
Transformation/
Aggregation
vorbereiten
_____________________________________________________________________________
98
_____________________________________________________________________________
6.15.3
Prozess „Zugriffsberechtigungen auf Fremddaten bestellen“
Dieser Prozess dient der Bestellung von Zugriffsberechtigungen auf Daten, die im ODS abgelegt
sind. Möchten Benutzer auf fachdienstübergreifende Daten zugreifen, muss eine Genehmigung
beim Datenherr eingeholt werden. Dies weil der Datenherr bestimmt, wer auf seine Daten Zugriff
erhält.
Prozess „Zugriffsberechtigungen auf Fremddaten bestellen“
Daten definieren
nein
Genehmigung einholen
Genehmigung
Datenherr
vorhanden
Definieren der Daten im ODS für welche der
Zugriff gewünscht wird.
Zugriff auf die Daten darf nur mit Genehmigung
des Datenherr erfolgen.
ja
Fehlt die Genehmigung des Datenherrn, so ist sie
vorgängig einzuholen.
User auf ODS definieren
Definieren mit welchem User auf die gewünschten
Daten zugegriffen werden soll.
Antrag an BI Admin
weiterleiten
Genehmigung des Datenherrn und Antrag für den
Datenzugriff an BI Admin zur Umsetzung
weiterleiten.
_____________________________________________________________________________
99
_____________________________________________________________________________
6.15.4
Prozess „Zugriffsberechtigungen auf Fremddaten erstellen“
Dieser Prozess dient der Zugriffsberechtigungserteilung auf bereichsübergreifende Daten im
ODS. Er beinhaltet die Schritte des BI Admin bei der Umsetzung.
Prozess „Zugriffsberechtigungen auf Fremddaten erstellen“
nein
Auftrag zurück an
Auftraggeber
Antrag auf
Vollständigkeit prüfen
Der BI Admin prüft den Auftrag auf Vollständigkeit.
Bei allfälligen Unklarheiten wird beim Auftraggeber
nachgefragt.
Genehmigung
Datenherr
vorhanden
Die Berechtigungen dürfen nur mit der
Genehmigung des Datenherrn vergeben werden.
Fehlt diese, muss der Auftrag an den Auftraggeber
zurückgewiesen werden.
ja
Erstellen des gewünschten Users auf dem ODS.
User auf ODS erstellen
Rollen definieren und
User zuweisen
Auftraggeber
informieren
Berechtigungen für den Zugriff auf die
gewünschten Tabellen in einer Rolle definieren
und dem User zuweisen.
Auftraggeber über die Umsetzung informieren.
_____________________________________________________________________________
100
_____________________________________________________________________________
6.16 Umgang mit Berechtigungen
Für Datenzugriffe ist die Bewilligung des Datenherrn Voraussetzung.
Meistens ist jedoch nicht das Erteilen der Berechtigungen das Problem, sondern deren
Entfernung, weil ein z.B. berechtigter Mitarbeiter kündigt oder die Abteilung wechselt.
Für diesen Fall, wird dem Datenherrn quartalsweise ein Auszug mit den Personen gesendet,
welche auf seine Daten Zugriff haben. Personen, die keinen Zugriff mehr auf seine Daten haben
dürfen, muss er an das Datenbankbetriebsteam melden, damit diese die Zugriffe entfernen.
Bei IT Post gibt es aktuell noch kein Identitymanagement System, über welches die Zugriffe bei
einem Wechsel oder Kündigung eines Mitarbeiters automatisch entfernt werden.
_____________________________________________________________________________
101
_____________________________________________________________________________
6.17 Richtlinien und Konvention für ODS Datenbankobjekte
Hierbei geht es um die Namenskonventionen der Datenbankobjekte. Der Fokus wird auf Oracle
Datenbanken gelegt, da der ODS auf diesem RDBMS beruht.
Um eine Datenbank effizient zu unterhalten oder bei allfälligen Problemen rasch Hilfe zu leisten,
ist es notwendig, dass die Datenbankobjekte die Namenskonventionen einhalten.
6.18 Allgemein gültige Namenskonventionen
Bei der Namensgebung ist generell darauf zu achten, dass keine Umlaute, Blanks oder
Sonderzeichen wie z.B.:;,?,@, usw. verwendet werden.
In diesem Dokument wird oft der Ausdruck <Owner> gebraucht. Dieses Kürzel ist mit Bedacht zu
wählen, da es die Basis für viele Namen bildet und es nachträglich (ohne grossen Aufwand)
kaum geändert werden kann. Es sollte mindestens 3 bis maximal 10 Zeichen lang sein.
6.18.1
Database Link
Der Database Link Name wird von Oracle vorgeschrieben (global naming) und besteht aus dem
Ziel-Datenbanknamen und dem Domainnamen (Default=WORLD), welche durch einen Punkt
getrennt werden und fakultativ dem Connection Qualifier, welcher durch ein @ getrennt wird.
z.B.: P10PA10.WORLD
Ein Database Link darf nur über ein Synonym angesprochen werden (z.B.: in Packages, Views
oder Snapshots).
6.18.2
Connection Qualifier
Private Link
Es sind nur Privat Links zulässig. Damit können die Security Richtlinien und Gewaltentrennungen
in der Datenbank sichergestellt werden.
Definition:
<SID>.WORLD@<Schnittstellen_User>
Ein fakultatives Verbindungskennzeichen kann am Ende des Database Link Namen, getrennt mit
einem „@‟ Zeichen angehängt werden.
z.B.: P10PA10.WORLD@OPD_SS
Public Links dürfen prinzipiell nicht verwendet werden. Ausnahmen müssen mit dem Datenbank
Engineering abgesprochen werden.
_____________________________________________________________________________
102
_____________________________________________________________________________
6.18.3
User Applikation Owner
Der Username des Applikation Owners besteht aus dem Applikationskürzel und hat mindestens 3
bis maximal 10 Zeichen lang zu sein.
Definition:
z.B.:
< Applikationskürzel >
IFS
CUROK
6.18.4
Tabellen
Der Tabellenname (ohne Owner) besteht aus maximal 15 Zeichen und ist frei wählbar.
Definition:
z.B.:
<Owner>_<Name>
CURO_XML_LOG_POS_VAR
DEZA_CONFIG
Description: Jede Tabelle muss mittels Table Comment beschrieben werden.
6.18.5
Columns
Beim Neuerstellen einer Tabelle ist folgende Column-Reihenfolge einzuhalten:
1.
2.
3.
4.
5.
6.
7.
Primary Key
Unique Keys
Foreign Keys
Non-unique Keys
Not Null Felder
Null-Felder
VARCHAR2(2000)
Die Reihenfolgen muss nur beim Erstmaligen erstellen der Tabelle eingehalten werden. Bei
Erweiterungen ist dies nicht mehr möglich.
Name: Besteht aus dem Tabellenname (ohne Owner) und dem Feld, welches durch das „_”Zeichen getrennt wird.
Definition:
z.B.:
<Tabellenname_ohne_Owner>_<Feld>
VALRE_SUBSYS
LOG_JOB_ID
(aus Tabelle CURO_VALRE)
(aus Tabelle DEZA_LOG)
Description: Jedes Column muss mittels Comment beschrieben werden.
_____________________________________________________________________________
103
_____________________________________________________________________________
6.18.6
Primary Key
Der Feldname für den Primary Key ist immer „ID”
Definition:
z.B:
<Column>_ID
VALRE_ID
6.18.7
Foreign-Key Column
Feldnamen von Foreign-Key Feldern bestehen aus dem Column Prefix, dem Namen der
referenzierten Tabelle (ohne Owner) und dem Namen des referenzierten Feldes, welche durch
das „_”-Zeichen getrennt werden. Wenn es mehrere Foreign-Keys gibt, dann muss ein Name (z.
B. der Name der Relation) als Suffix angegeben werden.
Definition:
<Column Prefix>_<ForeignTabName>_<ForeignColumnName>[_<Name>]
Definition:
z.B:
DETAIL_SSVR_ID
DLS_ZW_SYS_NR
6.18.8
Constraints
Der Constraintname besteht aus dem Tabellennamen, den Column Namen (optional, nur
obligatorisch wenn der Constraint auf bestimmte Felder zeigt, mit Ausnahme von „ID” Feldern für
Primary Keys) und dem Kürzel zur Bezeichnung der Constraintart, welche durch das „_“ -Zeichen
getrennt werden. Wo der Constraintname zu lang wird, kann anstelle der Column Namen ein
anderer aussagekräftigerer Name verwendet werden.
Definition:
<Tabellename>[_< Kolonnennamen>]_<Constraintart>
Die Constraintart ist wie folgt definiert :





z.B.:
PK
CK
FK
UK
NN
(Primary-Key-Constraint)
(Check-Constraint)
(Foreign-Key-Constraint)
(Unique-Key-Constraint)
(Not-Null-Constraint)
RWP_DLS_MUSER_NN
CURO_PROZU_UK
RWP_BEI_FAKM_FK
_____________________________________________________________________________
104
_____________________________________________________________________________
6.18.9
Views
Viewnamen werden wie folgt aufgebaut:
Definition:
z.B.:
<Viewname>_<künstlicher Name>_V
RWP_ABF_BS_EMS_V
CURO_KUN_ALLE_V
DEZA_REF_CODES_V
6.18.10 Trigger Namen
Der Triggername besteht aus dem Owner, dem Tabellennamen, dem Zeitpunkt (A=After,
B=Before) mit dem Triggertyp (R=Row, S=Statement), dem Auslöseereignis (D=Delete, I=Insert,
U=Update - sortiert) und dem Suffix „TG‟, welche durch das „_“ -Zeichen getrennt werden.
Definition:
z.B.:
<Owner>_<Tabellenname>_<Zeitpunkt><Typ>_<Ereignis>_TG
DEZA_VERSION_BR_UI_TG
CURO_VALRE_BR_UID_TG
IFS_EG_STATUS_IU_TG
6.18.11 Index
Der Indexname besteht aus dem Tabellennamen, den indizierten Feldnamen (ohne
Tabellenkürzel) und der Indexart, welche durch das „_”-Zeichen getrennt werden. Wo der
Indexname zu lang wird, kann anstelle des Feldnamen ein anderer aussagekräftigerer Name
verwendet werden.
Definition:
<Tabellenname>_<Feldnamen>_<Indexart>
Die Indexart ist wie folgt definiert :




z.B.:
I
UI
BI
PK
Index
FK
Bitmap index
Primary key index
AUSB_BELEGNR_I
BER_DEBI_ID_I
BEDE_UK
BEDE_PK
UK und PK Indexes werden automatisch von den Constraints erstellt.
_____________________________________________________________________________
105
_____________________________________________________________________________
6.18.12 Package
Package Body: Der Packagename besteht aus dem Owner, einem selbstsprechenden Namen
und wenn möglich dem Suffix „Pack“ und wird durch das „_“-Zeichen getrennt werden.
Definition:
z.B.:
<Owner>_<Name>_PACK
CURO_PUT_VAL_PACK
IFS_FRL_ZSP_PACK
DEZA_RDLF_PACK
Package Body und Specification haben den gleichen Namen.
6.18.13 Procedure (Standalone)
Procedure: Der Prozedurnamen besteht aus dem Owner, einem selbstsprechenden Namen und
wenn möglich dem Suffix „Proc“, welche durch durch das „_“-Zeichen getrennt werden.
Definition:
z.B.:
<Owner>_<Name>_PROC
CURO_INS_PROC
IFS_UPD_PROC
DEZA_CONS_PROC
6.18.14 Function (Standalone)
Function: Der Funktionsname besteht aus dem Owner, einem selbstsprechenden Namen und
wenn möglich dem Suffix „Func“, welche durch das „_“-Zeichen getrennt werden.
Definition:
z.B.:
<Owner>_<Name>_FUNC
CURO_NAME_FUNC
ASDP_PLZ_FUNC
6.18.15 Rolen Namen
Der Rollenname besteht aus dem Owner und einem Namen, welche durch das „_“ -Zeichen
getrennt werden. Der Suffix „ROL“ ist fakultativ.
Definition:
z.B.:
<Owner>_<Name>[_ROL]
RWP_10
CUR_50
DBA_DEVELOPPER
WWW_RWP_MUT_ALL
_____________________________________________________________________________
106
_____________________________________________________________________________
6.18.16 Sequenz Name
Der Sequenzname besteht aus dem Owner, dem betreffenden Feldnamen (inkl. dem
TabellenPrefix) und dem Suffix „SEQ”, welche durch das „_“ -Zeichen getrennt werden.
Definition:
z.B.:
<Owner>_<Feldname>_SEQ
WWW_RWP_VK_ID_SEQ
IFS_AUFG_ID_SEQ
CURO_VALRE_ID_SEQ
6.18.17 Materialized Views
Eine Materialized View besteht aus dem Owner, einem Namen (für einfache Materialized Views,
der Tabellenname) und dem Suffix „MV” (alt SNAP für Snapshot), welche durch das „_“ -Zeichen
getrennt werden.
Definition:
z.B.:
<Owner>_<Name>_MV
IFS_FRP_ALL_KUN_MV
CURO_ISO_CODE_MV
Die Referenz auf die Master-Tabelle muss immer über ein Synonym erfolgen. [siehe Kapitel
6.19.19].
6.18.18 Materialized View - Synonym
Der Synonymname der Master-Tabelle und der dazugehörige Materlialized View muss gleich
lauten, damit die Location Transparency gewährleistet ist.
Das Synonym soll immer auf die physische MV$-Tabelle, die beim Create Materlialized View
generiert wird, angelegt werden und nicht auf die View.
6.18.19 Synonym
Alle Packages, Sequences, Snapshots, Tables und Views müssen durch ein PRIVATE
SYNONYM angesprochen werden. Wo es applikatorisch bedingt notwendig ist (z.B.: bei
Business Objects), können auch PUBLIC SYNONYMS verwendet werden.
_____________________________________________________________________________
107
_____________________________________________________________________________
6.19 Konzeptbericht
In dieser Phase des Projektes wurden folgende Aktivitäten durchgeführt:







6.19.1
Definition von Begriffen und Technologien
Definition der Module
Varianten erarbeitet, gewichtet und ausgewählt
Definition Zielarchitektur
Definition BI Plattform
ODS-Organisation
Prozesse für den Betrieb der Plattform erstellt
Definition von Begriffen und Technologien
Als erstes wurden Begriffe und Technologien, die später im Konzept erwähnt werden, genauer
beschrieben. Dies ist wichtig, um Missverständnissen vorzubeugen oder die einzelnen Schritte
besser nachvollziehen zu können. Dabei wurde auf einzelne Begriffe und Technologien bewusst
detaillierter eingegangen als auf andere.
6.19.2
Definition der Module
Mit der Definition von Modulen wird versucht, eine Standardisierung bei der Datenüberführung in
den ODS zu erreichen. Die Module sollen dem Kunden, helfen seine Daten in den ODS zu
überführen. Auf der technischen Seite helfen die Standardisierungen bei einer schnellen und
unkomplizierten Umsetzung.
6.19.3
Varianten
Es wurden 4 Varianten erarbeitet, die als mögliche Zielarchitektur in Fragen kamen. Dabei wurde
jeweils versucht, die Schwachstellen der vorangegangenen Variante durch Anpassungen oder
Erweiterungen in der nächsten Variante zu beheben.
Anschliessend wurden die Varianten mit den definierten Anforderungen abgeglichen und
gewichtet. Dies war notwendig, um eine objektive Auswahl treffen zu können. Hier ist zu
erwähnen, dass wir vollständigkeitshalber und zum Zwecke der Nachvollziehbarkeit sämtliche
Kriterien mit einbezogen haben, was dazu führt, dass gewisse plattformabhängige Kriterien bei
allen Varianten die selbe Bewertung erhielten.
6.19.4
Zielarchitektur
Nachdem sich die Variante 3 als beste Lösung heraus kristallisiert hatte, musste die
Zielarchitektur definiert werden. Diese wurde mit einem Use Case Modell abgebildet. In einem
weiteren Schritt wurde die Hardwarearchitektur definiert. Dabei wurden auch mögliche
Skalierungsvarianten berücksichtigt.
_____________________________________________________________________________
108
_____________________________________________________________________________
6.19.5
BI Plattform
Unter dem Kapitel der BI Plattform Architektur wurde auf die Softwarekomponenten der künftigen
Plattform eingegangen. Es wurde klar definiert, welche Software zum Einsatz kommt.
6.19.6
ODS-Organisation
Bei der ODS-Organisation wurde genauer auf den ODS eingegangen. Es wurde der Umgang mit
den Daten behandelt. Dabei ging es darum, wie die Daten im ODS organisiert werden, wer
welche Zugriffe darauf erhält und wie die Daten zu historisieren sind. Es wurde ebenfalls auf die
Verfügbarkeit des ODS eingegangen.
Zusätzlich wurde ein Userkonzept für die Benutzer im ODS erstellt. Dieses regelt die
Organisation der User und deren Berechtigungen im ODS aus technischer Sicht.
Zu guter Letzt wurden Prozesse für die Datenübernahme und Bestellung von
Zugriffsberechtigungen erstellt. Hierfür wurde zwischen der fachlichen und der technischen Sicht
unterschieden.
_____________________________________________________________________________
109
_____________________________________________________________________________
7
Realisierung
In diesem Kapitel werden die definierten Konzepte, die in den vorherigen Kapiteln behandelt
wurden, mittels Proof of Concept geprüft. Zudem wird das nötige Betriebskonzept erstellt.
7.1
Einleitung PoC
Als Proof of Concept wurde das Projekt Adresschecker gewählt. Das Projekt entstand, weil
diverse Bedürfnisträger eine Adressprüfung mittels eines Webservices durchführen wollten.
Bei der Überprüfung einer Adresse werden je nach Art der Überprüfung Anfragen über mehrere
Datenbanken durchgeführt. Im PoC werden diese Quellen an den ODS angebunden und die
nötigen Daten repliziert, so dass die operativen Systeme nicht mehr zusätzlich belastet werden
und die Daten zentralisiert zur Verfügung gestellt werden können.
7.2
Aufbau PoC Plattform
Für die PoC Umgebung wurden folgende Systeme aufgebaut:
 ODS Datenbank
 Datenbanken für Adresschecker
o ASDP
o ZUBO
o KDP
o WAS
o ZDL
 Zusätzlicher Service auf XML Gateway, für Test externer Aufrufe
 Zusätzliche Webservices (intern / extern) mit ODS als Backend
 ODI Umgebung
7.2.1
ODI
Auf einem Server wurde ODI installiert und konfiguriert. ODI wird für die ETL Funktionalität
verwendet. Im PoC wird er für die Anpassung der Datenstruktur und das Denormalisieren
verwendet. In einem nächsten Schritt wird mit ihm die Überführung der Daten ins DWH
durchgeführt.
_____________________________________________________________________________
110
_____________________________________________________________________________
7.2.2
Adresschecker Architektur
Client
Internet Zone
SOAP request/response
IX Zone
XML
Gateway
Postnetz
SOAP request/response
ASDP
PL/SQL call
PL/SQL call
ZUBO
JDBC call
ESB
Web Services
extern
DB Service
PL/SQL call
JDBC call
ESB
Web Services
intern
PL/SQL call
PL/SQL call
ZDL
KDP
SOAP request/response
Postnetz Software
WAS
Abbildung 7.1: Adresschecker Architektur
Dies ist die Architektur des Services, der für das PoC gewählt wurde. Darauf sieht man, wie bei
internen oder externen Aufrufen die Webservices die Daten von verschiedenen operativen
Datenbanken abrufen.
7.2.3
Quellen
Als Quellen dienen die Datenbanken ASDP, ZUBO, KDP, WAS und ZDL. Jede dieser
Datenbanken enthält Adressdaten verschiedenster Art.

ASDP (Allgemeine Stammdaten Post)
In der Anwendung ASDP werden Stammdaten für die ganze Post verwaltet. Darin sind
die Postleitzahlen sowie PLZ-Informationen, Gemeindedaten und Feiertagsdaten
enthalten.

ZUBO (Zustelldaten Botenbezirk Sortierfile)
Diese Anwendung verwaltet alle „postalisch bedienten Adressen“ der Schweiz und des
Fürstentums Liechtenstein. Jede Adresse enthält den Schlüssel zum System Geo-Post
(Geografische Koordinaten einer Adresse). ZUBO liefert für jede postalisch bediente
Adresse die Anzahl Haushaltungen (zugestellt, Stopp, Fächer, Total) sowie die
Zustellogistik (Zustellstelle, Bezirk für Brief und Paketzustellung, gültig von- bis,
Zustellmittel, Abholstelle).

WAS (Webservice Adressuche)
WAS besteht aus einem ZUBO Teilreplikat. Die Daten in dieser Datenbank liegen zum
Teil bereits denormalisiert vor.
_____________________________________________________________________________
111
_____________________________________________________________________________

KDP (Kundendaten Post)
Mit der KDP Datenbank wird die Zuordnung eines postweiten Schlüssels in den einzelnen
Kundendatenbanken sichergestellt. Dies bildet die Voraussetzung für ein umfassendes
Kundenbild, insbesondere für Gross- und Grösstkunden. Mit KDP werden alle Firmenund Privatadressen zur postweiten Nutzung zur Verfügung gestellt.

ZDL (Zustell Dienstleistungen)
ZDL umfasst die Bewirtschaftung der postalischen Dienstleistungen zur Unterstützung
der Zustellung, insbesondere die Nachsendeaufträge, Zustellung ins Postfach, DomizilUnteradressen, Vollmachten, Zeitungen ohne Adresse usw.
7.2.4
Technische Funktionen aus der Spezifikation
Der Service soll sowohl für interne als auch externe Kunden für Adressvalidierungen zur
Verfügung stehen. In einer ersten Phase sollen mit diesem Service Adressen aus der Schweiz
und dem Fürstentum Lichtenstein validiert werden können. Erst in einer späteren Phase soll der
Service um weitere Länder erweitert werden.
7.2.4.1
Zugriff auf die Daten
Damit die internen Datenzugriffe von den externen getrennt werden können, wird der Zugriff
durch ein User- und Rollenkonzept geregelt. So kann intern auf sämtliche Daten zugegriffen
werden, wohingegen externe Kunden nur einen eingeschränkten Zugriff auf die Daten erhalten.
7.2.4.2
Fuzzy Search Logic
Die Funktion „Unscharfe Suche: fehlerhaft geschriebene Strassennamen berücksichtigen“ wird
mittels Oracle Text realisiert.
Mit dieser Option kann mittels einer Indexierung von Datenfeldern eine Volltextsuche realisiert
werden. Diese Funktion ist jedoch erst in einem späteren Release vorgesehen.
Die Validierung der Adressen wird in drei Etappen realisiert:
1. Verifizierung des Ortes
2. Verifizierung der Adresse
3. Verifizierung der Personennamen (natürliche und juristische)
Der Service ermöglicht eine Informationssuche und Validierung der Daten. Standardmässig wird
der Service als Suchsystem eingesetzt. Falls eine Validierung der Daten durchgeführt wird,
müssen sämtliche Input Parameter beim Aufruf des Services mitgegeben werden.
_____________________________________________________________________________
112
_____________________________________________________________________________

Suchservice
Der Suchservice gibt die Informationen zurück, die den Suchkriterien entsprechen.
zum Beispiel: wenn als Input Parameter die Postleitzahl 2400 eingegeben wird, liefert der
Service folgende Daten zurück.
1. 2400 Le Locle
2. 2400 Le Prévoux
3. + alle historischen Daten zur Postleitzahl 2400

Validierungsservice
Der Validierungsservice prüft die Daten auf ihre Richtigkeit. Für die Validierung müssen
mindestens zwei Inputparameter mitgegeben werden.
Zum Beispiel: 2400 Le Prévoux resp. Postleitzahl und Ort
7.2.4.3
Verifizierung des Ortes (Etappe 1)
Die Verifizierung des Ortes ermöglicht die gleichzeitige Validierung der Postleitzahl und des
Ortes. Für diese Etappe werden die Daten aus ASDP benötigt. Dabei werden auch historische
Daten berücksichtigt.
7.2.4.4
Verifizierungsprozess
Die Postleitzahlen und Orte werden als Input Parameter mitgegeben. Als Resultat erhält der
Kunde einen oder mehrere Einträge zurück. Wenn die Postleitzahl nicht mit dem Ort
übereinstimmt, wird die Postleitzahl als prioritärer Suchinput verwendet.
Als Ausgabe wird für jeden gefunden Eintrag folgendes zurückgeben:
1. ID der Postleitzahl (ONRP)
2. die Postleitzahl als 4-stellige Ziffer (substr(PLZ_PLZ,1, 4))
3. den Ort mit 18 Zeichen (PLZB_ORT_18), 27 Zeichen (PLZB_ORT_27) und 39 Zeichen
(PLZB_ORT_39)
Die Ausgabe des Ortes mit 39 Zeichen wird externen Kunden nicht angeboten
4. ein Indikator, der angibt, ob die Postleitzahl gültig ist
5. ein Indikator, der angibt, ob der Ort gültig ist
6. ein Indikator, der angibt, ob die Postleitzahl und der Ort gültig sind
7. ein Indikator, ob der angibt, ob die Postleitzahl und der Ort offiziell sind
8. Sind die Daten nicht offiziell, wird der Vermerk „Adresszusatz“ zurückgegeben
9. ein Indikator, falls der Ort „ alternativ“ ist
10. der Sprachcode für den Ort „alternativ“
11. der Sprachcode für die Postleitzahl
12. der Typ der Postleitzahl
_____________________________________________________________________________
113
_____________________________________________________________________________
7.2.4.5
Suchprozess
Wird die Postleitzahl und der Ort eingeben, so wird die Suche nach folgenden Kriterien
durchgeführt:
1. Postleitzahl (4-stellig) und Ort
2. Postleitzahl (4-stellig)
3. Ort
Beispiel:
2400 Le Locle  Resultat = 2400 Le Locle als ersten Eintrag.
2400 La Chaux-de-Fonds  Resultat = 2400 Le Locle + 2400 Le Prévoux als zweiten Eintrag.
2402 Le Locle  Resultat = 2400 Le Locle als dritten Eintrag.
7.3
Durchführung PoC
Die Durchführung des PoC geschieht in zwei Phasen.
Phase1:
In der ersten Phase wird einfach mal die Grundfunktionalität zur Verfügung gestellt und geprüft.
1. Aufbau einer eignen Umgebung für den PoC (Datenbanken, XMLGateway, ESB
Webservices, ODI, ODS)
2. Datenübernahme aus den Quellsystemen. Dabei werden die Daten mittels Oracle
Goldengate 1:1 in den ODS überführt.
3. Anpassen der Scripts / Packages und des Webservices auf die PoC Umgebung
4. Testen des Adresscheckers
Phase2:
In der zweiten Phase werden die Resultate des Adresscheckers aus technischer Sicht geprüft.
Es wird geprüft, welche Abfragen optimiert werden müssen. Dabei wird entweder das Statement
oder die Datenstruktur angepasst.
1.
2.
3.
4.
Identifizieren der „langsamen“ Funktionen / Statements
Statement anpassen, Daten denormalisieren oder aggregieren
Allfälliges Anpassen der Scripts, PL/SQL Packages und des Webservices
Testen des Adresscheckers
_____________________________________________________________________________
114
_____________________________________________________________________________
7.3.1
Lösung
Mit diesem Modell soll aufgezeigt werden, wie die heutige Situation durch die Verifizierung mittels
Proof of Concept vereinfacht werden kann.
Ausganglage
Poc Lösung
KDP
ODS
Webserver
Client
Abbildung 7.2: PoC Lösung
WAS
Webserver
ZDL
Client
ZUBO
ASDP
Abbildung 7.3: PoC Ausgangslage
7.3.2
Resultate Phase 1
In dem nächsten Kapitel werden folgende Arbeiten erläutert:



Data Integration mit Oracle Goldengate
Data Integration mit Oracle Data Integrator (ODI)
Test Webservice
7.3.2.1
Data Integration mit Oracle Goldengate
Wie bereits mehrfach beschrieben, werden die Daten mittels Oracle Goldengate vom
Quellsystem in den ODS überführt. Die unterschiedlichen Quellsysteme wurden bereits an
anderer Stelle erwähnt. Hier werden lediglich, die Konfigurationsfiles für die Extraktions- und den
Ladeprozess dargestellt.
Beispiel anhand der Quelle ASDP:
Konfiguration auf Quellsystem
EXTRACT e_asdp
USERID asdp, PASSWORD <pwd>
RMTHOST v056z3, MGRPORT 7809
RMTTASK replicat, GROUP l_asdp
_____________________________________________________________________________
115
_____________________________________________________________________________
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
ASDP.ASDP_DOM;
ASDP.ASDP_LOGM;
ASDP.ASDP_LOGL;
ASDP.ASDP_LOGP;
ASDP.ASDP_WSUSER;
ASDP.ASDP_SUCH;
ASDP.ASDP_ADRCHK;
ASDP.ASDP_PLZB;
ASDP.ASDP_PLZ;
Konfiguration auf Zielsystem
REPLICAT l_asdp
USERID ods1, PASSWORD <pwd>
ASSUMETARGETDEFS
MAP ASDP.ASDP_DOM, TARGET ASDP.ASDP_DOM, KEYCOLS (DOM_NOM,DOM_CODE);
MAP ASDP.ASDP_LOGM, TARGET ASDP.ASDP_LOGM, KEYCOLS (LOGM_ID);
MAP ASDP.ASDP_LOGL, TARGET ASDP.ASDP_LOGL, KEYCOLS (LOGL_ID);
MAP ASDP.ASDP_LOGP, TARGET ASDP.ASDP_LOGP, KEYCOLS (LOGP_NOM);
MAP ASDP.ASDP_WSUSER, TARGET ASDP.ASDP_WSUSER, KEYCOLS
(WSUSER_WEBSERVICE,WSUSER_PARAMETRE,WSUSER_DATE);
MAP ASDP.ASDP_SUCH, TARGET ASDP.ASDP_SUCH, KEYCOLS
(SUCH_ABS,SUCH_BEZ,SUCH_FLD,SUCH_ID);
MAP ASDP.ASDP_ADRCHK, TARGET ASDP.ASDP_ADRCHK, KEYCOLS
(ADRCHK_PARAM,ADRCHK_VAL1_V);
MAP ASDP.ASDP_PLZB, TARGET ASDP.ASDP_PLZB, KEYCOLS (PLZB_ID);
MAP ASDP.ASDP_PLZ, TARGET ASDP.ASDP_PLZ, KEYCOLS (PLZ_ID);
Als Resultat wurden die Daten der ASDP Tabellen auf das Zielsystem repliziert.
7.3.2.2
Data Integration mit Oracle Data Integrator (ODI)
Mit dem ELT Tool ODI haben wir aufgezeigt wie Transformationen oder Ladeprozesse in etwaige
DWHs oder im ODS stattfinden.
Zunächst wurden die Data Stores definiert. Dabei wird in Physical und Logical Architecture
unterschieden. Der Unterschied liegt darin, dass einerseits die physische Infrastruktur und
andererseits der logische Aufbau in der Datenbank beschrieben werden.
Abbildung 7.4: ODI Physical Architecture
Abbildung 7.5: ODI Logical Architecture
_____________________________________________________________________________
116
_____________________________________________________________________________
Anschliessend wurde die Struktur der entsprechenden Quell- und Zielsystemen vorbereitet.
Hierbei werden sogenannte Models gebildet, wo mittels Reverse Engineering die Struktur der
Quell- und Zielsysteme ersichtlich wird:
Abbildung 7.6: ODI Model
Damit gelangt man zum anschliessenden Ladeprozess:
Abbildung 7.7: ODI Mapping
_____________________________________________________________________________
117
_____________________________________________________________________________
7.3.2.3
Test Webservice
Stellvertretend für verschiedene Tests folgen zwei Aufrufe des Webservices, die mittels soapUI
auf der neuen Umgebung durchgeführt wurden.
Abbildung 7.8: SOAP Aufruf 1
Abbildung 7.9: SOAP Aufruf 2
_____________________________________________________________________________
118
_____________________________________________________________________________
7.3.3
Resultate der Phase 2
In dieser Phase wurden die Sessions des Webservices auf dem ODS überwacht, um sogenannte
Langläufer (Statements, die überdurchschnittliche Ausführungszeiten haben) ausfindig zu
machen.
Bei der Analyse der Statement respektive der Execution Plans konnten jedoch keine „schlimmen“
Statements ausfindig gemacht werden. Der Grund dafür ist, dass es sich beim Webservice um
eine klassische OLTP Applikation handelt, die über Indexzugriffe nur wenige Resultate zurück
liefert. In der Folge konnten/mussten auch keine Statements angepasst werden.
_____________________________________________________________________________
119
_____________________________________________________________________________
7.4
Betriebskonzept
Das Betriebskonzept bildet die Grundlage für einen reibungslosen und sicheren Einsatz. Es
werden alle im Zusammenhang mit dem Betrieb auftauchenden Fragen beantwortet.
7.4.1.1
Zweck
Das Betriebskonzept beschreibt die Aktivitäten und die Organisation zum Betrieb der
zentralisierten und modularen BI Plattform und Infrastruktur.
7.4.2
Architektur
Die Plattform ist folgendermassen aufgebaut.
DWH
SLES 11 x64
ODI
SLES 11 x64
ODS
ODI
SLES 11 x64
Staging
SLES 11 x64
Goldengate
operative Datenbank
SLES 11 x64
Abbildung 7.10: Architekturübersicht
_____________________________________________________________________________
120
_____________________________________________________________________________
Beim DWH, ODI und dem ODS handelt es sich um zentrale Komponenten, die nebst
Redundanzen betreffend Ausfallsicherheit, nur einmal vorhanden sind.
Die operative Datenbank existiert mehrmals und kann ein Oracle, MSQL, MySQL oder ein
anderes RDBMS sein.
Oracle Goldengate bildet die Schnittstelle zwischen dem ODS und der operativen Datenbank. Es
ist jeweils auf einer Quell- und Zieldatenbank installiert.
Das ODI ist für die Transformierung der Daten im ODS oder für die Überführung der Daten vom
ODS ins DWH verantwortlich.
7.4.3
Komponenten
Folgende Komponenten sind für einen reibungslosen Betrieb verantwortlich. Dementsprechend
muss die Organisation so strukturiert sein, dass Spezialisten für die jeweilige Komponente, den
nötigen Support sicherstellen können.
7.4.3.1
Operatives System
Das operative System liefert die Daten für den ODS. Dadurch wird das operative System
langfristig entlastet und die Daten können so auf dem ODS anderen Nutzern zur Verfügung
gestellt werden.
7.4.3.2
Staging
Der Stagingbereich ist nicht zwingend. Er wird benötigt, falls die Daten nicht 1:1 aus dem
Quellsystem übernommen werden und dient als Zwischenspeicher für nachfolgende
Transformationen.
7.4.3.3
ODS
Im ODS werden Stammdaten, datumbezogene Stammdaten und temporale Daten gehalten.
Diese Daten können in aufbereiteter Form für Reports und Analysen zur Verfügung gestellt
werden. Die Daten werden Subject Oriented abgelegt.
7.4.3.4
ODI
Mit dem ODI werden die Daten transformiert und/oder ins DWH überführt.
7.4.3.5
DWH
Auf Wunsch des Datenherrn, können temporale Daten nach Ablauf der maximalen
Aufbewahrungsdauer, vom ODS ins DWH überführt werden. Die historisierten Daten können
ebenfalls in aufbereiteter Form für Reports und Analysen zur Verfügung gestellt werden.
_____________________________________________________________________________
121
_____________________________________________________________________________
7.4.4
Installationsverantwortung
Hierbei soll beschrieben werden, welche Organisationseinheit für die Installationen der jeweiligen
Komponenten verantwortlich ist.
7.4.4.1
Installation Betriebssystem
Das Betriebssystem wird durch das OS Team IT245 standardmässig und automatisiert
aufgesetzt.
7.4.4.2
Installation Datenbank
Die Installation des Datenbankservers läuft nicht automatisiert, sondern wird manuell von der
IT234 nach Anleitung des Datenbankengineering (IT226) durchgeführt. Die Best Practices der
jeweiligen RDBMS sind dabei stets einzuhalten.
7.4.4.3
Installation Goldengate
Auf der Quelldatenbank und auf dem ODS muss Goldengate nach Anleitung des
Datenbankengineering (IT226) installiert und konfiguriert werden.
7.4.4.4
ODI
Der ODI ist ebenfalls nach Anleitung des Datenbankengineering (IT226) zu installieren und
konfigurieren.
7.4.5
Betriebssicherheit
Im Weiteren werden folgende Punkte beschrieben:



Grundsicherheit
Benutzersicherheit
Überwachung / Protokollierung
7.4.5.1
Grundsicherheit
Die Server werden gemäss dem IT Grundschutz der schweizerischen Post abgesichert.
7.4.5.2
Benutzersicherheit
Die Benutzersicherheit wird mit dem User- und Rollenkonzept gewährleistet.
_____________________________________________________________________________
122
_____________________________________________________________________________
7.4.5.3
Überwachung / Protokollierung
Die Hauptüberwachung der Systeme wird mittels IDS / IPS durch die IT Netzsecurity
gewährleistet.
Für die Datenbanken gibt es keine generischen Vorgaben. Je nach Kunden- oder
Complianceanforderungen werden die entsprechenden Sicherheitsfeatures situativ installiert oder
aktiviert.
_____________________________________________________________________________
123
_____________________________________________________________________________
7.4.6
Normalbetrieb
Die Organisationeinheiten für den Betrieb nehmen folgende Verantwortungen wahr:






Monitoring der Basisinfrastruktur
o Server
o Netzwerk und deren Komponenten
o Storage Systeme
Monitoring der Applikatorischen Dienste
o Datenbanken
o Applikationserver
Monitoring von Applikationen
Datensicherungen
Patching von Systemen
Upgrades und Migrationen
7.4.6.1
Datensicherung
Die Datensicherung der Systeme wird nach den Best Practices der Engineering Teams der
jeweiligen Technologie eingerichtet und sichergestellt.
Das Engineering gibt die Sicherungsstrategien vor und ist für die Erstellung und Umsetzung von
Business Continuity Konzepten verantwortlich.
Systeme und Datenbanken werden nach folgender Sicherungsstrategie gesichert:



Wöchentliche Vollsicherung (Level 0)
Tägliche inkrementelle kumulative Sicherung (Level 1)
Mehrmalige tägliche Archivelog Sicherungen (Oracle Datenbanken)
So
Inc0
Mo
Di
Mi
Do
Fr
Sa
Inc1
Inc1
Inc1
Inc1
Inc1
Inc1
Incremental 0 (Fullbackup)
Incremental 1
Archivelog Backup
Abbildung 7.11: Backup Strategie
_____________________________________________________________________________
124
_____________________________________________________________________________
7.4.6.2
Überwachung
Folgende OEs sind für die aufgeführten Technologien verantwortlich:
IT245 Server und Betriebssysteme
IT234 Datenbanken
IT26[1-5] Applikationsserver und Applikationen
Als Hauptüberwachungstool wird HP Openview eingesetzt. Für Systeme / Komponenten, die
damit nicht abgedeckt werden können, werden zusätzliche Tools eingesetzt:



Hardware: HP Health
Datenbanken: Oracle Enterprise Manager (Grid Control)
Applikationsserver: Springsource Hyperiq, HP Business Avalaibility Control (BAC)
7.4.6.3
Performanceüberwachung
Für die Performanceüberwachung werden verschiedene Tools eingesetzt. Einerseits werden
gewisse Schwellwerte mit entsprechender Alarmierung bei Überschreitung definiert, andererseits
können einfach zusätzliche Informationen gesammelt werden, die zur Analyse der
Performanceprobleme nützlich sind.
Folgende Tools werden dabei eingesetzt:



HP Openview
Oracle Enterprise Manager Grid Control
Springsource Hyperiq
7.4.7
Lifecycle der Software
Die Informatik ist einem stetigen Wandel ausgesetzt. Täglich kommen neue Technologien oder
neue Software Release hinzu. Zudem wird die Software ständig optimiert und Fehler korrigiert.
Das Einspielen von Patches wird dadurch unabdingbar.
7.4.7.1
Release Wechsel
Neue Releases, auch Major Releases genannt, werden durch das Engineering überprüft und zur
Einführung vorbereitet. Neue Releases werden gemäss dem Lifecycle der entsprechenden
Software geplant und eingeführt.
7.4.7.2
Patches
Die Patches werden durch das Engineering getestet und zur Verteilung vorbereitet.
Security Patches werden vierteljährlich installiert. One Off Patches werden nur für dringende
Korrekturen installiert. Sicherheitspatches werden gemäss den Empfehlungen von Operational
Security (OPS) verteilt.
_____________________________________________________________________________
125
_____________________________________________________________________________
7.4.8
Abgrenzung und Schnittstellen
Nachfolgend sollen organisatorische Abgrenzungen und Schnittstellen behandelt werden.
7.4.8.1
Organisation
7.4.8.2
Zusammenarbeit von Betrieb und Engineering
Betrieb der Betriebssysteme  IT245
Betrieb des ODS, ODI und DWH  IT234
Engineering des ODS, ODI und DWH  IT226
Betrieb:
 Implementiert und betreibt Systeme nach den Vorgaben 7x24

Änderungen an den Konzepten werden durch das Engineering geprüft und freigegeben

Patchlevel auf Produktion und Integration ist in der Verantwortung des Betriebs, jedoch
erst nach vorgängiger Freigabe durch das Engineering

Userverwaltung auf Produktion und Integration ist in der Verantwortung des Betriebs
Engineering:
 Änderungen auf Produktionssystemen werden generell nur durch den Betrieb gemacht.
Das Engineering macht Änderungen nur nach vorgängiger Absprache mit dem Betrieb.

Änderungen auf Integrationssystemen werden generell nur durch den Betrieb gemacht.
Das Engineering macht Änderungen nur nach vorgängiger Absprache mit dem Betrieb.

Bei neuangebundenen Datenbanken muss eine Betriebsübergabe stattfinden. Diese
werden im Bullnix Web (IT internes Wiki) dokumentiert.

Test- und Entwicklungsumgebungen sind in Verantwortung des Engineering, unter
Mitwirkung des Betriebs.
_____________________________________________________________________________
126
_____________________________________________________________________________
8
Einführung
In diesem Kapitel werden lediglich die Supportprozesse erläutert. Es wird beschrieben, wie
innerhalb der IT Post mit Problemen im Zusammenhang mit der BI Plattform vorzugehen ist.
Das technische Konzept wurde in einem früheren Kapitel [Kapitel 6 Konzept] bereits behandelt.
8.1
Supportprozesse
Nach der Einführung eines neuen Informatiksystems müssen auftretende Probleme so schnell
wie möglich gelöst werden. Nur durch eine strukturierte Organisation und durch strikte Trennung
von Aufgaben, Kompetenzen und Verantwortungen, ist eine schnelle und effiziente
Problembehebung möglich.
Dabei werden folgende Supportlevel unterschieden:



First Level Support
Second Level Support
Third Level Support
Die Organisation bei IT Post ist nach obengenannter Auflistung gegliedert. Der Support wird
durch die Unit „IT2 Betrieb“ wahrgenommen.
Innerhalb IT2 befinden sich folgende Sub-Units:



IT22 Engineering
IT23 Basis Betrieb
IT26 Applikationsbetrieb
Die genannten Sub-Units sind für den First und Second Level Support zuständig. Der Third Level
Support wird in der Regel vom Hardware- oder Softwarelieferanten sichergestellt.
Durch hochspezialisierte Mitarbeiter ist es möglich, ca. 95% der Probleme im IT Bereich zu lösen.
In den nachfolgenden Kapiteln werden die Problemfälle im Bereich „Zentralisierte und modulare
Business Intelligence Infrastruktur und Plattform“ definiert.
Als Big Picture gilt folgender Prozess:
Kunde
UHD
First Level
Support
Betrieb
Second Level
Support
Entwickler/
Hersteller
Thirdlevel
Support
Abbildung 8.1: Support Prozess
_____________________________________________________________________________
127
_____________________________________________________________________________
8.1.1
First Level Support
Das User Help Desk (UHD) bildet den Single Point of Contact. Das heisst, dass für jegliche Art
von Problemen der Erstkontakt über den First Level Support geht. Hauptaufgabe ist das Erfassen
und Lösen von Userproblemen. Dabei werden einfache und wiederkehrende Probleme
selbstständig gelöst. Komplexere Probleme werden an den Second Level delegiert.
8.1.2
Second Level Support
Der Second Level Support besteht aus separaten Teams. Es gibt Teams für das Betriebssystem,
die Datenbank und die Applikation. Der Second Level Support bearbeitet diejenigen Tickets,
welche vom UHD nicht selbständig gelöst werden konnten.
8.1.3
Third Level Support
Der Third Level Support bildet die letzte Eskalationsstufe bei einem Problem. Er wird durch die
Entwickler, Engineerings Teams oder den Hersteller wahrgenommen.
8.2
Weiteres Vorgehen bei operativer Umsetzung
Für die operative Umsetzung der „Zentralisierte und modulare Business Intelligence Infrastruktur
und Plattform“, sind ausserdem noch folgende in dieser Arbeit nicht behandelte Punkte
durchzuführen.
8.2.1
Schulung
Bei einer Umsetzung dieses Konzeptes, müssen die Mitarbeiter der genannten Organisationen
vorgängig geschult werden. Sie werden dafür in 3 Kategorien eingeteilt, namentlich:



Serviceverantwortliche
Betrieb
Entwickler
8.2.1.1
Serviceverantwortliche
Bei IT Post sind die Serviceverantwortlichen direkte Ansprechpartner der Kunden. Sie betreuen
und beraten den Kunden in IT Fragen So versteht sich, dass die Serviceverantwortlichen
zwingend für die neue Plattform zu schulen sind. In erster Linie soll das Verständnis der
Architektur und der technischen Möglichkeiten geschult werden, nicht jedoch die technischen
Details.
_____________________________________________________________________________
128
_____________________________________________________________________________
8.2.1.2
Betrieb
8.2.1.3
Entwickler und BI Admin
8.2.2
Service
Die Schulung der Betriebsorganisationen der IT Post umfasst in erster Linie die Fragestellungen
der Fehlerbehebung respektive das Wissen zu erlangen für die Wiederaufnahme des Services.
Dafür muss auf die Architektur und im speziellen auf die neu eingeführten Technologien
eingegangen werden.
Bei den Entwicklern und dem BI Admin liegt der Schwerpunkt der Schulung auf dem Umgang mit
Oracle Data Integrator. Da Oracle Data Integrator umfangreiche Funktionalitäten bietet, empfiehlt
sich eine externe Schulung der einzelnen Mitarbeiter.
In Zusammenarbeit mit der Abteilung IT Services (IT4) muss ein Service erstellt werden.
Desweiteren muss die Abteilung IT4 die Preisgestaltung des Services vornehmen.
8.2.3
Marketing
Der Service respektive die neue Plattform muss schlussendlich auch publik gemacht werden. Der
neue Service muss an den Leitungsmeetings und den Kundenbetreuer vorgestellt werden.
Zusätzlich ist es Sinnvoll ein Factsheet zu erstellen, welches dem Kunden bei der Beratung
abgegeben werden kann.
8.2.4
Wirtschaftlichkeit
Für die Wirtschaftlichkeit wurden lediglich die Lizenz- und Wartungskosten berücksichtigt. Eine
Vollkostenrechnung, respektive Wirtschaftlichkeitsrechnung ist noch ausstehend und müsste
noch erstellt werden.
In dieser werden Einheitspreise für die Weiterverrechnung kalkuliert sowie der Return of
Investment (ROI) berechnet. Anschliessend müsste diese der Abteilung Finanzen zur Prüfung
vorgelegt werden.
8.3
Interview zur Lösung
Zu Beginn dieser Arbeit wurden Interviews mit verschiedenen Schlüsselpersonen durchgeführt.
Um sicher zu stellen, dass die konzipierte Lösung auch den Anforderungen entspricht, wurde
ihnen das Konzept zur Begutachtung vorab zur Verfügung gestellt. Allfällige Wünsche und
Anregungen können im Falle einer produktiven Umsetzung des Projektes in einen späteren
Release sogleich mit einfliessen.
_____________________________________________________________________________
129
_____________________________________________________________________________
8.3.1
Feedback der Interviewpartner
Hier folgt eine Zusammenfassung mit dem Feedback der Interviewpartner.
Feedback Martin Schwab – Chefarchitekt Entwicklung IT Post:
„IT Post hat mit der „Zentralisierten und modularen BI Plattform und Infrastruktur“ eine Lösung zur
Hand, um aktuelle und absehbare Problematiken im Zusammenhang mit ReportingAnforderungen auf OLTP-Systeme rasch und professionell zu lösen.“
Feedback Reto Pestoni – Architekt Integration und SOA IT Post:
„Durch das Einführen der vorgeschlagenen Architektur könnte in Zukunft die Umsetzungszeit von
Datenintegrationen wesentlich reduziert und gleichzeitig die Servicequalität erhöht werden. Im
SOA Umfeld (Webservice Datenquellen) werden vermehrt Real Time Informationen benötigt, was
uns mit diesem Konzept zur Verfügung stehen würde.“
Feedback Dr. phil. Andreas Mannhart – Facharchitekt Business Intelligence IT Post:
„Als Facharchitekt BI unterstütze ich die Initiative der Datenbankspezialisten D.Massimi und
P.Brändle, die im Rahmen einer Masterarbeit an der Berner Fachhochschule ein bereichs- oder
gar postweites ODS-System aufbauen möchten, sehr. Ein solches System könnte den Aufbau
verschiedenster Data Warehouses stark beschleunigen und damit sowohl wertvolle Informationen
für die Bereiche der Schweizerischen Post als auch anspruchsvolle Projekte für IT generieren.
Für eine bereichs- oder postweite Verbreitung erachte ich es jedoch als unabdingbar, in der
Konzernleitung oder im Top-Management eines Bereichs nach einem „Götti“ zu suchen.
Andernfalls könnte es leicht sein, dass das Projekt nicht die gebührende Beachtung findet. Ich
wünsche den beiden Studierenden einen guten Abschluss ihrer Arbeit und werde mir das
Zielsystem sobald als möglich vorführen lassen.“
_____________________________________________________________________________
130
_____________________________________________________________________________
9
Projektabschlussbericht
Zu guter Letzt soll an dieser Stelle der Master Thesis gemäss der Hermes Phase ein
Projektabschlussbericht verfasst werden.
9.1
Allgemeines
Die Projektabschlussbeurteilung bietet Platz für die Erwähnung ergänzender Massnahmen und
die Auswertung der Erfahrungen. Es ist ein Soll / Ist-Vergleich der sachlichen, terminlichen und
finanziellen Projekt- und Vorgehensziele. Die Lehren und Erfahrungen aus dem Projekt werden
dokumentiert und können auf diese Weise für zukünftige Projekte genutzt werden.
9.1.1
Projektverlauf
Das Projekt wurde mit dem Projektantrag gestartet.
Danach folgten die Phasen:
 Voranalyse
 Konzept
 Realisierung
 Einführung
 Abschluss
In diesen Phasen wurden folgende Arbeiten durchgeführt.
Phase
Voranalyse
Konzept
Realisierung
Einführung
Abschluss
Ergebnisse














Pflichtenheft
Erhebung IST-Zustandes
Anforderungskatalog Business und Technologie
 Überprüfung der heutigen BI Positionierung und Evaluierung
neuer Tools
 Interviews
 Definieren von Use Cases
Voranalysebericht
Lösungsvarianten mit Empfehlung
Definition Ziel-Architektur
Definition BI Plattform (Modul, Standards)
Konzeptbericht
Aufbau BI Plattform
Durchführung PoC
Betriebskonzept
Supportprozesse
Schulung
Projektabschlussbericht
Jede dieser Phasen wurde durch einen Abschlussbericht abgeschlossen.
Während der ganzen Projektzeit trafen wir regelmässig unseren Projektbetreuer, um den
aktuellen Stand der Arbeiten sowie die weiteren Vorgehensweisen zu besprechen. Während den
Phasen Voranalyse, Konzept und Realisierung gab es jeweils ein Treffen mit dem Experten.
_____________________________________________________________________________
131
_____________________________________________________________________________
9.1.2
Ziel
9.1.3
Analyse und Beurteilung der Ziele und Lösungen
Das Ziel der Projektarbeit war der Aufbau einer zentralen Plattform zur Entlastung der operativen
Systeme sowie der Bildung einer Basis für ein bereichsübergreifendes DWH. Diese Plattform soll
modular und zukunftsorientiert sein. Zusätzlich wurden auch Definitionen und Vorgehensweisen
zur Anbindung zukünftiger Quellsysteme erarbeitet.
Die definierten Ziele konnten erreicht werden. Es wurde eine Plattform gebaut, welche die von
den Interviewpartnern geforderten Ansprüche erfüllt. Zusätzlich deckt die Plattform auch die
Anforderungen im Bereich Hochverfügbarkeit und Skalierbarkeit ab. Sicherheits- und
Datenschutzanforderungen konnten durch Prozesse, User- und Rollenkonzepte ebenfalls
abgedeckt werden.
Durch das Proof of Concept konnte die Plattform auf ihr Tauglichkeit geprüft und es konnten
bereits erste Erfahrungen gesammelt werden.
Da die Wahl des ETL / ELT Tools gewissen firmeninternen Kriterien unterliegt, wie zum Beispiel
aktuelle Unternehmenslizenzen, BI Strategie, u.v.a. kann es bei einem produktiven Einsatz der
Lösung zu Abweichungen im Bereich der eingesetzten ETL / ELT Software für die Überführung
ins DWH kommen. Allerdings stellt dies für die Plattform – dank dem modularen Aufbau - kein
Problem dar.
9.1.4
Mittelbedarf
9.1.5
Termineinhaltung
9.1.6
Wirtschaftlichkeit
Für die Projektarbeit wurde kein Budget gesprochen, weil das Projekt Teil einer Master Thesis ist
und die Mitarbeiter für die erbrachten Leistungen nicht honoriert wurden. Somit entfällt eine
Beurteilung der Kosteneinhaltung. Für den Aufbau des Proof of Concept konnte auf virtuelle
Maschinen zurückgegriffen werden, die uns für eine kurze Zeit zur Verfügung gestellt wurden.
weshalb es diesbezüglich auch zu keiner Kostenverrechnung kam.
Die im Projektplan vorgesehenen Endtermine der Projektphasen konnten eingehalten werden.
Ausnahme bildete das Proof of Concept, das entgegen den Erwartungen mehr Zeit in Anspruch
nahm. Mit einem erhöhten Effort konnte dies jedoch wieder kompensiert werden.
Es wurde keine Wirtschaftlichkeitsrechnung erstellt. Der Fokus lag hauptsächlich auf der
Funktionalität und Machbarkeit des Projekts. Als einzige kommerzielle Aspekte sind die Lizenzund Wartungskosten eingeflossen.
Vor einer allfälligen Einführung ist zwingend eine Wirtschaftlichkeitsrechnung seitens des
Managements vorzunehmen. Dabei wird ersichtlich wie lange der ROI dauert. Zudem können
erst mit der Wirtschaftlichkeitsrechnung konkrete Aussagen über die Kosten des Services
gemacht werden.
_____________________________________________________________________________
132
_____________________________________________________________________________
9.1.7
Konsequenzen
Bei einer produktiven Einführung wären die Entwickler mehr einzubeziehen, als dies in dieser
Master Thesis möglich war. Bei der Zusammenführung der Datenquellen in den ODS können die
benötigten Tabellen relativ einfach identifiziert und überführt werden. Bei der Überführung der
benötigten PL/SQL Packages werden jedoch viele nicht benötigte Funktionen und Prozeduren
mit übernommen. Dies verschärft sich, indem in PL/SQL Packages wiederum Bestandteile
anderer teilweise Schema übergreifenden PL/SQL Packages aufgerufen werden. Für einen
produktiven Einsatz wären diese erheblich zu entflechten.
Für die Überführung der Daten ins DWH muss ein ETL Tool definiert werden. Dies ist abhängig
von den Entwicklungen bei der Schweizerischen Post. Die Wahl im PoC den ODI zu verwenden
basierte darauf, erste Erfahrungen mit einem potenziellen Nachfolgeprodukt für den bereits
eingesetzten Oracle Warehouse Builder sammeln zu können. Hinzu kommt, dass mit der kürzlich
abgeschlossenen Unternehmenslizenz der ODI bereits enthalten ist.
Zusätzlich bedarf es einer Schulung der betroffenen Abteilungen und ihrer verantwortlichen
Personen. [siehe Kapitel 8.2.1 Schulung]
Bevor man eine solche Plattform aufbaut, ist eine ausführliche Liste mit den zu übernehmenden
Daten resp. Services zu erstellen. Damit kann die Plattform von Anfang an angemessen
dimensioniert werden und muss nicht laufend skaliert werden.
9.1.8
Antrag
Als nächstes wird diese Arbeit als Vorschlag für den Aufbau einer solchen Plattform in das
Unternehmen einfliessen. Dort muss dann das weitere Vorgehen definiert und entsprechendes
Budget gesprochen werden.
_____________________________________________________________________________
133
_____________________________________________________________________________
10
Anhang
Titel
Themeneingabe
Dokument
Themeneingabe
Master Thesis.PDF
Interview
Martin Schwab
Interview_Martin_Sc
hwab.pdf
Interview
Reto Pestoni
Interview_Reto_Pest
oni.pdf
Interview
Andreas Mannhart
Interview_Andreas_
Mannhart.pdf
Interview
Aldo Derungs
Interview_Aldo_Deru
ngs.pdf
Interview
Roger Schindler
Interview_Roger_Sc
hindler.pdf
Semesterarbeit CAS BI 01
Real Time und Near Real Time Data Integration
von D.Massimi und P.Brändle
Semesterarbeit CAS
BI01.pdf
_____________________________________________________________________________
134
Herunterladen