Title, Topic

Datenbank Tuning in Oracle .doc

®
Page 1 of 2
[1] [2]
Faculty
Information Science
Discipline
Information Technology / Computer Science
Document category
Notes
University, School
HTL Villach
Additional information
1998
Responsible User
This text has been add by user odom262 on 2008-10-01. Disclaimer
Popularity
815  visits
Document length
~1.708  Words
~10.124  Chars
Rating
Networking ©




















More documents
Information Technology / Computer Science

Grundlagen der EDV, Raster und Vektordaten
Hausübung GEDV – Teil 2 Untersuchen sie verschiedene digitale Karten aus dem Internet im Hinblick auf Überlagerungen von Raster und Vektordaten. Projekt 1: google-maps Projekt 2: California Coa


Programmieren: PL, SQL und MFC
PL/SQL SQL.structured query language 4 GL – Sprache für relationale Datenbanken DELETE FROM Mitarbeiter WHERE abt_nr=30; Löscht alle Mitarbeiter der Abteilung 30 wie Server das macht bleibt verbor


System und Einsatzplanung, Windows im Netz
Windows im Netz Wiederholung Intel Prozessoren 8086/88 80286 80386/SX 386/486 Pentium Pentium 2 Datenformat 16 16 32 32 64 64 Datenbusbreite 16/8 16 16


Adat Datenmodellierung Grundlagen
Datenmodellierung ´1. Eine Miniwelt ist abzugrenzen, welche in der Datenbank abgebildet werden soll !) Miniwelt nicht zu weit fassen -small but succsesfull- !) Klare Kriterien festlegen *) Real

Swap your documents
Benutzerdefinierte Suche

Welche Vorteile hat Oracle gegenüber anderen Datenbanken

 

·        DB Server ist für unterschiedliche Rechnerstrukturen optimiert

·        Datensätze werden ohne Eskalationsverfahren gesperrt à Minimierung von Deadlock Häufigkeiten

·        Lesen ohne Sperren für konsistente Leseoperationen bei gleichzeitig beliebigen Änderungsoperationen

·        Fast Commit zur Verminderung der physischen Plattenzugriffe

·        Verteilte Datenstrukturen auf beliebig viele Platten

·        Frei Konfigurierbarer DB-Cache

·        SQL Optimierer zur Ermittlung der Optimalen Zugriffspfade zu den Daten

Tunen der Oracle Datenbank

Wichtig beim Tunen ist, daß Schwachstellen erkannt werden. Das hinzufügen von Indices kann z.B. die Antwortzeit um den Faktor 10 bis 1000 verbessern. Im Gegenteil dazu kann z.B. die Erhöhung des DB-Cache in manchen Fällen nur zu Verbesserungen von 1 % führen.

Was kann man Tunen:

1.      Die Datenstruktur (logische Struktur der Objekte, Index, Cluster)

2.      SQL Operationen SQL Optimierung , Ermittlung der Statistiken für DB Objekte

3.      Anwendung PL/SQL Programme, Integritätsbedingungen, diskrete Transaktionen

4.      DB – Server DB-Cache Otimierung, Checkpointing

5.      Datenbank Objektverteilung auf Disk, Rollback Segmente, Redo-Log-File

 

1.                 Die Datenstruktur

This paragraph has been concealed!
Download the complete document for free!
Datenbank Tuning in Oracle.doc
• Click on download to get complete and readable text
• This is a free of charge document sharing network
• First upload your own document, and you get a word document per email
• No registration necessary, gratis
Swap homeworks and notes at no charge!
Gratis scripts for students and pupils!

Sie ist grundlegend für die spätere Performance der DB. Wichtig ist vor allem die richtige Auswahl der Indices. Für primary Keys wird automatische ein Index angelegt, für foreign keys sollte auch ein Index angelegt werden. Der Vorteil eines foreign key Index ist, daß bei einer Referenzierung des Primary Key Wertes nur dessen Index Entry gesperrt wird, und man so das kleinste mögliche Sperrgranulat ausnützen kann.

2.                 SQL Befehls Ebene

SQL Optimierer suchen den schnellsten Zugriffspfad zu den Daten. Es gibt dafür in Oracle7 3 Methoden

·        Regel – Methode

·        Statistische Methode

·        Statistische Methode + Hinweise

Bei der Regel-Methode bestimmen die Bedingungen in der ‚where‘ Klausel den Zugriffspfad.

Bei statistischen Methoden werden statistische Informationen über Tabellen, Indizes und Cluster mit einbezogen. Diese Infos erhält man mit dem ‚analyze‘ Befehl

Analyze table tab compute statistics; //compute liefert immer exakte Werte (dauert sehr lange)

Analyze index iname estimate statistics; //estimate liefert geschätzte Werte die aber genau genug sind

 

This paragraph has been concealed!
Download the complete document for free!
Datenbank Tuning in Oracle.doc
• Click on download to get complete and readable text
• This is a free of charge document sharing network
• First upload your own document, and you get a word document per email
• No registration necessary, gratis
Swap homeworks and notes at no charge!
Gratis scripts for students and pupils!

Die Aktivierung von anderen Optimiermethoden kann durch Hinweise geschehen. Diese Hinweise können genutzt werden bei select, update und delete, und müssen als erste Klausel nach dem Operator Schlüsselwort angegeben werden.

Update /*+rule*/ table set ....

3.                 Anwendungs Ebene

Positiv wirken sich hier z.B. gespeicherte PL/SQL Programme aus die zentral und kompiliert am Server liegen und einmal aktiviert allen Benutzern zur Verfügung stehen.

Auch sollten Integritätsbedingungen zentral und optimiert am DB-Server ausgeführt werden, anstatt innerhalb des Anwendungsprogrammes

4.                 DB – SERVER Ebene

Hier ist vor allem die Größe und Konfiguration des Cache interessant. Die Größe des Caches sollte so gewählt werden, daß auf ein physische Leseoperation (Platte) etwa 10 – 20 logische Leseoperationen (Cache) kommen, was einer Trefferrate von 90-95 % entspricht.

Die Ermittlung der Trefferrate erfolgt so:

Select name,value

from v$sysstat

where name in(‚consistent gets‘,‘db block gets‘,‘physical reads‘)

Als Ergebnis erhält man nun Beispielsweise diese 3 Werte

Consistent gets: 121.001 Lesezugriffe konsistent und

Db block gets: 340.010 Lesezugriffe aus dem Cache

Physical reads: 85.990 Plattenzugriffe

 

Physical reads

Trefferrate = (1- ------ ) *100 = 88%

This paragraph has been concealed!
Download the complete document for free!
Datenbank Tuning in Oracle.doc
• Click on download to get complete and readable text
• This is a free of charge document sharing network
• First upload your own document, and you get a word document per email
• No registration necessary, gratis
Swap homeworks and notes at no charge!
Gratis scripts for students and pupils!

Für eine exakte Ermittlung der optimalen Cachegröße muß man aber über einen bestimmten Zeitraum eine DB Pufferanalyse mit dem typischen Anwendungsprofil durchführen. Daraus erhält man dann genau Statistiken über die Auslastund der einzelnen DB-Cache Blöcke.

5.                 Datenbank

Hier geht’s es vor allem darum, die unterschiedlichen Filetypen einer Datenbank und die Zuordnung zu den DB Objekten optimal zu gestalten.

So sollten z.B. Index Segmente, Redo-Log-Files und Rollback Segmente von den Benutzerdaten getrennt auf anderen, schnelleren Platten gespeichert werden.

 

 

INDEXES

 

Indexes sollten für jene Spalten angelegt werden die in der ‚where‘ Klausel verwendet werden, da sie die Antwortzeit enorm beschleunigen.

Indexes sind in ihrer Struktur aufsteigend sortierte,selbst ausbalancierte B-Tree’s, die bei jedem insert oder delete neu balanciert werden.

Der Zugriff auf das tatsächliche Datenbankobjekt erfolgt über die ROWID, es wird also zuerst im B-Tree der richtige Eintrag gesucht, und mit Hilfe der ROWID dann das tatsächliche Datenbankobjekt gelesen.

 

Bsp. Workerskill table

ROWID Name Skill Ability

000204.0001.0001 Dick Jones Smithy Excellent

000204.0002.0001 Wilfred Lowell Discus Slow

This paragraph has been concealed!
Download the complete document for free!
Datenbank Tuning in Oracle.doc
• Click on download to get complete and readable text
• This is a free of charge document sharing network
• First upload your own document, and you get a word document per email
• No registration necessary, gratis
Swap homeworks and notes at no charge!
Gratis scripts for students and pupils!

000204.0004.0001 John Pearson Combine Driver

Index für Primary Key, Name und Skill

Dick Jones Smithy 000204.0001.0001

John Pearson Combine Driver 000204.0004.0001

John Pearson Smithy 000204.0003.0001

Wilfried Lowell Discus 000204.0002.0001

Index erzeugen

 

Create index indexname on table(column1,column2,...)

Beim Indexnamen sollte folgendes Format eingehalten werden:

TABLENAME_COLUM1_COLUM2

Alle Indexes die vom Benutzer erstellt werden, sind im Table USER_INDEXES abgespeichert.

Wo kann man Indexes verwenden

 

Index sind vor allem bei jenen Spalten sinnvoll, die in where Klauseln oder bei Joins verwendet werden. Aber Achtung, wird in der where Klausel IS NOT NULL oder IS NULL verwendet, so erhält man keinen Geschwindigkeitsvorteil.

Auch bei ORDER BY, MIN und MAX wird der Index verwendet, aber er wrid nicht bei
GROUP BY und DISTINCT genutzt !

Sinnvoll sind Indexes auch nur bei Spalten deren Daten variieren, also zum Beispiel bei Telefonnummern oder Postleitzahlen. Ein Index für eine Spalten die nur ‚Y‘ oder ‚N‘ enthält wäre eine schlechte Wahl, und kann die Systemleistung sogar beeinträchtigen.

 

 

 

 

This paragraph has been concealed!
Download the complete document for free!
Datenbank Tuning in Oracle.doc
• Click on download to get complete and readable text
• This is a free of charge document sharing network
• First upload your own document, and you get a word document per email
• No registration necessary, gratis
Swap homeworks and notes at no charge!
Gratis scripts for students and pupils!

Page 1 of 2
[1] [2]


swopdoc.com ist not responsible for the content of this text provided by third parties

Legal info - Copyright - General terms - Partner - Statistik - Contact

Swap your documents