34
Prof. Dr. T. Kudraß 1 Einführung

Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Embed Size (px)

Citation preview

Page 1: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 1

Einführung

Page 2: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 2

• Informationsflut

• Motivation– Komplexe Datenstrukturen– Aktuelle, richtige, redundanzfreie Daten– Trennung von Daten und Programmen– Viele Benutzer greifen zeitgleich zu

• Aufgaben – komfortable und sichere Eingabe der Daten– persistente und Platz sparende Speicherung der Daten– Schneller und komfortabler Zugriff auf die Daten

Grundsätzliches zu Datenbanken

Page 3: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 3

Datenbank

• Oft ungenaue Begriffsverwendung

• In der Regel ist ein Datenbanksystem (DBS) gemeint oder auch eine Datenbasis

Datenbasis

• die in einem DBS (Datenbanksystem) nach einheitlichen Regeln persistent gespeicherten Daten

• die Daten werden in Dateien des File-Systems gespeichert

Was ist eine „Datenbank“? (1)

Page 4: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 4

Datenbanksystem (DBS)

• In einem DBS werden Daten nach einheitlichen Regeln gespeichert (persistente Datenhaltung) und verwaltet.

• Alle Benutzer und Anwendungen können nach einheitlichen Regeln auf die gespeicherten Daten zugreifen.

• DBS = Datenbasis + DB-Verwaltungssystem (DBMS)

Was ist eine „Datenbank“? (2)

Page 5: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 5

DBMS (Data Base Management System)

• Programme zur Verwaltung persistenter Daten (der sog. Datenbasis)

• liegt in der Funktionalität zwischen Anwendungsprogrammen und Betriebssystem

• effiziente Verwaltung großer Datenmengen

• ein einheitliches Datenmodell liegt zugrunde, mit dessen Konzepten alle Daten einheitlich beschrieben werden.

• Operationen und deskriptive Sprachen wie z.B. SQL: DDL (Data Definition Language), DML (Data Manipulation Language), DCL (Data Control Language) …

• Transaktionskonzepte und Mehrbenutzerbetrieb

• Datenschutz und Datensicherheit (vgl. Heuer/Saake: Datenbanken, 1995)

Was ist eine „Datenbank“? (3)

Page 6: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 6

Data Dictionary

• Informationsbasis des DBMS zur Speicherung und Verwaltung der ,Anwendungsdaten‘

• Informationsbasis für DB-Benutzer zur Suche nach gespeicherten ,Anwendungsdaten‘, Gewinnung von Strukturdaten und Diagnose von Leistungsproblemen

• enthält die Daten, die den Datenbestand beschreiben/ definieren: Metadaten/Verwaltungsdaten (Informationen über: Tabellennamen, Attributnamen, Datentypen, Beziehungen …)

• Metadatenbank arbeitet mit den gleichen Konzepten wie das DBMS selbst (Tabellen, Attribute, Beziehungen, gleiche Anfragesprache …)

Was ist eine „Datenbank“? (4)

Page 7: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 7

Ein Datenmodell stellt einen allgemeinen Begriffsapparat zur Verfügung, der es gestattet, Realitätsausschnitte ohne Eingrenzung auf ein bestimmtes Sachgebiet zu modellieren.

Mit dem Datenmodell werden die Datenobjekte und die Operatoren auf diesen Objekten festgelegt.

Das Datenmodell ist somit analog zu einer Programmier-sprache, die Datentypen und Funktionen werden mit Mitteln der Datenbanksprache beschrieben.

(Vossen, 1999)

Was ist ein Datenmodell?

Page 8: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 8

• Flache Dateien (vor DB-Zeitalter/ohne DB)

• Hierarchische Datenbanken

• Netzwerkdatenbanken

• Relationale und objektrelationale Datenbanken

• Objektorientierte Datenbanken

• NoSQL-Datenbanken (Dokumente, Graphen)

Nach dem Typ des Datenmodells:(und der zeitlichen Entwicklung)

Klassifizierung von Datenbanken

Page 9: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 9

Die Daten und ihre Beziehungen werden in Tabellen (Relationen) abgebildet. Eine Tabelle ist horizontal in Zeilen und vertikal in Spalten aufgeteilt. Jeder Datensatz wird als Zeile dargestellt. Die Zeilen heißen Tupel und die Spaltenüberschriften Attribute.

Auftrags_Nr Autrags_Typ Kun_Nr …1 Auftrag 1 …2 Auftrag 2 …3 Angebot 5 …4 Auftrag 2 …5 Angebot 3 …… … … …

TNR Auftrags_Nr Menge1 1 1

31 1 231 2 260 2 157 2 1

TNr Bezeichnung Artikel_Typ Verkaufspreis …1 Rocky Mountain Element Race Typ 1 Mountainbike 3500 …31 Herrenrad GT-LTS 18 Rennrad 3500 …54 Klapprad Prompton P3 Klapprad 1600 …55 CANNONDALE FSL Mountainbike 3700 …56 HERCULES NEPA Trekkingrad 1700 …57 Steppenwolf TAO Mountainbike 1900 …58 SWITCHBACK AGENT Jugendrad 899 …

Relationale Datenbank

Page 10: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 10

Informationssystem vs. Datenbanksystem• Ein Informationssystem (IS) besteht aus Menschen und

Maschinen, die Informationen erzeugen und/oder benutzen und die durch Kommunikationsbeziehungen miteinander verbunden sind.

• Ein rechnergestütztes Informationssystem (CIS) ist ein System, bei dem die Erfassung, Speicherung und/oder Transformation von Informationen durch den Einsatz von EDV teilweise automatisiert ist.

Hardware

Datenbanksystem

Anwendungssysteme

Betriebssystem

CIS

IS

Page 11: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 11

Beispiele für Informationssysteme• Universitätsdatenbank

– Objekte: Fachbereiche, Studenten, Professoren, Mitarbeiter, Vorlesungen, Prüfungen

– Anwendungen: ImmatrikulationAusfertigung von StudienbescheinigungenStundenplanerstellungRaumbelegungAusstellung von ZeugnissenStatistiken

• Bank-Informationssystem– Objekte: Partner (Kunden, Geschäftspartner), Produkte (bestehend

aus Features), Tarife, Standardkosten, Konten, Finanzinstrumente, Geschäftsprozesse (Beschreibungen und Logs), Referenzdaten (z.B. Kalender)

– Anwendungen: Buchung von Zahlungsvorgängen auf verschiedenen KontenEinrichten und Auflösen von KontenZinsberechnung und VerbuchungPersonalverwaltung (Gehaltsabrechnung)Bereitstellung von Statistiken über Kundenverhalten zu

Marketing-Zwecken

Page 12: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 12

Typen von Informationssystemen

Information Retrieval (Recherche-Systeme)

Kommerzielle EDV Wiss.-techn. Anwendungen

große Datenmengen (unformatiert)

große Datenmengen (formatiert)Einfache Daten-struktur/Datentypen

Kleine Datenmengen, numerische Daten

Komplexe Suchalgorithmen

Einfache Algorithmen Komplexe Algorithmen

Retrieval-orientiert Update-orientiert, transaktionsorientiert

prozeßorientiert

Non-Standard-Anwendungen

große Datenmengen (formatiert und unformatiert)

Komplexe Datentypen

Komplexe Algorithmen

Komplexe Transaktionen

Datenbankmanagementsysteme

Page 13: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 13

Entwicklung der Datenbanken (1)

Vor 1960 1960-65

Daten in nicht-magnetischen Medien (z.B. Lochkarten) gespeichert

Plattenspeicher und Trommeln: Direktzugriff auf Daten über deren Adressen

Daten auf sequentiellen magnetischen Medien (Magnetband)

Große Datenmengen weiter auf Magnetband

Daten werden als anwendungsspezifische Dateien gespeichert, auch Zugriffsmechanismen in Anwendungen

Page 14: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 14

Entwicklung der Datenbanken (2)

1965-70 1970-80

Erstes DBMS von Bachman: Integrated Data Store (IDS), Netzwerk-Datenmodelle, CODASYL-Standard

Standardisierung

IBM: Information Management System (IMS), hierarch. Datenmodell

Relationenmodell

ERM (Chen, 1976)

DB-Systeme

Data Dictionary

Page 15: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 15

Entwicklung der Datenbanken (3)

1980-90 1990-20xx

Kommerzielle relationale Datenbanksysteme (DB2, Oracle, MS-SQL Server, Sybase, Informix)

Generische anwendungsorientierte Schichten on top of a DBMS (z.B. SAP, Oracle), die applikationsspezifisch angepasst werden können

Objektorientierte Datenbanksysteme (z.B. Objektstore)

Data Warehouse Systeme (z.B. SAS)

Erweiterbare Datenbanksysteme mit neuen Datentypen für multimediale Anwendungen (z.B. Text, Image)

Anbindung von Datenbanken ans Internet (Web 1.0 → Web 2.0)

Wissensdatenbanken

Zukunft: Steigende Datenmengen in Vielfalt und Umfang → wachsende Anforderungen an DB-Technologie (Big Data)

Page 16: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 16

Vorteile eines DBMS• Datenunabhängigkeit• Effizienter Zugriff• Verminderte Entwicklungszeit• Kontrolle der Datenintegrität• Zugriffskontrolle auf die Daten• Datensicherheit und Zugriffskontrolle auf die Daten

(Korrektheit bei fehlerhaftem Ablauf einzelner Anwendungen und System-absturz)

• Einheitliche Datenadministration• Unterstützung von Nebenläufigkeit (Concurrency Control)• Recovery-Fähigkeiten (Korrektheit bei fehlerhaftem

Ablauf einzelner Anwendungen und Wiederherstellung der DB nach System-Crash)

Page 17: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 17

Unter Datenunabhängigkeit versteht man die Unabhängigkeit von Anwendungsprogrammen und den Daten, die die Anwendungsprogramme benötigen.

Datenbank

Programm 1 Programm x Programm y. . . . .

Datenunabhängigkeit (1)

Page 18: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 18

Welche Vorteile hat die Datenunabhängigkeit?• Weniger Redundanz

• keine inkonsistenten Daten

• Anpassungsfähigkeit

Arten der Datenunabhängigkeit• vertikal und logisch: Anwenderprogramme von den Daten

• horizontal und logisch: Anwenderprogramme untereinander

• physisch: Unabhängig von der physikalischen Speicherung

Datenunabhängigkeit (2)

Page 19: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 19

Datenmanipulation (DML)

Datendefinition (DDL)

Physische Datenspeicherung und Administration (DCL)

Hardware: Speichermedium

Anwendungs-programm 1

Anwendungs-programm 2

Anwendungs-programm n

Anwender

DB

MS

... .

.

Datenabfragesprache (DQL)

Sprachebenen und Sprachklassen

Page 20: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 20

Datenbankendbenutzer

Datenbank-entwickler

DBA

Kategorien von Datenbankbenutzern

Page 21: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 21

• Datenbankdesign, Anlegen der Datenbank

• Softwareinstallation und -wartung

• Speicherplatzverwaltung

• Implementierung von Sicherheitsmechanismen

• Laden von Daten

• Backup und Recovery.

• Reorganisation von Datenbeständen

• Systembeobachtung und-Tuning

Aufgaben des Datenbankadministrators

Page 22: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 22

Systemanalyse • Entwurf des konzeptionellen Datenbankmodells, z.B. Erstellung eines ER-Modells• Erstellung einer kompletten Aufgabenbeschreibung• Abstimmung mit bestehenden Applikationen und Einbindung in eine komplexes Datenmodell

Ad-Hoc-Abfragen• Beobachtung der Datenbank und der Entwicklung der Datenmenge• Beantwortung von Benutzerfragen, die nicht fest programmiert werden sollen • Bedienung von SQL-Werkzeugen

Aufgaben des Datenbankentwicklers (1)

Page 23: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 23

Anwendungsentwicklung

• Entwicklung von Masken

• Entwicklung von Reports, schriftlichen Dokumenten

• Programmiersprache: 4 GL-Sprachen, wie PL/SQL von ORACLE

• Erstellung von Datenbankprozeduren und Datenbanktriggern in Datenbank

• Anbindung der Datenbank ans INTERNET, z.B. mit JDBC und Java

Aufgaben des Datenbankentwicklers (2)

Page 24: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 24

• Benutzung der vom Datenbankentwickler erstellten Programme

• Benutzung von QBE-Werkzeugen (Query by Example) zur Beantwortung von Ad-Hoc-Abfragen

Aufgaben des Datenbankendbenutzers

Page 25: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 25

Buffer-manager

Data-Manager

Ebene 5

Seitenschnittstelle

Recordorientierte Schnittstelle

Transaktionsverwaltung

SchedulerRecovery-Manager

Person PersonBenutzerschnittstelle

Mengenorientierte Schnittstelle

Da

ten

ban

kma

nag

emen

tsys

tem

Ebene 4

Code- Erzeugung

OptimiererZugriffsplan-

erstellung

Query-prozessor

Update-Prozessor

Integritäts-prtüfung

Ebene 2

Ebene 3

Daten-basis

Geräteschnittstelle

LogBuch

Data-Dictionary

Person

Input/Output- Prozessor

Parser Precompiler

Autorisierungskontrolle

Ebene 1

Datenbankarchitektur

Page 26: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 26

Anwendung1

Anwendungn

externeDatenstruktur externe

Datenstruktur

externeDatenstruktur

konzeptionelles Schemaanwendungs- und datenunabhängige Datenstruktur

physische Datenstruktur

Datenbankschemaanwendungsunabhängig / datenbankspezifisch

Anwendung2 ...

ANSI-3-Ebenen-Modell

Page 27: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 27

Flughafenbetrieb

Externe Ebene

Benutzersicht auf den Flugbetrieb, also z.B.

• Unterstützung von Buchung,

• Auswahl und Reservierung der Plätze

• die Ausgabe der Flugscheine

• mehr und mehr über das INTERNET

Beispiel zum ANSI-3-Ebenen-Modell

Page 28: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 28

Sitzplatz

Coupon Flug

Fluggast

Flugzeug

Ticket

.

Konzeptionelles Schema

Page 29: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 29

Das Datenbankschema besteht bei einer relationalen Datenbank aus dem Relationenschema, also den Tabellen, die in der Datenbank abgelegt werden sollen.

Nr Position Raucherkennzeichen

1 rechts nein

2 rechts nein

23 links ja

Nr. von nach Uhrzeit Datum

216 Köln München 14.11 2.12.95

217 Köln Paris 15.15 2.12.95

218 Köln Tokio 16.00 2.12.95

Sitzplatz Flug

Datenbankschema

Page 30: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 30

Physische Speicherstruktur der Daten:

• Indizes (z.B. Baum- Baumstruktur)

• Hash-Zugriff

• Heap

• Indizes

8

5 12 15

1 3 6 7 9 11 13 16 18

Interne Ebene

Beschreibt die Daten in Form von Datensätzen (Records), spezifischen Zugriffspfaden, die Abbildung der logischen Records auf die Speicherstrukturen (physische Records, Seiten)

Page 31: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 31

Concurrency Control• Nebenläufige Ausführung von Anwendungsprogrammen

wichtig für Performance–Nebenläufige Arbeit wichtig für gute CPU-Auslastung

• Überlappende Aktionen von verschiedenen Programmen können zu Inkonsistenz führenz.B. Berechnung eines Kontostandes durch eine Transaktion und gleichzeitige Ausführung einer Überweisung

• DBMS garantiert Isolation und Konsistenz• Isolation

Illusion einer Transaktion, allein Zugriff auf die Datenbank zu haben. Eine Transaktion sieht nur einen konsistenten Zustand der Datenbank.

• KonsistenzKorrekter Ablauf einer Transaktion

Page 32: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 32

Transaktionskonzept• Transaktion

– Atomare Sequenz von Datenbank-Aktionen (read / write)

• Atomizität = All or Nothing• Jede Transaktion hinterläßt die DB in einem konsistenten

Zustand, wenn diese bei Transaktionsbeginn schon konsistent war.

– Benutzer können Integritätsbedingungen auf den Daten formulieren, die vom DBMS kontrolliert werden.

– Das DBMS “versteht“ nicht die Semantik der Daten Benutzer ist für den korrekten Ablauf einer Transaktionen verantwortlich

– DBMS garantiert, daß die verschachtelte Ausführung einer Menge von Transaktionen {T1, ..., Tn} äquivalent zu irgendeiner seriellen Ausführung T1... Tn sind.

Page 33: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 33

Datensicherheit• DBMS sichert Atomizität auch, wenn das System mitten

in einer Transaktion abstürzt• Idee: Protokollierung aller Aktionen (Logging), die vom

DBMS ausgeführt werden während der Ausführung der Transaktionen

– Vor dem Ändern der DB wird der entsprechende Log-Eintrag auf einen sicheren Platz geschrieben.

– Nach einem Crash werden die Effekte von teilweise ausgeführten Transaktionen zurückgesetzt (undo)

• Logging von– Write (alter und neuer Wert) durch Ti– Commit oder Abort von Ti

• Logs werden oft zusätzlich gesichert auf einem anderen Datenträger

• Alle Aktivitäten von Logging und Concurrency Control werden transparent durch das DBMS behandelt.

Page 34: Prof. Dr. T. Kudraß1 Einführung. Prof. Dr. T. Kudraß2 Informationsflut Motivation –Komplexe Datenstrukturen –Aktuelle, richtige, redundanzfreie Daten

Prof. Dr. T. Kudraß 34

Zusammenfassung• Vorteile eines Datenbanksystems

– Integrierter Datenbestand Vermeidung von Redundanz– Konsistenz, höhere Qualität des Datenbestandes– Einheitliche Mechanismen für Datenschutz, Datensicherheit

(Recovery) und Nebenläufigkeit (Concurrency Control)– Physische und logische Datenunabhängigkeit– Leichtere und schnellere Programmentwicklung und -

wartung durch einheitliche und explizite Strukturdarstellung, Nutzung von 4GL, Form- und Reportgeneratoren

– Optimierbare Anfragesprache (Query Language)• Nachteile eines Datenbanksystems

– General-Purpose Software oft weniger effizient als spezialisierte Software

– Bei konkurrierenden Anforderungen kann DBS nur für einen Teil der AP optimiert werden

– Kosten: DBMS und zusätzliche Hardware– Hochqualifiziertes Personal (DB-Administration)– Verwundbarkeit durch Zentralisierung (Ausweg: Verteilung)