Datenbanksysteme
Vorlesung im SS 2001
[Version vom 28. Juni 2001
Oliver Vornberger
Olaf Müller
Praktische Informatik
Fachbereich Mathematik/Informatik
Universität Osnabrück
PDF-Version
Literatur
Einführung
Definition
Motivation
Datenabstraktion
Transformationsregeln
Datenunabhängigkeit
Modellierungskonzepte
Architektur
Konzeptuelle Modellierung
Das Entity-Relationship-Modell
Schlüssel
Charakterisierung von Beziehungstypen
Die (
min, max
)-Notation
Existenzabhängige Entity-Typen
Generalisierung
Aggregation
Konsolidierung
Logische Datenmodelle
Das Hierarchische Datenmodell
Das Netzwerk-Datenmodell
Das Relationale Datenmodell
Das Objektorientierte Modell
Physikalische Datenorganisation
Grundlagen
Heap-File
Hashing
Erweiterbares Hashing
ISAM
B*-Baum
Sekundär-Index
Mehrdimensionale Suchstrukturen
Problemstellung
k-d-Baum
Gitterverfahren mit konstanter Gittergröße
Grid File
Aufspalten und Mischen beim Grid File
Verwaltung geometrischer Objekte
Das Relationale Modell
Definition
Umsetzung in ein relationales Schema
Verfeinerung des relationalen Schemas
Abfragesprachen
Relationenalgebra
Relationenkalkül
Der relationale Tupelkalkül
Der relationale Domänenkalkül
Query by Example
SQL
SQL-Server
Sprachphilosophie
Datentypen
SQL-Statements zur Schemadefinition
Aufbau einer SQL-Query zum Anfragen
SQL-Queries zum Anfragen
SQL-Statements zum Einfügen, Modifizieren und Löschen
SQL-Statements zum Anlegen von Sichten
SQL-Statements zum Anlegen von Indizes
Text
Image
Bulk insert
SQL-Scripte
Datenintegrität
Grundlagen
Referentielle Integrität
Referentielle Integrität in SQL
Statische Integrität in SQL
Trigger
Datenbankapplikationen
Microsoft Visio
Microsoft Access
Embedded SQL
JDBC
Cold Fusion
PHP
XML
Strukturierte Texte
Strukturierte Daten
XML-Ausgabe auf Web-Seiten
XML vom Microsoft SQL Server 2000
XQuery
Relationale Entwurfstheorie
Funktionale Abhängigkeiten
Schlüssel
Bestimmung funktionaler Abhängigkeiten
Schlechte Relationenschemata
Zerlegung von Relationen
Erste Normalform
Zweite Normalform
Dritte Normalform
Transaktionsverwaltung
Begriffe
Operationen auf Transaktionsebene
Abschluß einer Transaktion
Eigenschaften von Transaktionen
Transaktionsverwaltung in SQL
Zustandsübergänge einer Transaktion
Transaktionsverwaltung beim SQL-Server 2000
Mehrbenutzersynchronisation
Multiprogramming
Fehler bei unkontrolliertem Mehrbenutzerbetrieb
Lost Update
Dirty Read
Phantomproblem
Serialisierbarkeit
Theorie der Serialisierbarkeit
Algorithmus zum Testen auf Serialisierbarkeit:
Sperrbasierte Synchronisation
Verklemmungen (Deadlocks)
Hierarchische Sperrgranulate
Zeitstempelverfahren
Recovery
Fehlerklassen
Lokaler Fehler einer Transaktion
Fehler mit Hauptspeicherverlust
Fehler mit Hintergrundspeicherverlust
Die Speicherhierarchie
Ersetzen von Pufferseiten
Zurückschreiben von Pufferseiten
Einbringstrategie
Protokollierung der Änderungsoperationen
Struktur der Log-Einträge
Beispiel einer Log-Datei
Logische versus physische Protokollierung
Schreiben der Log-Information
WAL-Prinzip
Wiederanlauf nach einem Fehler
Lokales Zurücksetzen einer Transaktion
Sicherungspunkte
Verlust der materialisierten Datenbasis
Datensicherung beim SQL-Server 2000
Sicherheit
Legislative Maßnahmen
Organisatorische Maßnahmen
Authentisierung
Zugriffskontrolle
Auditing
Kryptographie
Public Key Systems
Das RSA-Verfahren
Korrektheit des RSA-Verfahrens
Effizienz des RSA-Verfahrens
Sicherheit des RSA-Verfahrens
Implementation des RSA-Verfahrens
Objektorientierte Datenbanken
Schwächen relationaler Systeme
Vorteile der objektorientierten Modellierung
Der ODMG-Standard
Eigenschaften von Objekten
Definition von Attributen
Definition von Beziehungen
Extensionen und Schlüssel
Modellierung des Verhaltens
Vererbung
Beispiel einer Typhierarchie
Verfeinerung und spätes Binden
Mehrfachvererbung
Die Anfragesprache OQL
C++-Einbettung
Data Warehouse
Datenbankentwurf für Data Warehouse
Star Join
Roll-Up/Drill-Down-Anfragen
Materialisierung von Aggregaten
Der Cube-Operator
Data Warehouse-Architekturen
Data Mining