Platten

Werbung
Backup und Recovery sehr
großer Datenbanken
Persönlicher Hintergrund
• Consultant bei Ingres und anschließend
ASK/Ingres
• Seit 1992 freiberuflicher Berater im Umfeld
Ingres
–
–
–
–
Performanceanalyse und Tuning
Remote DBA, DBA auf Zeit
Inhousetraining
Analyse/Begleitung/Durchführung von Projekten
• Kontakt: [email protected]
Übersicht
• Installation
• Mögliche Arten der Datenbanksicherung
– Vor-/Nachteile
• Darstellung der gewählten Möglichkeit
• Recovery der DB
Installation
• Bestehende Installation
– Rechner Intel basiert 4 CPU
– Platten HP EVA SAN System (17 TB)
– BS: RedHat Linux
– Datenbank ca. 5 TB (23 Datalokationen)
Sicherungsarten
• Sicherung mit BS Mitteln
• Sicherung mit Plattenspiegeln
• Sicherung mit Ingres Mitteln
– Unload DB
– Checkpoint DB / Tabelle(n)
• Online
• Offline
Checkpoint von Tabellen
• Möglichkeit Tabellen online zu sichern
• Recovery nur auf einem bestehenden
Datenbank Checkpoint
• Alle DDL Befehle machen ckp invalid
(danach sofort wieder neuen Tabellen Ckp)
Genereller Ablauf
Lesen 5TB
DB
DBMS /BS
Schreiben 600 GB
ckp
Schreiben
Schreiben
Schreiben
dmp
jnl
log
Performanceabschätzung
• Maximaler IO Durchsatz: 80 - 100 MB/sec
Ca 350 GB / Stunde
• 5TB lesen ca 14 Stunden
• CKP schreiben ca 2 Stunden
Online Checkpoint
Ablauf
•
•
•
•
•
Sperre die Datenbank
Setze einen Controll Lock
Schreibe SBACKUP log record
Veranlasse einen Consistency Point
Erlaube Datenbankzugriff (außer DDL)
Online Checkpoint
Ablauf
• Führe aus dem Checkpoint Template File
aus:
– für alle Lokationen Begin (B)
– je Lokation Prework (P) und Work (W)
– für alle Lokationen End (E)
• 7. Schreibe EBACKUP Log Record
• 8. Update Konfigurationsfile
• 9. Gebe Datenbank frei (auch DDL)
Checkpoint Template File
• $II_SYSTEM/ingres/files/cktmpl.def
• II_CKTMPL_FILE=<filename>
• Aufbau: <4 Buchstaben> Befehl
– Begin Pre-work Work End Initialize Finish
– Save Restore Journal Delete Check
– dUmp
– Disk Tape Every
– Database Table AllDB Raw Every
Checkpoint Template File
• Checkpoint Parameter
–
–
–
–
–
–
–
–
–
%A
%B
%C
%D
%E
%F
%G
%H
u.a.
Pfad für gesicherten File
Tabellen Filename (ohne Pfad)
Checkpoint Pfad
Pfadname der Datenlokation
Pfad für Datenfile (Tabelle)
Filename ckp File (ohne Pfad)
Anzahl der Datenfiles
Anzahl der Datenfiles in der Lokation
Checkpoint Template File
• Gültige Kombinationen Checkpoint
– B S [T,D,E] [T,D,E]
– P S [T,D,E] [T,D,E]
– W S [T,D,E] [T,D,E]
– E S [T,D,E] [T,D,E]
Realisation Schritt1
• Eigenes Skript, welches Sicherung mehrer
DB Files parallel durchführt
+ Sicherung erfolgt parallel
- Sicherung erfolgt je Lokation nacheinander
-> Zeitbedarf ca 35 – 40 Stunden
Ckp mit Option #cn
• Workingsektion des Template Files wird je
n Lokationen parallel ausgeführt
+ Sicherung erfolgt parallel
- Je Lokation ein Sicherungsthread
- Nach je n Lokationen Synchronisierung der
Threads
Realisation
• Sicherung wöchentlich Samstag
• Eigenes Skript, welches Sicherung parallel
durchführt
– WSDD: /bin/echo %D %C %F >>
/users/ingres/source/ckp/work/ckp_files_todo
– ESDD: /users/ingres/source/ckp/par_ckp
-> Zeitbedarf ca 18 - 20 Stunden
Verbesserungspotential
• Verbunden mit DB Design Änderung und
Änderung der Applikation
– Trennung von Historien- und Produktivdaten
• Verbunden mit Hard/Softwareinvestitionen
– Plattenspiegelung
-> BS Upgrade
-> Platten für 3. Spiegel
– Schnellerer I/O
-> CPU Upgrade / Plattenupgrade
Recovery
• Selbstgeschriebenes Programm
WRDD: /users/ingres/source/ckp/par_rollfwd %D %C %F
• Zeitbedarf: je nach Tag des Fehlers
Fragen
?
Herunterladen