Sie sind hier
E-Book

Datenbanken

Grundlagen und XML-Technologien

AutorGeorg Lausen
VerlagSpektrum Akademischer Verlag
Erscheinungsjahr2005
Seitenanzahl292 Seiten
ISBN9783827414885
FormatPDF
KopierschutzDRM
GerätePC/MAC/eReader/Tablet
Preis18,00 EUR
Relationale Datenbanken sind seit vielen Jahren ein etablierter Bestandteil eines Informationssystems. Die zu beobachtende fortwährende Weiterentwicklung der technologischen Infrastruktur der Informationsverarbeitung berührt auch die Einsatzbereiche von Datenbanken. Dieses Buch vermittelt deshalb in gut verständlicher Weise die grundlegenden klassischen Zusammenhänge relationaler Datenbanken zusammen mit den kontinuierlich an Bedeutung gewinnenden XML-Technologien, die im Zuge der allgegenwärtigen Durchdringung der Informationsverarbeitung durch das Internet entwickelt werden.

In überschaubaren Kapiteln lernen Sie alle wichtigen Konzepte zu den klassischen Datenbankthemen Anfragesprachen, Integrität, Datenbankentwurf, Speichertechniken, Anfragebearbeitung, Transaktionen und Sicherheit kennen. Die Datenbanksprache SQL wird insbesondere ausführlich behandelt. Neben den im Standard SQL-92 definierten Konzepten werden auch wesentliche, in den Standards SQL:1999 und SQL:2003 dokumentierte Weiterentwicklungen dargestellt. Zahlreiche Beispiele machen Sie mit den neu gelernten Begriffen und Sachverhalten vertraut.

Das Speichern, Erzeugen und Verarbeiten von XML-Dokumenten wird zunehmend relevant für Datenbanken. Deshalb ist ein Schwerpunkt des Buchs die Speicherung von XML-Dokumenten in relationalen Datenbanken, das Publizieren von XML-Dokumenten aus relationalen Datenbanken gemäß dem SQL/XML-Standard sowie XPath und XQuery, die vom W3C standardisierten Anfragesprachen für XML. Eine Vielzahl von Übungen (mit Lösungen auf einer begleitenden Webseite) erleichtert Ihnen die Wiederholung und Vertiefung des Lernstoffs.

Der Autor

Prof. Dr. Georg Lausen lehrt und forscht an der Albert-Ludwigs-Universität Freiburg. Er ist Leiter der Arbeitsgruppe Datenbanken und Informationssysteme. Seine aktuellen Forschungsthemen betreffen die Bereiche Informationsintegration, elektronische Kataloge, Metasuchmaschinen, Recommender-Systeme und die Theorie semistrukturierter Daten.  

Kaufen Sie hier:

Horizontale Tabs

Leseprobe
9 Auswertung von Anfrageoperatoren (S.217)

Wir haben in den voran gehenden Kapiteln gesehen, wie wir eine Datenbank strukturieren und wie wir Anfragen an sie formulieren können. Wir kennen die grundlegenden Speichertechniken und Indexstrukturen einer physischen Datenbank. In diesem Kapitel wollen wir zunächst diskutieren, wie geeignete Basisoperatoren einer Anfragesprache auf den Gegebenheiten einer physischen Datenbank effizient ausgewertet werden können.

Basisoperatoren sind primär die Operatoren der Relationenalgebra; die für SQL typischen Aggregierungsoperatoren werden wir streifen. Darüber hinaus wollen wir die grundlegenden Prinzipien eines Anfrageoptimierers kennen lernen. Damit schließt sich die letzte Lücke zwischen der Formulierung einer Anfrage und ihrer Auswertung.

Wir behandeln auch die Problematik einer effizienten Auswertung eines XPath- Ausdrucks über einem in einer relationalen Datenbank gespeicherten XMLBaum. Wir präsentieren eine für alle Achsen eines XPath-Ausdrucks anwendbare Auswertungstechnik und stellen eine Optimierung für die descendant- Achse vor.

9.1 Selektion

Beginnen wir mit einer Selektion der Form ó[A op val]R, wobei R ein Relationsschema, A ein Attribut von R und op ein arithmetischer Vergleichsoperator. Angenommen, für R existiert keine Indexstruktur zu A und die Relationen zu R seien nicht nach A sortiert gespeichert. In diesem Fall kann nur mittels vollständigem Durchsuchen der Relation die Selektion ausgewertet werden.

Liegt eine Sortierung zu A vor, dann können wir das Tupel mit Suchschlüsselwert val durch binäres Suchen lokalisieren und, sofern op nicht der Gleichheitsoperator, die restlichen die Suchbedingung erfüllenden Tupel ausgehend hiervon bestimmen. Analog, liegt eine Baum-Indexstruktur über A vor, können wir das Tupel mit Suchschlüsselwert val, bzw. seine Adresse, lokalisieren und die restlichen die Suchbedingung erfüllenden Tupel, bzw. ihre Adressen, ausgehend von diesem erreichen. Eine Hash-Indexstruktur kann hier nur helfen, wenn op der Gleichheitsoperator ist.

Angenommen, die Selektionsbedingung besteht aus einer Konjunktion atomarer Selektionsbedingungen. Sei beispielsweise (LGrad < 10 ∧ BGrad < 50) eine Bedingung über der Relation Stadt. Existiert zu keinem der beiden Attribute eine Indexstruktur, dann bleibt nur ein vollständiges Durchsuchen der Relation. Für jedes gefundene Tupel kann dann die Bedingung überprüft werden.

Existiert mindestens eine Indexstruktur zu den Attributen der Selektionsbedingung, dann können wir in Abhängigkeit dieser Bedingung auf die Tupel zugreifen und für jedes gelesene Tupel die restlichen Bedingungen überprüfen. Existieren getrennte Indexstrukturen zu beiden Attributen, dann kann alternativ zunächst der Durchschnitt der entsprechenden Adresslisten gebildet werden und danach zu den die gesamte Bedingung erfüllenden Tupeln zugegriffen werden. Steht ein geeigneter mehrdimensionaler Index über beiden Attributen zur Verfügung, dann kann mittels diesem direkt zu den die Eigenschaften erfüllenden Tupel zugegriffen werden.

Haben wir in der Selektionsbedingung Disjunktionen, dann überführen wir die Selektionsbedingung zunächst in konjunktive Normalform, d.h., eine Konjunktion von Disjunktionen. Sei beispielsweise (Einwohner > 1000 ∨ (LGrad < 10 ∧ BGrad < 50)) die ursprüngliche Bedingung, dann erhalten wir die konjunktive Normalform ((Einwohner > 1000 ∨ LGrad < 10) ∧(Einwohner > 1000 ∨ BGrad < 50)).

Für eine möglichst effizienten Auswertung werden wir zunächst versuchen, konjunktiv verknüpfte Selektionsbedingungen zur Einschränkung der zu betrachtenden Tupel auszuwerten. In unserem Beispiel werden wir zunächst eine der beiden Disjunktion auswerten und dann die andere auf der resultierenden Menge von Tupeln betrachten. 
Inhaltsverzeichnis
Vorwort6
Inhaltsverzeichnis8
1 Einführung12
1.1 Grundbegriffe12
1.2 Datenmodelle20
1.3 Das relationale Datenmodell23
2 Grundlagen von Anfragesprachen28
2.1 Relationenalgebra28
2.2 Relationenkalkül36
2.3 Zusammenfassung41
3 Der SQL-Standard44
3.1 Überblick44
3.2 Einfache Anfragen47
3.3 Basis-Datentypen52
3.4 Nullwerte54
3.5 Aggregierungsfunktionen54
3.6 Gruppierungen55
3.7 Mengenoperatoren58
3.8 Geschachtelte Anfragen59
3.9 Struktur der Syntax63
3.10 Konstruierte Datentypen67
3.11 OLAP: ROLLUP und CUBE69
3.12 WITH-Klausel und Rekursion71
3.13 Anfragen über Bäumen78
3.14 Einfügen, Löschen und Ändern81
3.15 Sichten85
3.16 SQL und Programmiersprachen89
3.17 Integrität und Trigger94
3.18 Zugriffskontrolle106
3.19 Arbeiten mit Schema-Definitionen110
3.20 Zusammenfassung112
4 Konzeptueller Datenbankentwurf116
4.1 Datenbankentwurf116
4.2 Entitiy-Relationship-Modell117
4.3 Unified Modeling Language130
4.4 Zusammenfassung133
5 Datenaustausch mit XML136
5.1 Extensible Markup Language (XML)136
5.2 Definition von Dokumenttypen (DTD)141
5.3 XPath145
5.4 XML-Schema153
5.5 XML Query159
5.6 Zusammenfassung170
6 SQL und XML174
6.1 SQL/XML174
6.2 Speichern von XML181
6.3 XPath und SQL184
6.4 Zusammenfassung189
7 Formaler Datenbankentwurf192
7.1 Motivation192
7.2 Funktionale Abhängigkeiten194
7.3 Verlustfreie und abhängigkeitsbewahrende Zerlegungen201
7.4 Normalformen204
7.5 Algorithmen zur Normalisierung206
7.6 Weitere Abhängigkeiten und Normalformen209
7.7 Zusammenfassung211
8 Physischer Datenbankentwurf214
8.1 Grundlagen214
8.2 Dateiorganisationsformen und Indexstrukturen217
8.3 Baum-Indexstrukturen221
8.4 Hash-Indexstrukturen224
8.5 Zusammenfassung225
9 Auswertung von Anfrageoperatoren228
9.1 Selektion228
9.2 Projektion230
9.3 Verbund230
9.4 Mengenoperatoren und Aggregierung233
9.5 Optimierung234
9.6 XPath-Anfragen238
9.7 Zusammenfassung245
10 Transaktionsverwaltung248
10.1 Grundlagen248
10.2 Mehrbenutzerkontrolle250
10.3 Fehlerbehandlung265
10.4 Transaktionsmodelle269
10.5 Verteilte Transaktionen271
10.6 Zusammenfassung279
Literaturverzeichnis282
Index286

Weitere E-Books zum Thema: Datenbanken - Datenbanktheorie - Datenbankentwicklung

Oracle Security in der Praxis

E-Book Oracle Security in der Praxis
Sicherheit für Ihre Oracle-Datenbank Format: PDF

Sicherheit ist gerade für Datenbanken ein zentrales Thema, da sie sehr häufig die Basis für den Geschäftserfolg bilden. Die Angriffsmöglichkeiten sind zahlreich und seit auch über das Internet auf…

Oracle Security in der Praxis

E-Book Oracle Security in der Praxis
Sicherheit für Ihre Oracle-Datenbank Format: PDF

Sicherheit ist gerade für Datenbanken ein zentrales Thema, da sie sehr häufig die Basis für den Geschäftserfolg bilden. Die Angriffsmöglichkeiten sind zahlreich und seit auch über das Internet auf…

111 Thesen zur erfolgreichen Softwareentwicklung

E-Book 111 Thesen zur erfolgreichen Softwareentwicklung
Argumente und Entscheidungshilfen für Manager. Konzepte und Anleitungen für Praktiker Format: PDF

Ziel dieses Buches ist es, Managern Argumente und Entscheidungshilfen für die Einführung effizienter Techniken der Softwareentwi- lung zu geben, und Praktiker von der Notwendigkeit effizienter…

111 Thesen zur erfolgreichen Softwareentwicklung

E-Book 111 Thesen zur erfolgreichen Softwareentwicklung
Argumente und Entscheidungshilfen für Manager. Konzepte und Anleitungen für Praktiker Format: PDF

Ziel dieses Buches ist es, Managern Argumente und Entscheidungshilfen für die Einführung effizienter Techniken der Softwareentwi- lung zu geben, und Praktiker von der Notwendigkeit effizienter…

111 Thesen zur erfolgreichen Softwareentwicklung

E-Book 111 Thesen zur erfolgreichen Softwareentwicklung
Argumente und Entscheidungshilfen für Manager. Konzepte und Anleitungen für Praktiker Format: PDF

Ziel dieses Buches ist es, Managern Argumente und Entscheidungshilfen für die Einführung effizienter Techniken der Softwareentwi- lung zu geben, und Praktiker von der Notwendigkeit effizienter…

111 Thesen zur erfolgreichen Softwareentwicklung

E-Book 111 Thesen zur erfolgreichen Softwareentwicklung
Argumente und Entscheidungshilfen für Manager. Konzepte und Anleitungen für Praktiker Format: PDF

Ziel dieses Buches ist es, Managern Argumente und Entscheidungshilfen für die Einführung effizienter Techniken der Softwareentwi- lung zu geben, und Praktiker von der Notwendigkeit effizienter…

111 Thesen zur erfolgreichen Softwareentwicklung

E-Book 111 Thesen zur erfolgreichen Softwareentwicklung
Argumente und Entscheidungshilfen für Manager. Konzepte und Anleitungen für Praktiker Format: PDF

Ziel dieses Buches ist es, Managern Argumente und Entscheidungshilfen für die Einführung effizienter Techniken der Softwareentwi- lung zu geben, und Praktiker von der Notwendigkeit effizienter…

Weitere Zeitschriften

aufstieg

aufstieg

Zeitschrift der NaturFreunde in Württemberg Die Natur ist unser Lebensraum: Ort für Erholung und Bewegung, zum Erleben und Forschen; sie ist ein schützenswertes Gut. Wir sind aktiv in der Natur ...

AUTOCAD & Inventor Magazin

AUTOCAD & Inventor Magazin

FÜHREND - Das AUTOCAD & Inventor Magazin berichtet seinen Lesern seit 30 Jahren ausführlich über die Lösungsvielfalt der SoftwareLösungen des Herstellers Autodesk. Die Produkte gehören zu ...

Correo

Correo

 La Revista de Bayer CropScience para la Agricultura ModernaPflanzenschutzmagazin für den Landwirt, landwirtschaftlichen Berater, Händler und am Thema Interessierten mit umfassender ...

DER PRAKTIKER

DER PRAKTIKER

Technische Fachzeitschrift aus der Praxis für die Praxis in allen Bereichen des Handwerks und der Industrie. “der praktiker“ ist die Fachzeitschrift für alle Bereiche der fügetechnischen ...

DSD Der Sicherheitsdienst

DSD Der Sicherheitsdienst

Der "DSD – Der Sicherheitsdienst" ist das Magazin der Sicherheitswirtschaft. Es erscheint viermal jährlich und mit einer Auflage von 11.000 Exemplaren. Der DSD informiert über aktuelle Themen ...

Eishockey NEWS

Eishockey NEWS

Eishockey NEWS bringt alles über die DEL, die DEL2, die Oberliga sowie die Regionalligen und Informationen über die NHL. Dazu ausführliche Statistiken, Hintergrundberichte, Personalities ...