Otto-von-Guericke-Universität Magdeburg 1 Gamal Kassem
44
DB-AdministrationDB-Administration
Otto-von-Guericke-Universität Magdeburg 2 Gamal Kassem
Integration Operationen, Anfragesprache Katalog Benutzersichten Konsistenzüberwachung Datenschutz Transaktionen Synchronisation des Mehrbenutzerbetriebs Datensicherheit Oracle biete alles Wie macht das SAP
Anforderungen an DBMSAnforderungen an DBMS
Otto-von-Guericke-Universität Magdeburg 3 Gamal Kassem
Datenbank-R/3-KommunikationDatenbank-R/3-Kommunikation
R/3 applicaton
server
Database server
R/3 Work processR/3 Work process
R/3 Work process
Listener
ShadowShadow
Shadow
Net8 TCP/IP
R/3 Work process
Net8 IPC
Shadow
Otto-von-Guericke-Universität Magdeburg 4 Gamal Kassem
Überblick: Oracle ArchitekturÜberblick: Oracle Architektur
SM
ON
PM
ON
CK
PT
AR
CH
LG
WR
DB
WR
Sha
dow
Sha
dow
Sh a
dowListener Process
Redo log buffer
Database buffer Pool
Shared Pool
SGA
Mem
ory
Are
a
Database files profile Control files Data filescOnline redolog
files Offline redo log files
Processes
Otto-von-Guericke-Universität Magdeburg 5 Gamal Kassem
Schreiben der Data und Log Schreiben der Data und Log filesfiles
SGA
Database buffer pool
Redo log buffer
Profile
Control files
Data files
Online redo log files
Offline redo log files
CKPT
DBWR
LGWR
ARCH
(saparch)
Otto-von-Guericke-Universität Magdeburg 6 Gamal Kassem
Oracle-SpeicherstrukturenOracle-Speicherstrukturen
Otto-von-Guericke-Universität Magdeburg 7 Gamal Kassem
Tablespace-KonzeptTablespace-Konzept
Steuerung und Kontrolle der Speicherbelegung Speicherallokation über mehrere Plattenlaufwerke Strukturierung der DB nach konzeptionellen
Geschichtspunkten Optimierung nach physischen Gesichtspunkten Steuerung der Verfügbarkeit Durchführung partieller Backups
Otto-von-Guericke-Universität Magdeburg 8 Gamal Kassem
Tablespace-KonzeptTablespace-Konzept
Wichtige Objektsparameter:
- Next - MAXEXTENT - UNLIMITED
Otto-von-Guericke-Universität Magdeburg 9 Gamal Kassem
NamenskonventionNamenskonvention
Name eines Tabelspaces besteht aus– Prefix: PSAP– Abkürzung: <TS_Name>– Erweiterung: D (Data) oder I (Index)
Otto-von-Guericke-Universität Magdeburg 10 Gamal Kassem
SAP R/3 – TablespacesSAP R/3 – Tablespaces
Prefix Tablespace name Ext. Meaning Used by
SYSTEM Oracle DDIC Oracle RDBMS
PSAP ROLL Rollback segments Oracle RDBMS
PSAP TEMP Sort processes Oracle RDBMS
PSAP EL<Release> D or I Development environment loads R/3 Basis
PSAP ES<Release> D or I Development environment sources R/3 Basis
PSAP LOAD D or I Screen and report loads (ABAP) R/3 Basis
PSAP SOURCE D or I Screen and report sources (ABAP) R/3 Basis
PSAP DDIC D or I ABAP Dictionary R/3 Basis
PSAP PROT D or I Log-like tables (for example, spool) R/3 Applications
PSAP CLU D or I Cluster tables R/3 Applications
PSAP POOL D or I Pool tables (for example, ATAB) R/3 Applications
PSAP STAB D or I Master data and transparent tables R/3 Applications
PSAP BTAB D or I Transaction data, transparent tables R/3 Applications
PSAP DOCU D or I Documentation, SAPscript, SAPfind R/3 Applications
PSAP USER1 D or I Customer tables R/3 Applications
Otto-von-Guericke-Universität Magdeburg 11 Gamal Kassem
FragmentierungsartenFragmentierungsarten
Interne Fragmentierung– Beim Löschen eines Datensatzes einer Tabelle
entstehen sogenannte gaps (freie Speicherplätze) innerhalb des entsprechenden Oracle-Blocks.
– Durch die Durchführung von Reorganisation kann Oracle diese wiederbenutzen
Externe Fragmentierung– Beim Löschen von tablespace-Objekten (z.B. Tabelle)
werden die dazugehörenden Extents freigegeben– Neues EXTENT „NEXT-Extent“ werden das
freigegebenen Extent „besetzen“ wenn es gleich groß oder kleiner ist.
» Space critical object
– Reorganisation
Otto-von-Guericke-Universität Magdeburg 12 Gamal Kassem
Analyse der FragmentierungAnalyse der Fragmentierung(DB24)(DB24)
Otto-von-Guericke-Universität Magdeburg 13 Gamal Kassem
Sapdba –checkSapdba –check
Das Tool sapdba mit der Option „-check“ überprüft:
Die Extets von Tabellen und Indizen Die Datenbank-Konsistenz Fehler-Nachrichten Das DB-Parameter „init<SID>.ora“ Datenbankprobleme bezüglich der R/3-
Umgebung
Otto-von-Guericke-Universität Magdeburg 14 Gamal Kassem
Erweiterung von TablespaceErweiterung von Tablespace
Mit Hilfe von sapdba kann ein Tablespace durch Zufügung von neuen data file oder „Resizing“ (Vergrößern) der Data file erweitert werden.
Otto-von-Guericke-Universität Magdeburg 15 Gamal Kassem
GrößenkategorieGrößenkategorie der SAP- der SAP-DatenbankobjekteDatenbankobjekte
Otto-von-Guericke-Universität Magdeburg 16 Gamal Kassem
Sapdba –nextSapdba –next
26214401310720655360
327680163840
81920409602048010240256064016040
Beispiel: sapdba –next
Größe der Tabelle: 800 MB
10 %: 80000 KB
Gegenwärtigen NEXT: 10240 KB
NEXT-Kandidat: 80000 KB
TGORA in KB
nächste kleinerer WERT
nächste größerer WERT81920
Gegenwärtiges NEXT
NEXT-Kandidat
Neue Wert für NEXT= 81920
Otto-von-Guericke-Universität Magdeburg 17 Gamal Kassem
Sapdba –nextSapdba –next
Das sapdba mit Option –next berechnet die Größe des NEXT-Parameter eines SAP-Datenbankobjektes anhand folgender Algorithmen;
Allokierter Speicher des Objktes wird durch 10 devidiert. Dieser Wert ( auch als NEXT-Kandidat bezeichnet ) wird mit dem
gegenwärtigen Next des Objektes verglichen. Wenn der gegenwärtigen Next größer ist als der als NEXT-Kandidat,
wird keine Änderung an die Größe von NEXT vorgenommen. Wenn aber der gegenwärtige NEXT kleiner als der NEXT-Kandidat ist
wird die Größe von NEXT geändert– Der nächste kleinere WERT auf TGORA bzw. IGORA wird übernommen,
wenn die Differenz zwischen dem NEXT-Kandidat und dem nächsten kleineren Wert auf TGORA bzw. IGORA kleiner als 5 KB ist, ansonsten wird der nächste größere Wert auf TGORA bzw. IGORA übernommen.
Otto-von-Guericke-Universität Magdeburg 18 Gamal Kassem
Optimierung von SQL-Optimierung von SQL-AnweisungenAnweisungen
Optimierung der SQL-Anweisung geht über die folgende Schritte;– Analyse– Identifizierung– Optimierung von
» Sekundärindizes
und / oder » SQL-Anweisung im ABAP-Programm
Otto-von-Guericke-Universität Magdeburg 19 Gamal Kassem
Auswirkung der teueren SQL-Auswirkung der teueren SQL-Anweisungen auf das Anweisungen auf das GesamtsystemGesamtsystem
CPU-Auslastung und hohe Schreib/Lese-Last
Blockierung die SAP-Workprozesse für lange Zeit
Durch das Lesen von vielen Datenblöcken werden Daten anderer SQL-Anweisungen in der Datenpuffer verdrängt
Otto-von-Guericke-Universität Magdeburg 20 Gamal Kassem
Analyse der „Shared SQL Area“Analyse der „Shared SQL Area“(ST04)(ST04)
Otto-von-Guericke-Universität Magdeburg 21 Gamal Kassem
Felder der Shared SQL AreaFelder der Shared SQL Area(ST04)(ST04)
Total Execution: Anzahl der Ausführungen der Anweisungen seit Datenbankstart
Disk Reads: Anzahl der physischen Lesezugriffe (Blocks) aus der Platte, die für alle Ausführungen der Anweisung benötigt wurden
Reads/Execution: Anzahl der physischen Lesezugriffe, die im Durchschnitt per Ausführung einer Anweisung benötigt wurden
Buffer Gets: Anzahl der logischen Zugriffe, die für alle Ausführungen der Anweisung benötigt wurden
Gets/Execution: Anzahl der logischen Lesezugriffe, die im Durchschnitt per Ausführung einer Anweisung benötigt wurden
Otto-von-Guericke-Universität Magdeburg 22 Gamal Kassem
Identifizierung der teueren SQL-Identifizierung der teueren SQL-AnweisungenAnweisungen
Anweisungen, die mehr als 5% der gesamten logischen oder 2% physischen Zugriffe der Datenbank ausmachen
Anweisungen mit hoher Anzahl von logischen bzw. physischen Lesezugriffen
Anweisungen mit hoher Anzahl von Puffer Gets pro Record– Ist der Ausführungsplan der Anweisung geeignet ?
Anweisungen mit hoher Anzahl von Records pro Ausführung– Kann man die ABAP-Anweisung optimieren?
Otto-von-Guericke-Universität Magdeburg 23 Gamal Kassem
Optimierer-StatistikenOptimierer-Statistiken
Die Entscheidung über den benutzten Zugriffspfad zu einer Tabelle für eine SQL-Anweisung heißt „Ausführungsplan“ und wird von dem so genannten Datenbankoptimierer ermittelt
Um den Ausführungsplan zu erstellen („Parsen“) braucht der Datenbankoptimierer Informationen über die Tabelle (Statistiken)
Für die Erstellung der Statistiken führt man die so genannte „Zwei-Phasen-Strategie“
Otto-von-Guericke-Universität Magdeburg 24 Gamal Kassem
Zwei-Phasen-StrategieZwei-Phasen-Strategie
-checkopt
sapdba
Steuerungstabelle
DBSTATC
-checkoptsapdba
Sapdba – checkopt psap% Sapdba – analyze DBSTATCO
Phase I Phase II
Otto-von-Guericke-Universität Magdeburg 25 Gamal Kassem
Übung 5 – DatenbanksystemÜbung 5 – Datenbanksystem
Starten Sie DB02– Welche drei Tablespaces sind am größten?– Welche drei Tablespaces sind am weitesten gefüllt?– Welche Parameter gibt es zu PSAPUSER1I?
» Erklären Sie die Bedeutung der Parameter
Welche Aktionen zeigt der Datenbankeinplanungskalender DB13?
Welche Fehlermeldungen gibt das DB-Check-Protokoll aus?