Komplexe Datenbank-Applikationen in der Praxis Claudia Merfeld München, 14. Juli 2008
Agenda SESAM/SQL-Server Systemarchitektur Beispiel einer Kundenapplikation Verfügbarkeitsanforderungen Maßnahmen für Desaster Recovery Monitoring und Performance Kontrolle Administration und Automatisierung Datensicherheit und Zugriffsschutz Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
SESAM/SQL-Server Relationales Datenbanksystem für BS2000/OSD-Systeme Verwendet SQL für Definition, Aufbau und Wartung von relationalen Datenbanken DML Betrieb SQL ist ausgerichtet am SQL-Standard 2003 Zugriff von beliebigen Plattformen (BS2000/OSD, Windows, Unix Systeme) auf den Database Handler Wesentliche Kunden in Deutschland und Europa: Banken, Versicherungen und Behörden Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
SESAM/SQL-Server Systemarchitektur TP-Monitor openUTM TIAM / Batch Anwendung ODBC/JDBC Clients APACHE/ PHP SQL Schnittstelle SESAM/SQL Database-Server … Datenbanken Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Aspekte der Systemarchitektur Multitask Betrieb des Database Handlers Multithread Verfahren 64Bit Main Storage Database Partitioned Tables Group Commit Verfahren Datenkomprimierung Online Data Definition und Utilities Modifikation von DBH-Parametern im laufenden Betrieb Schattendatenbankverfahren durch Replikate Verteilte Datenbanken in BS2000/OSD Rechnernetzen Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
HIPLEX Failover Cluster MOT-Projekt Kfz-Werkstätten Kfz-Werkstätten SX140 SX130 HIPLEX Failover Cluster Anwendungen Anwendungen BS2000/OSD BS2000/OSD Internet FC switch Heartbeat-connection Kfz-Werkstätten SRDF Link Behörden, Bürger, Kfz-Besitzer Entfernung 500 m Symmetrix Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Entscheidungskriterien für BS2000/OSD Höchste Verfügbarkeit, Sicherheit und Zuverlässigkeit Höchste Benutzeranzahl und Höchste Transaktionsraten Echtzeiterfassung aller Kfz-Testdaten Qualifizierte Dienstleistungen: Abstimmung des Konzepts Test der Failover-Szenarien „HA&DR-Konfigurationssteckbrief“ Winner of Project Excellence Award 2007 Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Kundenprojekt MOT Test: Fahrzeugprüfung analog zum deutschen TÜV Test Dezentral in zertifizierten Werkstätten Zentrale IT gestützte Erfassung aller durchgeführten MOT Tests Speicherung von Fahrzeugdaten Verwaltung von Werkstätten, Personal, Ausbildung und Abrechnung Data Mining für Regierung und Automobilfirmen Internet Applikation zur Abfrage von MOT Tests Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Architektur der Kundenapplikation Vehicle Test Station (Linux/Opera) Verwaltung (Windows PC) Internetabfrage Vehicle Test Station (Linux/Opera) Vehicle Test Station (Linux/Opera) Datamining (ODBC) Webserver, Firewall openUTM Applikation ODBC Applikation Fahrzeugdaten (ca.100.000 Änderungen pro Nacht) DBH DBH Batch SESAM/SQL DB DB Kopie BCV Spiegel Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Datenvolumen 30.000.000 Fahrzeuge, jährlicher MOT Test => 100.000 Tests pro Tag in 20.000 Werkstätten => 35.000.000 Tests pro Jahr => 4 Tests pro Sekunde, in Spitzenzeiten bis zu 50 Tests pro Sekunde Eine SESAM/SQL Datenbank mit 350 Basistabellen verteilt auf 120 Spaces (Dateien) Zugriff nur über Views, mehr als 1000 Views 1200 Integritätsbedinungen (Not NULL, Unique, Foreign Key, Check) 6 Tabellen mit jeweils mehr als 10 Mio. Sätzen größte Tabelle hat 100 Mio. Sätze 1 Partitioned Table ca. 200 GB Daten jährlicher Zuwachs ca. 50 GB Daten Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
UTM Applikation UTM Applikation mit 600 Funktionen davon 50 Funktionen für Tests übrige Funktionen für Administration UTM Applikation ist realisiert in 800 Cobol Programme für Datenzugriffe 1000 Cobol Programme für Funktionalität UTM Applikation umfasst 2500 SQL Statements, häufig Mehrfach-Joins (teilweise bis zu 20-fach Join) 400.000 Transaktionen pro Tag Nachts laufen 500 – 20.000 Batchjobs Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Anforderungen an Verfügbarkeit und Performance Verfügbarkeit 7 Tage pro Woche und 23 Stunden 50 Minuten pro Tag Recoveryzeit von maximal 5 Minuten Auf Antrag zweimal pro Jahr bis zu 8 stündige Auszeit für Software / Applikation Upgrade nur in der Nacht von Samstag auf Sonntag Antwortzeiten: < 30 sec inklusive Verbindungsaufbau über Modem bei 99% der Tests => Antwortzeit des Database Handler < 3 sec Zeitfenster für Batchprogramme (22:30 – 06:00 Uhr) Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Ausfallsicherheit durch Spiegelplatten und StandBy Rechner Applikation Data Mining StandBy Rechner Hauptrechner Hiplex Spiegelplatten Spiegelplatten Spiegel Kopie per “Clone” Spiegel Spiegel DB Spiegel Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Administrative Maßnahmen für ein Desaster Recovery Täglich werden “Clones” der Datenbank erzeugt Voraussetzung: Transaktionsfreier Zustand alle Datenbankpuffer müssen auf die Dateien geschrieben werden Clone wird durch Absplitten der Spiegelplatte erzeugt alles in 10 Minuten Ein Clone dient als Sicherung, wird zusätzlich noch auf Band gesichert Ein Clone wird als Datenbank von einem weiteren DBH bearbeitet für Data Mining Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Im Fall eines Desasters Platte wird vom Hauptrechner auf den Stand By Rechner umgeschaltet Database Handler wird auf dem Stand By Rechner gestartet Applikation wird auf dem Stand By Rechner gestartet Dauer: <= 5 Minuten Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Monitoring und Performance Kontrolle Monitoring des Datenbank Betriebs I/O Verhalten Laufzeiten von Statements,Transaktionen und Batchprogrammen Ressourcen Verbrauch des Database Handlers Parallelitätsprobleme (Deadlocks) Analyse und mögliche Maßnahmen: Online Modifikation von DBH Parametern Analyse und Optimierung von SQL Statements Änderungen in der Datendefinition (z.B. Definition eines Indexes) Verlagerung einer Tabelle auf einen anderen Space (Datei) Partitionierung von Tabellen Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Beispiel: Verlagerung einer Tabelle auf einen anderen Space Prozedur mit SQL Anweisungen erzeugen Test dieser Prozedur auf dem Testrechner mit Testdaten Laufzeitbestimmung auf dem Testrechner mit Kopie der Originaldaten Laufzeitoptimierung, Reduktion der notwendigen Auszeit Festlegung von notwendigen Backup Maßnahmen Antrag für notwendige Auszeit stellen Durchführung der Aktion in der Auszeit: Online Betrieb sperren SQL Anweisungen ausführen Online Betrieb wieder zulassen Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Beispiel: Erweiterung der Applikation Implementierung der Funktionalität Test der Funktion auf dem Testrechner mit Testdaten Test der Funktion auf dem Testrechner mit einer Kopie der Originaldaten Analyse der Statements auf dem Testrechner Laufzeit Ressourcenverbrauch Sperrkonfliktpotenzial Austausch der Applikation in einer Auszeit Neue Funktionalität im Online Betrieb Monitoring der Funktionalität Verhalten im Zusammenspiel mit anderen Funktionen Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Administration und Automatisierung SESAM/SQL Database Handler läuft permanent Nur für SESAM Software Upgrade beendet und neu gestartet Batchjobs werden automatisch zu einer bestimmten Zeit gestartet Monitoring des Betriebs ebenfalls im Batch mit automatischer Auswertung Automatisiertes Erzeugen der Clones Verwaltung der Backup Daten Pflege des Prozedurenwerks Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Datensicherheit und Zugriffsschutz Prinzip: Jeder hat nur Zugriff auf das, was er unbedingt benötigt Rollenkonzept für Zugriffe auf die Datenbank Definition von Benutzerrollen (z.B. Applikationsprogrammierer, DB-Administrator) Definition von Zugriffsrechten für jede Rolle in SESAM/SQL Rollenkonzept für Zugriffe auf BS2000 Kennungen Administration des Database Handlers von kleinem Personenkreis BS2000 Systemadministration ebenfalls von kleinem Personenkreis Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved
Erforderliche Qualifikationen für Aufgaben dieser Art Hochschulabschluß in Informatik oder vergleichbares Fach Systematische und zielorientierte Vorgehensweise Flexibilität Kreativität Teamfähigkeit Belastbarkeit Claudia Merfeld © Fujitsu Siemens Computers 2008 All rights reserved