datenbanksysteme 1 organisatorisches und einführung · anfrageausführung in megatron 21 &...
TRANSCRIPT
![Page 1: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/1.jpg)
Datenbanksysteme 1Organisatorisches und Einführung
14.4.2008Felix Naumann
![Page 2: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/2.jpg)
DatenbankenDatenbanken
2
Anwendung AnwendungAnwendung Anwendung
Datenbankmanagementsystem
DatenbankDatenbank
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 3: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/3.jpg)
Zoom heraus: Mehr-SchichtenarchitekturenSchichtenarchitekturen
31 Schicht: PC1 Schicht: PC
2 Schichten:Client
2 Schichten: Datei/DatenbankS
Client
Datei/DatenbankServer
3 Schichten:
DBSBusiness
LogikApplication/Web
ServerFS
3 Schichten: Backend/Daten-
b k S ProduktAuftrags- h
Felix Naumann | VL Datenbanksysteme II | SS 2008
bank Server ProduktKatalog
AuftragsDBMS
nach[Tomczyk03]
![Page 4: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/4.jpg)
Zoom herein: ANSI/SPARC Architektur eines DBMSeines DBMS
4
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 5: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/5.jpg)
Zoom in die interne Ebene: Die 5-Schichten ArchitekturSchichten Architektur
5
Mengenorientierter Zugriff
DatenmodellebeneAnfrageübersetzung, Zugriffspfadwahl, Zugriffskontrolle,
Satzorientierter Zugriff
Datenmodellebene
Logischer Zugriff
Zugriffspfadwahl, Zugriffskontrolle, Integritätskontrolle
Sortierung, Transaktionsverwaltung, C lt D t Di ti
Interne Satzschnittstelle
g g
SpeicherstrukturenPhysical Record Manager, Index Manager, Sperrverwaltung, Log /
Cursorverwaltung, Data Dictionary
Systempufferschnittstelle
Pufferverwaltung
g , p g, g /Recovery
Seitenverwaltung, Puffermanagement Caching
Dateischnittstelle
Betriebssystem
Puffermanagement, Caching
Externspeicherverwaltung
Felix Naumann | VL Datenbanksysteme II | SS 2008
Geräteschnittstelle
![Page 6: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/6.jpg)
ÜberblickÜberblick
6
■ Vorstellung der Arbeitsgruppe
■ Organisatorisches
I l ti D t b k■ Implementierung von Datenbanken
■ Ausblick auf das Semester
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 7: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/7.jpg)
Arbeitsgruppe InformationssystemeArbeitsgruppe Informationssysteme
7
project fusem
project ViQTOR
Patricia Hobro Jens Bleiholder
Karsten DrabaData Fusion
Prof. Felix Naumann
DQ Assessment
project HumMer
Paul FühringData Cleaning
Duplicate DetectionPeer Data
Information Integration
Information Quality
DQ Assessment
Data Integration forLife Science Data Sources
Armin Roth
Melanie Weis & Sascha Szott
project Aladinproject XClean
ManagementSystems
Matching
Service-Oriented Systems
Personal InformationManagement
project Aladinproject System P
Ontologies
Se ce O e ed Sys e s
Mohammed AbuJarour
Alexander Albrecht
Jana BauckmannFrank Kaufer Data Profiling forSchema Management
Felix Naumann | März 2008
![Page 8: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/8.jpg)
Lehrveranstaltungen in diesem SemesterSemester
8
Vorlesungen
■ DBS II
I f ti i t ti■ Informationsintegration
Seminare
■ Bachelor: Beauty is our Business■ Bachelor: Beauty is our Business
■ Bachelor: www.ligageschichte.de
■ Master: Duplikaterkennung
■ Forschungsseminar
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 9: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/9.jpg)
Vorstellung – HörerVorstellung – Hörer
9
■ Welches Semester?
□ 2tes, 4tes, 6tes
HPI d IfI?■ HPI oder IfI?
■ Erasmus o.ä.?
■ DBS I bei mir?■ DBS I bei mir?
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 10: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/10.jpg)
ÜberblickÜberblick
10
■ Vorstellung der Arbeitsgruppe
■ Organisatorisches
I l ti D t b k■ Implementierung von Datenbanken
■ Ausblick auf das Semester
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 11: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/11.jpg)
TermineTermine
11
■ Vorlesung□ Montags 9:15 - 10:45
◊ in HS 3
■ Übungen
□ Ungefähr 1 SWS
Verteilt auf Doppelstunden □ Donnerstags 9:15 - 10:45
◊ in HS 3■ Erste Vorlesung
□ Verteilt auf Doppelstunden im Semester
□ Bitte immer www beachten■ Erste Vorlesung
□ 14.4.2008■ Letzte Vorlesung
17 7 2008
□ Zwei Übungsgruppen
◊ Montags 9:15 in HS 3
◊ Di t 17 00 i HS □ 17.7.2008■ Feiertage
□ 1.5. Maifeiertag (Do)
◊ Dienstags 17:00 in HS 1
■ Klausur□ 12.5. Pfingstmontag
■ Sondertermine□ 17.4. (Do): IBM Tag
□ Eine Woche nach Semester
□ 1.5 vs. 2 vs. 4 vs. 8 Stunden
Felix Naumann | VL Datenbanksysteme II | SS 2008
□ 21.4. und 24.4.: SaschaStunden
![Page 12: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/12.jpg)
FeedbackFeedback
12
■ Folien
□ Vor der VL im WWW
■ Fragen bitte jederzeit!
□ In der Vorlesung
◊ ASAP
□ Datiert bei Updates
A V b
g
□ Sprechstunde
◊ Dienstags 15:00 – 16:00
R A 1 13■ Anregungen zur Verbesserung:
□ Gebrauch der Folien
□ Infos im WWW
◊ Raum A-1.13
◊ Am liebsten mit Anmeldung
□ … □ Email: [email protected]
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 13: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/13.jpg)
LiteraturLiteratur
13
Database Systems - The Complete Book
■ Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer Widom: Pearson Education International, 2002.
Ebenfalls empfehlenswert
■ DatenbanksystemeAlfons Kemper, André EicklerISBN: 3486273922
■ Datenbanken: ImplementierungstechnikenGunter Saake, Andreas Heuer, Kai-Uwe Sattler
Und viele andere mehr…
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 14: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/14.jpg)
Übungen und LeistungserfassungÜbungen und Leistungserfassung
14
■ Übungen – Organisatorisches
□ Mehr von Sascha Szott bei erster Übung
□ Zweiergruppen□ Zweiergruppen
□ Vermutlich nur 5 Übungsblätter
□ Mind. 50% der Punkte auf jedem Blatt
◊ Kein Freischuss
□ Tutor
◊ Florian Reinhart
■ Übungen – Inhaltliches
□ „Theoretische“ Übungen
◊ A f P i◊ Auf Papier
□ Praktische Übungen
◊ DB2 im Studentenpoolp
◊ Neuer DB2 Server!
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 15: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/15.jpg)
ÜberblickÜberblick
15
■ Vorstellung der Arbeitsgruppe
■ Organisatorisches
I l ti D t b k■ Implementierung von Datenbanken
■ Ausblick auf das Semester
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 16: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/16.jpg)
Das Megatron 2002 DBMSDas Megatron 2002 DBMS
16
■ Naive Sicht
□ DBMS sollte recht einfach sein
M t 2002■ Megatron 2002
□ Unter UNIX verfügbar
□ Relationales Datenmodell□ Relationales Datenmodell
□ SQL Anfragen
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 17: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/17.jpg)
Megatron - ImplementierungsdetailsMegatron - Implementierungsdetails
17
■ Zuerst: NDA unterzeichnen!
R l ti d i ASCII D t i i h t■ Relationen werden in ASCII Dateien gespeichert.
□ Relation Studenten(Name, Matrikel, Studiengang)
□ Wird zu Datei /usr/db/Studenten□ Wird zu Datei /usr/db/Studenten
■ Eine Zeile pro Tupel
■ Felder werden mit „#“ separiert
Smith # 123 # CSJones # 522 # EE...
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 18: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/18.jpg)
Megatron - ImplementierungsdetailsMegatron - Implementierungsdetails
18
■ Schema wird in gesonderter ASCII Datei gespeichert
□ /usr/db/schema
Ei Z il R l ti■ Eine Zeile pro Relation
■ Zeile beginnt mit Relationenname
■ Gefolgt von Attributname/Datentyp Paaren■ Gefolgt von Attributname/Datentyp Paaren
□ Getrennt durch „#“
R1 # A # INT # B # STR …R2 # C # STR # A # INTR2 # C # STR # A # INT …...
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 19: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/19.jpg)
Eine Session mit MegatronEine Session mit Megatron
19
■ Maschine: dbhost
■ Megatron prompt: &
■ dbhost> MEGATRON3000Welcome to MEGATRON 3000!
■ & ......
■ & quit
■ dbhost>
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 20: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/20.jpg)
Eine Session mit MegatronEine Session mit Megatron
20
■ SQL Anfragen werden mit # beendet
#■ & SELECT * FROM Studenten #Name Matrikel Fach__
Smith 123 Informatik
Jones 522 Mathematik
■ Speicherung von Anfrageergebnissen in einer Datei
■ & SELECT * FROM Studenten WHERE Matrikel > 500 | HoheMtr ##
■ Erzeugt neue Datei /usr/db/HoheMtr mit einer Zeile
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 21: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/21.jpg)
Anfrageausführung in MegatronAnfrageausführung in Megatron
21
■ & SELECT * FROM R WHERE <Bedingung>
1. Schema-Datei lesen um Attribute und Datentypen von R zu bestimmenbestimmen
2. Prüfe, ob Bedingung semantisch korrekt ist.
3. Zeige jedes Attribut als Zeilenkopf ang j p
4. Male eine Linie
5. Lese die Datei namens R. Für jede Zeile
1. Prüfe Bedingung2 Zeige Zeile als Tupel an falls Bedingung erfüllt ist2. Zeige Zeile als Tupel an, falls Bedingung erfüllt ist.
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 22: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/22.jpg)
Anfrageausführung in MegatronAnfrageausführung in Megatron
22
■ & SELECT * FROM R WHERE <Bedingung> | T #
1. Schema-Datei lesen um Attribute und Datentypen von R zu bestimmenbestimmen
2. Prüfe, ob Bedingung semantisch korrekt ist.
3. Lesen der Datei namens R. Für jede Zeilej
1. Prüfe Bedingung2. Schreibe Zeile in Datei /usr/db/T, falls Bedingung
erfüllt isterfüllt ist.
4. Füge in Datei /usr/db/schema eine Zeile hinzu für Relation T
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 23: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/23.jpg)
Anfrageausführung in MegatronAnfrageausführung in Megatron
23
■ & SELECT Büro FROM Studenten, FachbereicheWHERE Studenten.Name = „Smith“ AND Studenten.Fach = Fachbereich.Name #AND Studenten.Fach Fachbereich.Name #
1. Schema-Datei lesen um Attribute und Datentypen von Studenten und Fachbereiche zu bestimmen.
2. Prüfe, ob Bedingungen semantisch korrekt sind.
3. Lesen von Datei /usr/db/Studenten. Für jede Zeile:
1 L D t i / /db/F hb i h Fü j d Z il1. Lesen von Datei /usr/db/Fachbereiche. Für jede Zeile:1. Erzeuge Join-Tupel2. Prüfe Bedingungen3. Zeige Tupel an, falls Bedingung erfüllt
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 24: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/24.jpg)
Probleme mit Megatron 2002Probleme mit Megatron 2002
24
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 25: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/25.jpg)
Probleme mit Megatron 2002Probleme mit Megatron 2002
25
■ Tupel-Layout auf der Festplatte
□ Falls sich ein Wert ändert muss gesamte Datei neu geschrieben werdengeschrieben werden.
◊ Alle Zeichen bewegen sich entsprechend in der Datei.
□ ASCII Speicherung ist teuer
□ Löschung ist ebenfalls teuer
■ Teure Suche
□ Es kann nicht schnell, z.B. basierend auf einem Schlüssel, ein bestimmtes Tupel gefunden werden
□ Es wird immer gesamte Relation gelesen selbst bei strengen □ Es wird immer gesamte Relation gelesen, selbst bei strengen Nebenbedingungen
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 26: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/26.jpg)
Probleme mit Megatron 2002Probleme mit Megatron 2002
26
■ Anfrageausfühung ist brute force
□ Joinoperationen können wesentlich schneller implementiert werden.werden.
□ Selektionen sollten früher ausgeführt werden
■ Kein Puffermanagement
□ Hauptspeicher wird nicht genutzt
□ Sämtliche Daten werden stets von Festplatte gelesen
■ Keine Nebenläufigkeitskontrolle■ Keine Nebenläufigkeitskontrolle
□ Mehrere Nutzer könnten gleichzeitig Datei ändern
■ Keine Zuverlässigkeit
□ Daten können bei Systemabsturz verloren gehen
□ Operationen könnten nur teilweise ausgeführt werden
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 27: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/27.jpg)
Probleme mit Megatron 2002Probleme mit Megatron 2002
27
■ Keine Sicherheit
□ Dateisystem ist unsicher
G l ität i t b□ Granularität ist grob
■ Wenig Metadatenfähigkeiten
□ Statistiken Nebenbedingungen□ Statistiken, Nebenbedingungen
■ Kein API
□ Wie können anderen Anwendungen auf die Daten zugreifen?
■ Keine Interaktion mit anderen DBMS
■ Keine GUI
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 28: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/28.jpg)
ÜberblickÜberblick
28
■ Vorstellung der Arbeitsgruppe
■ Organisatorisches
I l ti D t b k■ Implementierung von Datenbanken
■ Ausblick auf das Semester
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 29: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/29.jpg)
KurzüberblickKurzüberblick
29
■ Physische Speicherstrukturen (2)
■ Physische Repräsentation von Daten (1)
■ Indexstrukturen (5)■ Indexstrukturen (5)
■ Anfrageausführung (2)
■ Optimierung (4)
■ Benchmarking (1)
■ Recovery (2)
■ Transaktionsmanagement (3)■ Transaktionsmanagement (3)
Effi i t U it ß D tEffizienter Umgang mit großen Datenmengen
Teil 1: Umgang mit großen Datenmengen
Felix Naumann | VL Datenbanksysteme II | SS 2008
Teil 2: Effiziente Manipulation der Daten
![Page 30: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/30.jpg)
Physische SpeicherstrukturenPhysische Speicherstrukturen
30
■ Speicherhierarchie
□ Cache, RAM, Sekundärspeicher, Tertiärspeicher
■ Festplatten■ Festplatten
□ Mechanik, Controller, Charakteristiken, Read/Write
■ Algorithmen für Sekundärspeicher
□ Bsp: Sortierung mit „Two-Phase, Multiway Merge-Sort“
■ Zugriffsbeschleunigung
Clustering Multiple Disks Spiegelung Prefetching□ Clustering, Multiple Disks, Spiegelung, Prefetching
■ Diskfehler
□ Checksums, Stable Storage, g
■ Disk Recovery
□ RAID: Spiegelung, Parity Blocks, …
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 31: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/31.jpg)
Physische Repräsentation von DatenPhysische Repräsentation von Daten
31
■ Datenelemente und Felder
□ Relationale Datenbankelemente, Datentypen, Datensätze
Ad i■ Adressierung
□ Client/Server, Physische vs. Logische Adresse
■ Datentypen variabler Länge■ Datentypen variabler Länge
□ Variable Felder, Variable Datensätze, Nullwerte, BLOBs
■ Schreiboperationen
□ Insert, Update, Delete
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 32: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/32.jpg)
IndexstrukturenIndexstrukturen
32
■ Indizes auf sequentiellen Dateien
□ Sortiert, dicht-besetzter und dünn-besetzter Index, Mehrstufiger Index UpdatesMehrstufiger Index, Updates
■ Sekundärindizes
□ Nicht sortiert, Aufbau, Anwendungen, Indirektion, Invertierte , , g , ,Indizes (IR)
■ B-Bäume
□ Aufbau, Anwendungen, Bereichsanfragen, Insert, Delete
■ Hashverfahren (für Sekundärspeicher)
□ Insert Delete erweiterbares Hashen Lineares hashen□ Insert, Delete, erweiterbares Hashen, Lineares hashen
■ Eventuell: Multidimensionale Indizes
□ GIS, DWH□ GIS, DWH
■ Eventuell: Bitmap Indizes
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 33: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/33.jpg)
AnfrageausführungAnfrageausführung
33■ Physische Operatoren
□ Scan, Sortierung, I/O Kosten, Iteratoren
■ One-Pass Operationen
□ Unär: Selektion, Projektion, Duplikateliminierung, Gruppierung
□ Binär: Mengenoperationen (∪∩—×), Join
□ Nested-Loop Joinp
■ Two-Pass Operationen (mittels Sortierung)
□ Duplikateliminierung, Gruppierung, Mengenoperationen (∪∩—×), Merge-Sort Join
■ Two-Pass Operationen (mittels Hashing)
□ …, Hash-Join, …
■ Index-basierte Algorithmen■ Index basierte Algorithmen
□ Clustering Indizes, Selektion, Joins
■ Puffermanagement
Architektur Strategien (LRU FIFO )□ Architektur, Strategien (LRU, FIFO, …)
■ Parallele Algorithmen
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 34: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/34.jpg)
OptimierungOptimierung
34
■ Teils schon in DBS I:
□ Parsing, Algebraische Transformationsregeln
K t d ll■ Kostenmodell
□ Projektion, Selektion, Verteilungen, Join
■ Kostenbasierte Optimierung■ Kostenbasierte Optimierung
□ Histogramme, Statistiken, Heuristiken, Enumerierung aller Pläne
■ Joinreihenfolge
□ Links vs. rechts, Dynamische Programmierung, greedy AlgorithmusAlgorithmus
■ Physische Anfragepläne
□ Selektionsmethode, Join-Methode, Pipelining□ Selektionsmethode, Join Methode, Pipelining
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 35: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/35.jpg)
BenchmarkingBenchmarking
35
■ Leistungsbewertung
□ Komponenten eines Benchmarks, Ziele
TPC B h k■ TPC Benchmarks
□ TPC A, B
□ TPC C: OLTP□ TPC C: OLTP
□ TPC D/H: Decision Support DWH
□ TPC W: e-Commerce
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 36: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/36.jpg)
RecoveryRecovery
36
■ Fehlerarten
□ Medienfehler, Systemfehler, Transaktionen en detail
U d L i■ Undo Logging
□ Log-Datensätze, Log-Regeln, Wiederherstellung mit Undo, Checkpointsp
■ Redo Logging
□ Log-Regeln, Wiederherstellung mit Redo, Checkpoints
■ Undo/Redo Logging
□ Best of both worlds, Regeln, Wiederherstellung, Checkpoints
h■ Archivierung
□ Archive, Nebenläufige Archivierung, Wiederherstellung mit Archiven und LogsArchiven und Logs
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 37: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/37.jpg)
TransaktionsmanagementTransaktionsmanagement
37
■ Fortsetzung aus DBS I:
□ Transaktionen, Schedules, 2PL, Sperren
■ Mehrere Sperr-Modi■ Mehrere Sperr Modi
□ Shared und exclusive Sperren, Aufwertung von Sperren, Update-Sperren, Inkrement-Sperren
■ Scheduler
□ Architektur, Sperrtabelle
■ Hierarchisches Sperrenp
□ Sperrgranulate (Tabellen, Blöcke, Tupel), warnende Sperren
■ Baumprotokolle
□ Motivation (z.B. B-Bäume), Regeln, Beweis
■ Nichtsperrende Verfahren
□ Zeitmarken (Timestamps), Validierung, Optimistische Verfahren□ Zeitmarken (Timestamps), Validierung, Optimistische Verfahren
Felix Naumann | VL Datenbanksysteme II | SS 2008
![Page 38: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/38.jpg)
Systemarchitektur nach Garcia-MolinaSystemarchitektur nach Garcia-Molina
38
Query Parser UserStrategy Selector
User Transaction Transaction Manager
Buffer Manager Recovery Manager
File Manager LogLock Table M M Buffer
Concurrency Control
File Manager LogLock Table M.M. Buffer
Statistical DataIndexes
User Data System Data
Felix Naumann | VL Datenbanksysteme II | SS 2008
y
![Page 39: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/39.jpg)
Systemarchitektur nach LeserSystemarchitektur nach Leser
39N i “ F t h itt A d D t b k
Anwendung Interaktive Verwaltungs-Präcompiler
„Naive“Benutzer
FortgeschritteneBenutzer
Anwendungs-Programmierer
Datenbank-administratoren
DML Compiler DDL Compiler
Anwendung Anfrage werkzeugPräcompiler
Anfragebearbeitung DBMS
DML-Compiler DDL-Compiler
Mehrbenutzersynchr.Fehlerbehandlung
Datenbankmanager Schemaverwaltung
Dateiverwaltung
Felix Naumann | VL Datenbanksysteme II | SS 2008
Logdateien Indexe Datenbasis Datenwörterbuch
![Page 40: Datenbanksysteme 1 Organisatorisches und Einführung · Anfrageausführung in Megatron 21 & SELECT * FROM R WHERE 1. Schema-Datei lesen um Attribute und Datentypen](https://reader034.vdocuments.pub/reader034/viewer/2022050715/5e053286be40e6676f79110d/html5/thumbnails/40.jpg)
FeedbackFeedback
40
Fragen bitte jederzeit!
■ In der VL
S h t d Di t 15 16 Uh■ Sprechstunde: Dienstags 15-16 Uhr
■ Email: [email protected]
■ Telefon: (0331) 5509 280■ Telefon: (0331) 5509 280
Anregungen zur Verbesserung:
■ Z.B. zu
□ Gebrauch der Folien
□ Infos im WWW
Felix Naumann | VL Datenbanksysteme II | SS 2008