Online-Datenbankreorganisation¤rz... · Datenvolumen. Auf einer HP J6000 440 Mhz werden 3-4...
Transcript of Online-Datenbankreorganisation¤rz... · Datenvolumen. Auf einer HP J6000 440 Mhz werden 3-4...
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter1
†‡
Online-Datenbankreorganisation
mit SAP brspace 6.40
Jochen DieterLeiter Datenbanken
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter2
†‡
Festo, die Unternehmensgruppe
Festo AG & Co. KGPneumatic und DidacticÜber 1.2 Mrd € Umsatz• 10.050 Mitarbeiter • 52 Gesellschaften• 16.400 Katalog-Produkte• Präsenz in 176 LändernMehr als 1.000 Fachberater & Projektingenieure weltweit
BeckControl technology
Investion GmbH -Marketing Werbung Messen
Festo Lernzentrum, Saarpraxisorientierte Seminare und Schulungen
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter3
†‡
Produktfelder
Motion• Antriebe• Ventile• Ventilinseln• Druckluftaufbereitung
Control• Steuerungstechnik• Positioniersysteme und
elektrische Antriebe• Sensoren• neue Geschäftsfelder
z.B. Teilesortierung und Prüfung
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter4
†‡
Festo IT Services - http://www.fit-services.de/
Basic Hosting
Bereitstellung Rechenzentrumsinfrastruktur
Überwachung Betriebssystem, Datenbank und SAP Laufzeitumgebung
Xtended Hosting
Alle Leistungen aus Basic Hosting
Umfassender mySap.com Anwendungsbetrieb inklusive Systemerweiterungen
Kompetenzen
Zertifizierter SAP Hosting Partner
Zertifiziertes SAP Customer Competence Center
10 Jahre Erfahrung im Betrieb von unternehmenskritischen SAP R/3 Architekturen
Betriebsführung gemäß ITIL-Standard
7*24h Support und weltweite Informationsverfügbarkeit
Inhouse-Spezialisten für alle Administrationsdisziplinen
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter5
†‡
Ablauf
Warum reorganisieren wir bei Festo?
Voraussetzungen
Online Indexreorganisation
Online Tabellenreorganisation
Erfahrung mit brspace
Erfahrung mit brspace – gesamten Tablespace umsetzen
Zusammenfassung
Wunschliste / Fragen
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter6
†‡
Warum reorganisieren wir bei Festo?
Neuaufbau von denormalisierten Indexen (Einseitiges Wachstum, Lücken). Performanceverbesserung z.B. Bei Index Scan.
Bei dauerhaft reduziertem Datenbestand einer Tabelle den Speicherplatz für andere Objekte zurückgewinnen.
Weiterer Nebeneffekt ist die verbesserte Hitrate in Data Buffer, da die Blöcke dichter mit Informationen besetzt sind.
Umbau auf locally managed Tablespaces.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter7
†‡
Voraussetzungen
Durch die Reorganisation der Objekte entsteht eine Fragmentierung des Speicherplatzes.
Bei dictionary managed Tablespaces kann dann nicht mehr der gesamte Tablespace genutzt werden.
Hingegen bei locally managed Tablespaces ist weiterhin eine nahezu 100 % Nutzung des Tablespaces möglich. Wir bevorzugen locally managed Tablespaces uniform.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter8
†‡
Online Indexreorganisation
Ab Oracle-Version 8i ist eine online Indexreorganisation möglich.
Alter Index indexname rebuild online tablespace tablespace_namestorage (initial 64k);
Wenn die Operation in locally managed Tablespaces ausgeführt wird, genügt obiges Kommando. Der Tablespace sollte immer angegeben werden, da sonst der Index in Default-Tablespace des ausführenden Users angelegt wird. Die Angabe des initial-Extents bewirkt, dass der Index möglichst klein angelegt wird.
Mögliche Nutzung: Dauerhafte Überwachung der Indexe auf ihre aktuelle Größe im Vergleich zu ihrer optimalen Größe (Satzanzahl, Schlüssellänge, Storageparameter)==> Bei Bedarf automatischer Rebuild.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter9
†‡
Online Tabellenreorganisation – Einsparung eine Illusion ?!
PCT_FREE
PCT_USED
Blo
ckfü
llung
nac
h Re
orga
nisa
tion
Reorganisation
Einsparung 20 – 30 %
„Freirütteln“durch Betrieb
Blo
ckfü
llung
en b
ei T
abel
len
mit
Inse
rt- u
nd D
elet
e-O
pera
tion
en
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter10
†‡
Online Tabellenreorganisation – Bisherige Möglichkeiten
Alter Table move- Rebuild Index notwendig- Keine long-Felder unterstützt- Table nicht verfügbar
Export/Import- Table nicht verfügbar- Daten zeitweise nicht in der Datenbank (Point of no Return)
Produkte von Quest LiveReorg, BMC Space Expert ...- Teuer- Tabellen mit long-Feldern können online reorganisiert werden.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter11
†‡
Online Tabellenreorganisation – Oracle 9i und BRSPACE
Oracle 9i bietet mit DBMS_REDEFINITION
- bietet online-Tablereorg für Tabellen ohne long-Felder- Aufwändiges und fehleranfälliges Handling
BRSPACE 6.40
- setzt auf 9i auf und macht online Reorganisation mit DBMS_REDEFINITION handhabbar.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter12
†‡
Erfahrung mit brspace
Seit Dezember '03 im Test auf Entwicklungs- und Konsolidierungssystemen
Probleme wurden bisher von SAP schnell behoben.Wie z.B.: Tablespaceeingabe, tabart
Bestehendes Oracle-Problem ORA-31600 (online Reorg mit vielen Tabellen)BR0301E SQL error -31600 at location ddl_tab_create-64ORA-31600: invalid input value 100000001 for parameter HANDLE in function SET_FILTERORA-06512: at "SYS.DBMS_SYS_ERROR", line 105ORA-06512: at "SYS.DBMS_METADATA_INT", line 1207ORA-06512: at "SYS.DBMS_METADATA_INT", line 3641ORA-06512: at "SYS.DBMS_METADATA", line 670ORA-06512: at "SYS.DBMS_METADATA", line 583ORA-06512: at "SYS.DBMS_METADATA", line 1282ORA-06512: at line 1BR0280I BRSPACE time stamp: 2003-12-04 23.41.36BR1119E Creating DDL statements for SAPR3.PLFT failedBR0280I BRSPACE time stamp: 2003-12-04 23.41.36BR1106E Reorganization of table SAPR3.PLFT failed
Oracle Bug No. 3138734 Fixed in Product Version 10.1.0.2SAP Note Number 692745 (temporäre Lösung: Reorg der betroffenen Tabellen wiederholen)
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter13
†‡
Erfahrung mit brspace
Erfahrung mit DBMS_REDEFINITION:
Während des Laufes von Redefinition kann die Struktur der Source-Tabelle verändert werden (add column) und Werte in das neue Feld eingefügt werden.Nach dem Abschluss von REDEFINITION ist das neue Feld mit Daten wieder verschwunden.
tbreorg mit -p 2 (2 parallel Threads) führt zu einem Coredump und Redefinition bricht unsauber ab. Wird von SAP bearbeitet.
Parallelität nur bei Mehr-Prozessormaschinen (CPUs für Produktion freihalten) oder wenn keine Produktion parallel läuft empfehlenswert.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter14
†‡
Erfahrung mit brspace - gesamten Tablespace umsetzen
Aufbau je eines Hilfstablespaces für Tabellen und Indexe.
Entleeren des orginalen Tabellen-Tablespaces:
brspace -u sapr3/<pwd> -c force -f tbreorg -d yes -i psapreoi -n psapreod -o sapr3 -s psapbtabd -t \*
-c force : unattended mode for automatic scripting-i : Ziel-Indextablespace-n : Ziel-Tabellentablespace-o : Tabellenowner-s : Source-Tabellentablespace-t : Auswahl der zu bearbeitenden Tabellen ( * muss in UNIX maskiert werden)
Es werden alle online-reorganisationsfähigen Tabellen des Owner sapr3 aus Tablespace PSAPBTABD in PSAPREOD transportiert und die Indexe in Tablespace PSAPREOI angelegt.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter15
†‡
Erfahrung mit brspace - gesamten Tablespace umsetzen
Protokoll auf ORA-31600 Fehler prüfen und Kommando nochmals starten.
Laufzeit wird bestimmt durch die Anzahl der Tabellen (z.B.: PSAPPOOLD ~ 18000) und das Datenvolumen. Auf einer HP J6000 440 Mhz werden 3-4 Sekunden benötigt um eine leere Tabelle zu reorganisieren. Die Reorganisation ist sehr CPU intensiv. Wir fahren daher nur mit einem Prozess. (SAP besteht „nur“ aus leeren Tabellen.)
Nun Export der restlichen Tabellen. (SAP ist gestoppt!)
brspace -u sapr3/<pwd> -f tbexport -m no -z 4000 -o sapr3 -s psapbtabd -t \* -u /oracle/I04/EXPORT
-m : no compress !!-z : Exportfilegröße in MB-s : Tablespace aus dem exportiert werden soll-t : zu exportierende Tabellen-u : Pfad für Exportfiles
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter16
†‡
Erfahrung mit brspace - gesamten Tablespace umsetzen
Evtl. DDL-Statements getrennt generieren um Storageparameter ändern zu könnenwie z.B. Tablespace, initial-Extents ...
Prüfen, ob im Source-Tabellentablespace noch Objekte enthalten sind, die nicht exportiert wurden. Wenn ja, dann entsprechend behandeln. Dann Tabellentablespace droppen. Indextablespace auf noch vorhandene Objekte prüfen und droppen.
Tablespaces in entsprechen Größe neu anlegen.
Import der exportierten Tabellen (Alle Exportfiles auflisten !):brspace -u sapr3/<pwd> -f tbimport -o sapr3 -x /oracle/I04/EXPORT/sdmvkgoo.edd/expdat.dmp-x /oracle/I04/EXPORT/sdmvkgoo.edd/expdat1.dmp-x /oracle/I04/EXPORT/sdmvkgoo.edd/expdat2.dmp
Wenn mit commit=yes (Default) importiert wird, dann ist der Ladelauf sehr langsam.1 Mio Sätze in einer Stunde unabhängig von der Satzlänge.(Export 35 Mio Sätze in 40 Minuten, Import im 35 Stunden)
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter17
†‡
Erfahrung mit brspace - gesamten Tablespace umsetzen
Besser importieren mit Commit = no:brspace -u sapr3/<pwd> -f tbimport -m no -o sapr3 -x /oracle/I04/EXPORT/sdmvkgoo.edd/expdat.dmp-x /oracle/I04/EXPORT/sdmvkgoo.edd/expdat1.dmp-x /oracle/I04/EXPORT/sdmvkgoo.edd/expdat2.dmp
-m : Commit no setzen
Nun kein Ausbremsen durch den LGWR, da nicht mehr nach jedem Satz die Loginformation auf Platte geschrieben werden muss. Laufzeit auf ca. 1/8 – 1/10 reduziert.Kein übermäßiger UNDO-Tablespace notwendig.
Rückführen der Tabellen ohne long-Columnsbrspace -u sapr3/<pwd> -c force -f tbreorg -d yes -i psapbtabi -n psapbtabd -o sapr3 -s psapreod -t \*
SAP-Hinweis 646681 - Reorganizing tables with BRSPACE -
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter18
†‡
Erfahrung mit brspace - gesamten Tablespace umsetzen
Wie kann beim Export-Import vermieden werden, dass zu einem Zeitpunkt nicht alle Daten in der Datenbank sind ?
Vorne beschriebener Weg:
Alternative:
Vorteil: Zu jeder Zeit sind alle Daten in der Datenbank und in kürzester Zeit(drop und rename notwendig) kann die Applikation im Notfall gestartet werden.
Nachteil:Längere Laufzeit da Import zweimal durchgeführt wird.
drop Tablespace create Tablespace ImportDaten nicht vollständig in DB
rename exported objectsExport DDL Export Data create objects in a different TablespaceImport Data
Export
drop Tablespace create Tablespace
rename imported objects create objects in the new Tablespace Import Datadrop renamed objects
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter19
†‡
Planung mit brspace – Einzelobjekte umsetzen
Nach der Umstellung auf locally managed Tablespaces werden die Tabellen ohne long-Columns regelmäßig auf Reorganisationswürdigkeit geprüft und dann mit brspace online unattended reorganisiert.
brspace -u sapr3/<pwd> -c force -f tbreorg -d yes -i psapbtabi -n psapbtabd -o sapr3 -s psapbtabd -t BSIS
Einzelaktionen: Tabelle in einen anderen Tablespace legen.
Damit die Reorganisationen funktionieren ist ein entsprechender Freiplatz in den Tablespaces notwendig. z.B. die Summe der Indexgrößen einer Tabelle muss im Indextablespace Platz finden.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter20
†‡
Zusammenfassung
tbreorg-Protokoll auf ORA-31600 Fehler prüfen und Kommando nochmals starten.
Laufzeit wird bestimmt durch die Anzahl der Tabellen (z.B.: PSAPPOOLD ~ 18000) und das Datenvolumen. Auf einer HP J6000 440 Mhz werden 3-4 Sekunden benötigt um eine leere Tabelle zu reorganisieren. Die Reorganisation ist sehr CPU intensiv.
Export mit -m no (kein Compress)
Prüfen, ob im Source-Tabellentablespace noch Objekte enthalten sind, die nicht exportiert wurden (Indexe, LOBS, Partitions). Dann den Tabellentablespace droppen.Indextablespace auf noch vorhandene Objekte prüfen.
Import von Tabellen mit long-Feldern mit -m no (kein Commit)
Brspace mit tbreorg ein sehr hilfreiches Tool.
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter21
†‡
Wunschliste / Fragen
Lösung für long-Felder:- Programm um Tabellen mit long-Feldern in der Datenbank umzusetzen (offline)
Vorteil: Die Daten sind immer in der Datenbank verfügbar. Die Reorganisation kannschnell abgebrochen werden und die Applikation kann wieder gestartetwerden.
- oder besser: schnelle Umstiegsmöglichkeit auf LOBs.
Möglichkeit initial-Extent bei Tabellenreorg durch Parameter zu setzen.
Wie wird verhindert, dass während der Tablereorg Strukturänderungen vorgenommen werden?
Repair-Funktion zum Aufräumen von unsauber abgebrochenen tbreorg-Operationen.
Bei parallem Betrieb + Reorganisation Performanceeinbruch wegen fehlender Statistiken?Was kann zeitnah getan werden?
DOAG 2004: Online-Datenbankreorganisation mit brspace Jochen Dieter22
†‡
Jochen Dieter
Festo AG & Co. KGAbt. IT-CDPlieningerstr. 5073760 Ostfildern-Scharnhausen