Teil 2 Datenbanktechnik II

Werbung
Datenbanktechnik II
Kapitel 3 bis 6
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 1
www.diploma.de
Inhalt
3.0 Physische Datenorganisation
4.0 Sicherheit, Integrität und Konsistenz
5.0 Ganzheitliches Performance Tuning
6.0 Datenbanktechnik, Softwarekomponenten eines
Datenbanksystems
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 2
www.diploma.de
3.0 Physische Datenorganisation
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 3
www.diploma.de
3.1 Physische Speicherung von Daten
Daten werden gespeichert
- im Gigabyte-Bereich
- auf Sekundärspeicher (Magnetplatten)
- kleine Teile im Hauptspeicher (verbunden mit Prozessor)
Plattenspeicher sind seitenorientiert.
Seiten(Blöcke)
- sind kleinste Transfereinheit
- die zwischen Haupt- und Sekundärspeicher übertragen wird
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 4
www.diploma.de
3.2 Indexstrukturen von Datenbanksystemen
Directoryseiten
- Seiten, in denen das Directory gespeichert wird
Datenseiten
- Seiten mit den eigentlichen physischen Datensätzen
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 5
www.diploma.de
3.3 Allgemeine Anforderungen an Indexstrukturen
1.
2.
3.
4.
5.
Effizientes Suchen
Dynamisches Einfügen, Löschen und Verändern von Datensätzen
Ordnungserhaltung
Hohe Speicherplatzausnutzung
Implementierbarkeit, Nutzen des Implementationsaufwandes
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 6
www.diploma.de
3.4 Baumstrukturierte Zugriffsverfahren
1. Knoten(Grundkomponenten)
2. Zeiger (verknüpft die Knoten)
3. Wurzel (oberster Knoten)
4. Blätter (Knoten ohne untergeordnete Knoten)
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 7
www.diploma.de
3.5 Hashing, Zugriffe mittels Schlüsseltransformation
- Zugriffe mittels Schlüsseltransformation
- im Gegensatz zu den baumstrukturierten Zugriffsverfahren keine zusätzliche
Hilfsorganisation
- Daten werden direkt auf Magnetplatte abgelegt, Segmentadresse wird berechnet
- Speicherplatz für Daten wird von vornherein reserviert
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 8
www.diploma.de
4.0 Sicherheit, Integrität und
Konsistenz
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 9
www.diploma.de
4.1 Datenkonsistenz
4.2 Datenschutz im konzeptionellem Modell
4.3 Transaktionsverwaltung
4.4 Optimistische Verfahren
4.5 Pessimistische Verfahren (Sperrverfahren)
Locktabelle
Deadlock
4.6 Zeitstempel-Verfahren
4.7 Transaktionslogik in verteilten Datenbanksystemen
4.8 Datenkonsistenz
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 10
www.diploma.de
4.9 Datensicherheit und Recovery
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 11
www.diploma.de
5.0 Ganzheitliches Performance Tuning
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 12
www.diploma.de
Inhalt
5.1 System-Tuning
5.2 Datenbank-Tuning
5.3 Datenbank-Design
5.4 Tuningaspekt Datentypen und ihre Verwendung
5.5 Diagnose und Tuning-Vorschläge
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 13
www.diploma.de
5.1 Grundlagen des System-Tuning
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 14
www.diploma.de
Tuning
- Software- und Hardware beeinflussen Leistung der Datenbank
- Kenntnisse des Tuners über
- interne Organisation, Rechnerarchitektur,
- Betriebssystem
- Anwendungen und deren Interaktion in der Datenbank
Grenzen
- je nach Fortschritt des Projektes
- Aufwand beim Tuning
- Kosten für nachträgliche Korrekturen
Vor- und Nachteile der Tuning-Maßnahmen
- entlasten das System, vermeiden Kauf neuer Hardware
- verursachen selbst Zeit und Kosten
Ende des Tuning
- wenn notwendige Performance für ein Geschäft erziel wurde
- d.h. minimal gewünschte Effekt oder Hardware-Einsparung wurde erreicht
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 15
www.diploma.de
5.1.1 Engpass versus Verschwendung
Verschwendung
- Ressourcen öfter, länger oder mehr als nötig belegt
- verursacht oft Engpässe in Ressourcen
- entstehen bereits während des Software-Engineerings
- können durch umfassende Analysen und sorgfältige Planung vermieden werden
Engpass
- Komponente stellt Engpass (engl. Bottleneck) dar
- Ressource arbeitet zu langsam oder ist nicht ausreichend vorhanden
Abgrenzen der relevanten Komponenten
- fallspezifisch oder nach persönlichem Ermessen beurteilen
- Datenbank-Ressourcen: z.B. Caches, Tabellen, Indexe
- Middleware: z.B. Threads der Application Server
- Anwendung: z.B. häufiger Zugriff auf Auftragsnummern eines Buchungssystems
- gegenseitige Beeinflussung
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 16
www.diploma.de
5.2 Datenbank-Tuning
Datenbank-Tuning
- beeinflusst Performance verschiedener Bereiche der Datenbank
Performance hängt ab von:
- Datenbankzugriff
Zugriffsstrukturen
- z.B. Speicherstrukturen, Indexierung der Daten
Algorithmus
- SQL-Statements, Arbeitsweise des Optimizers
- Cache-Verwaltung
- Komponenten des System Global Area (SGA) (prozessübergreifenden
Speicherbereiche im Hauptspeicher des Datenbankservers ORACLE)
- Concurrency
- Zugriffskonflikten und deren Lösung
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 17
www.diploma.de
Schritte
1. Teilkomponente der Datenbank
- System-Kennzahlen sammeln
2. Fachliche Korrektheit der kritischen Statements
- Kenntnisse der Anwendung und des Themenkreises
- Fachkundige Mitarbeiter
3. Ressourcen-Verschwendung ermitteln und beseitigen
- Beginn mir den Komponenten mit den größten Optimierungsmöglichkeiten
- Verschwendungen beseitigen
- Engpass-Beseitigung
Hilfen
- Tools, z.B. ORACLE-Enterprise Manager mit Tuningvorschlägen
- reduziert Verschwendung
- ersetzen nicht jahrelange Erfahrung und Einschätzung von Tuning-Maßnahmen
- Techniken entwickeln sich weiter
- Datenbanksysteme werden komplexer
- neue Techniken zur Datenspeicherung, Backup und Recovery
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 18
www.diploma.de
5.3 Datenbank-Design unter Tuning-Aspekten
Wahl der Zugriffstrukturen
- beeinflusst Performance
- wegen Datentypen, Indexierung und Speicherstrukturen
- z.B. durch häufige Abfragen, Benutzerzugriffe
Faktoren bei der Wahl der Zugriffsstrukturen
- In Gruppen gelesene Zeilen
- oft gruppierte Daten speichern als Cluster
- SELECT- und DML-Anweisungen
- Tabellen mit vielen Zugriffen auf verschiedene Platten verteilen
- Tabellengröße
- große Tabellen in separate Tablespace oder Partitionen
- Zeilengröße
- große Zeilen durch große Blockgrößen im Durchsuchen beschleunigen
- Transaktionen
- große Transaktionen benötigen mehr Undo-Speicherplatz
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 19
www.diploma.de
5.4 Tuningaspekt Datentypen und ihre Verwendung
CHAR
- belegt gesamten Speicherplatz
- verschwendet Speicherplatz wegen aufgefüllter Leerzeichen
VARCHAR2
- belegt nur den benötigten Speicherplatz
Andere Datentypen
- spielen für Performance keine Rolle
Beispiel: ORACLE-Datenbanksystem
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 20
www.diploma.de
5.5 Diagnose und Tuning-Vorschläge
Datenbank Manager
- überwacht und protokolliert
- Wertete Informationen aus, findet Probleme und liefert Lösungsvorschläge
- Views mittels SQL und SQLPlus rufen Daten ab
- Performance-relevante Daten abfragen
- außerdem Werte in Relation zueinander setzen
Tools
- erkennen häufig Probleme
- erhebliche Erleichterung neben der täglichen Arbeit der Administratoren
- schätzen Effizienz ab und bergründen Vorschläge
- ermitteln Maßnahme zum Performance-Vorteil
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 21
www.diploma.de
6.0 Datenbanktechnik, Softwarekomponenten
eines Datenbanksystems
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 22
www.diploma.de
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 23
www.diploma.de
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 24
www.diploma.de
www.diploma.de
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 25
www.diploma.de
6.1 Externspeicherverwaltung
-
stellt in der Dateischnittstelle Funktionen zur Verfügung
erlaubt Verarbeiten von Dateien
Erzeugen, Löschen, Öffnen und Schließen von Dateien
Lesen und Schreiben eines Dateiblocks
6.2 Systempufferverwaltung
- stellt Daten im Systempuffer zur Verfügung
- überträgt geänderte Daten wieder auf die Speichermedien
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 26
www.diploma.de
6.3 Record- und Zugriffspfadverwaltung
Zwei Aufgabenbereiche
1. Recordverwalter (bzw. Satzverwaltung)
- physische Abspeicherung von Datensätzen
- Funktionen wie Lesen, Einfügen, Modifizieren, Löschen
2. Zugriffspfadverwaltung
- effizientes Finden der Datensätze bestimmter Eigenschaften
- spezielle Zugriffshilfen des Datenbanksystems (allgemein als Zugriffspfade bezeichnet)
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 27
www.diploma.de
6.4 Metadatenbank
Metadatenbank
- legt sämtliche Informationen über verwaltete Daten und Komponenten des
Datenbanksystems ab
- speichert Strukturinformationen über die Benutzerdaten (physische und externe
Schemas)
- Schema = Tabellen und deren Attribute
- physisch = wie und wo die Daten in der Datenbank gespeichert werden
- extern = anwendungsorientierte Sicht (Benutzern und Anwendungen)
- z.B. verwendete Programme, Benutzerangaben, Statistiken registrieren
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 28
www.diploma.de
Lässt sich über alle Phasen der Datenmodellierung einsetzen
- wenn nicht nur das physische Schema und die externen Schemas verwaltet werden
- sondern auch das konzeptionelle Datenmodell bewirtschaftet wird
Gängige Datenbanksysteme
- können konzeptionelles Datenmodell nicht parallel zum physischen Datenmodell
pflegen
- weitere Geschäftsmodelle etc. muss der Entwickler unterstützen mit Case-Tools
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 29
www.diploma.de
Kriterien zur Klassifikation von Metadatenbanken
Passive Metadatenbank
- nicht in das Datenbanksystem integriert
- dient vorwiegend Dokumentationszwecken
Aktive Metadatenbank
- tauscht gezielt Informationen aus
- Z.B. Informationen werden eingegeben und später in das Datenbanksystem übertragen
Integrierte Metadatenbank
- Teil der Datenbank
- Metadaten nicht doppelt
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 30
www.diploma.de
6.5 Zugriffspfadoptimierer, Optimizer
Zugriffspfad
- Weg des Zugriffs auf Daten
- z.B. Zugriffspfad auf das Attribut Arbeitsort der Entität Angestellten
- Optimieren erhöht Performance
Beispiel:
Suche aller weiblichen Angestellten im Ort X
- 2 % der Angestellten in Ort X
- 60 % der Angestellten weiblich
-> Ort ist besser als erste Selektion
Für die Realisierung eines effizienten Optimizers wird gegenübergestellt:
- Aufwand für die Gewinnung der statistischen Informationen
- hierdurch gewonnener Minderaufwand beim Suchen der eigentlichen Daten
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 31
www.diploma.de
Datenbanktechnik II
Vielen Dank für Ihre Aufmerksamkeit.
Datenbanktechnik
Dozent: Gerhard Fleige
Samstag, 23. August 2014
Seite: 32
www.diploma.de
Herunterladen