XML und Datenbanken

Werbung
Prüfung
z
Die Prüfung zur Vorlesung „XML und Datenbanken“ findet schriftlich in
den Semesterferien statt
–
–
–
Datum: 24.3.2003 (laut provisorischem Prüfungsplan)
Hilfsmittel: keine
Dauer: 90 min
z
Die Schnellübung am Ende des Vorlesungszeitraums entfällt
z
Keine mündliche Prüfung
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-1
Kapitel 10
Updates und
Transaktionsverwaltung für die
XML-Verarbeitung
Updates auf XML-Dokumenten
Grundlagen der Transaktionsverwaltung
Unterstützung durch DBMS
Mehrschichtenansatz für XML
Updates auf XML-Dokumenten
z
Anforderungen an eine Datenmanipulationssprache für XML
–
–
–
z
Naiver Ansatz
–
–
–
–
z
Dokumente sollen beliebig abänderbar sein
Deklarative Definition der Änderungen
Zusammenspiel mit den bislang diskutierten Anfragesprachen (siehe Kap. 4)
Änderungen als eine Folge von DOM-Operationen definieren
Dokument(e) in einen DOM-Prozessor laden
Änderungen durchführen
Dokumenten zurückschreiben
Problem des naiven Ansatzes
–
–
–
DOM ist navigierend und nicht deklarativ, also nicht mengenorientiert
DOM-Prozessoren erfordern typischerweise eine Programmiersprache
Kein Zusammenspiel mit deklarativer Anfrage-Sprache für XML
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-3
Erweiterung von XQuery für Updates
z
W3C XQuery ist der zukünftige Standard für XML-Anfragesprachen
z
Vorschlag für eine Erweiterung basierend auf XQuery‘s FLWR-Ausdrücken
FOR $Variablenbindung1 IN Pfadausdruck1
LET $Variablenbindung2 := Pfadausdruck2
WHERE Prädikat
UPDATE {UpdateOperation}
z
Update-Operation auf Variablenbindung $Knoten
–
–
–
–
–
z
Löschen eines Kindknoten:
DELETE $Knoten
Umbenennen eines Kindknotens:
RENAME $Knoten TO Name
Einfügen von XML-Inhalten:
INSERT Inhalt [BEFORE | AFTER $Knoten]
Ersetzen von XML-Inhalten:
REPLACE $Knoten WITH Inhalt
$Knoten kann Element oder Attribut sein
Operationen decken alle auch mit DOM möglichen Änderungen ab
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-4
Beispiel für eine Änderung
Update:
FOR $book IN //book
$bookyear IN $book/@year
WHERE $book/title = ‘Data on the Web’
UPDATE $book
DELETE $bookyear,
INSERT <author>Buneman</author>,
INSERT <author>Suciu</author>
INSERT new_attribute("1-55860-622-X“, isbn)
Einfügen am
Ende der
Liste der
Kindknoten
Attributkonstruktor
Dokument vor der Änderung:
Dokument nach der Änderung:
<book year="1999" >
<title>Data on the Web</title>
<abstract> … </abstract>
<author>Abiteboul</author>
</book>
<book isbn="1-55860-622-X">
<title>Data on the Web</title>
<abstract> … </abstract>
<author>Abiteboul</author>
<author>Buneman</author>
<author>Suciu</author>
</book>
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-5
Motivation für Transaktionen
z
Transaktion: Verarbeitungseinheit bestehend aus einer oder mehreren
Operationen
z
Wesentliche Voraussetzung für eine zuverlässige
Informationsverarbeitung
–
–
z
Korrektes paralleles Verarbeiten von Updates und Retrieval
Fehlertoleranz
Viele wichtige Anwendungen erfordern Transaktionen
–
–
Datenzentrisches Beispiel: Banküberweisung
Dokumentzentrisches Beispiel: Einladen einer verlinkten Dokumentstruktur
z
Bislang keine Transaktionen bei der XML-Verarbeitung berücksichtigt
z
Viele (bspw. geschäftskritische) XML-Anwendungen erfordern dies aber
z
Zielsetzung dieses Kapitels
–
–
–
Kurze Einführung in das Transaktionskonzept
Eignung schon verfügbarer Transaktionsmanagern für die XML-Verarbeitung
Transaktionsverwaltung für XML anpassen und erweitern
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-6
Transaktionseigenschaften
z
ACID-Eigenschaften:
–
–
–
–
z
A: Atomarität (atomicity) – Alle Operationen werden entweder erfolgreich
durchgeführt (Commit), oder die Transaktion hinterlässt keine Effekte (Abort)
C: Konsistenz (consistency) – Eine Transaktion überführt ein DB von einem
konsistenten Zustand in einen nächsten. Konsistenz ist definiert über die
semantischen Integritätsbedingungen.
I: Isolation (isolation) – Jede Transaktion arbeitet auf der DB, als wäre sie die
einzige derzeit aktive Transaktion. D.h., sie sieht keine inkonsistenten
Zwischenzustände anderer Transaktionen.
D: Persistenz (durability) – Alle erfolgreich abgeschlossenen Änderungen sind
wiederherstellbar (bspw. nach einem Fehler)
Implementierung der Eigenschaften
–
–
Isolation: Concurrency Control / Scheduler
Atomarität: Recovery Manager
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-7
Schedules und Serialisierbarkeit
z
Ziel: korrekte Isolation bei paralleler Verarbeitung garantieren
z
Schedule (siehe auch ISK)
–
–
–
z
Konflikt (siehe ISK)
–
–
–
z
Modell möglicherweise verzahnter Transaktionen
Enthält Operationen der Transaktion (evtl. über mehrere Ebenen)
Gibt Auskunft über die Konflikte zwischen Transaktionen und ihren
Operationen
zwischen Operationen verschiedener Transaktionen
Beispiel für syntaktisches Konfliktverständnis: Read/Write-Operationen auf
gleichem Datenobjekt sind im Konflikt
Beispiel für semantisches Konfliktverständnis: Gutschriften auf gleichem
Konto kommutieren, stehen nicht im Konflikt zueinander
Korrektheitsbegriff der Konfliktserialisierbarkeit
–
–
Graph der Konfliktbeziehungen (Serialisierungsgraph) ist azyklisch
keine inkonsistenten Informationsflüsse zwischen Transaktionen
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-8
Beispiel für einen Schedule
T2
p2
T1
p1
q1
q2
r2(u) r2(v) r1(s) r1(t) w1(u) w1(v) w2(t) w2(s)
XML-Ebene
mit Konflikten
Seitenebene
mit Konflikten
Seitenebene: syntaktisch nicht serialisierbar – zyklische Konfliktrelationen
XML-Ebene: serialisierbar – da keine Konflikte
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-9
Spezielle Anforderungen von XML-Verarbeitung
an die Transaktionsverwaltung (1)
Verarbeitung
XML
klassische (in DBS)
Strukturierung der Objekte
komplex
einfach
Grösse der Objekte
eher gross
klein
Grösse der Objektmengen
variabel
gross
Art der Operationen
höhere,
semantisch reiche
read/write,
syntaktisch
Strukturierung der Operationen flach
geschachtelt
z
Ähnliche Anforderungen wie in objektorientierten Datenbanksystemen
z
Literatur: Saake/Türker/Schmitt: Objektdatenbanken, Kapitel 9
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-10
Spezielle Anforderungen von XML-Verarbeitung
an die Transaktionsverwaltung (2)
z
XML-Dokumente können sehr gross sein
–
Beispiel: ganze Datenbank ist ein einziges (grosses) Dokument
z
Sperren auf der Dokumentebene würden Parallelität stark reduzieren
oder gar ausschliessen
z
Variable Sperrgranularität bei XML-Dokumenten erforderlich
z
Ausnutzung der Semantik von Operationen
z
Sperren entlang von Pfaden ermöglichen
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-11
Problematik nebenläufiger XML-Verarbeitung
z
Nebenläufige Updates und Retrieval von XML-(Teil-)Dokumenten
z
Beispiel:
T1: Retrieve “/store/auction/price[. > 1000]”
T2: Update “/store/auction[./price = 5.20]/description”
T3: Update “/store/auction[./description = ‘PC Pentium’]”
store
auction
description
Floppy
disk
auction
price
5.20
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
description
PC
Pentium
price
4711.00
10-12
Einsatz des Transaktionsmanagers von DBS
z
Einsatz eines DBS zur Speicherung von XML (siehe Kapitel 5)
z
Transaktionsverwaltung des DBS einsetzen
T1
T2
SQL/XML-Update
SQL/XML-Update
XML
Service
XML
Service
op1
op2
XML
Service
XML
Service
op3
op7
op8
op9
Datenbanksystem
DB-Transaktionen
r2(u)
r2(v)
r1(s)
r1(t)
w1(u)
w1(v)
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
w2(t)
w2(s)
10-13
Implementierung der Transaktionseigenschaften mit
kommerziellen Datenbanksystemen
z
Zwei-Phasen-Sperrprotokoll
–
–
–
z
Sperrgranularität
–
–
z
Phase mit nur Sperranforderungen
Phase mit nur Sperrenfreigaben
Trennung der Phasen
Datenbankseiten (page level locking)
Tabellenzeilen (row level locking)
#Sperren
fo
n
A
rd
s
ha
p
gs
n
u
er
e
Fr
ei
ga
b
ep
h
as
e
t
Sperrgranularität des Datenbanksystems reflektiert nicht die Granularität
des Zugriffs bei XML-Anfragen
–
–
–
Textbasierte Speicherung: ganzer CLOB gesperrt – keine Parallelität von Leseund Schreibzugriffen
Modellbasierte Speicherung: grosse Teile der Dokumente müssen zum Zugriff
wiederhergestellt werden – wenig Parallelität von Lese- und Schreibzugriffen
Siehe das Beispiel auf der folgenden Folien zur Illustration
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-14
Beispiel für DBS-Transaktionsmanager
mit textbasierter Abbildung
store
T1: Retrieve
/store/auction/price[. > 1000]
auction
T2: Update
/store/auction[./price = 5.20]
/description
description
Floppy
disk
T3: Update
/store/auction[./description =
‘PC Pentium’]
XML
Row: [X-Lock]
S-Lock
auction
price
5.20
description
PC
Pentium
price
4711.00
DOCID
XMLTEXT
3
<store><auction>...</auction><auction>...</auction></store>
4
…
Unnötige
Blockierung
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Berechtigte
Blockierung
10-15
Alternativer Ansatz: semantische Serialisierbarkeit von
XML-Anfragen
z
Spezieller Transaktionsmanager nutzt das Datenmodell von XML aus und
die Semantik der XML-Verarbeitung aus
–
–
Pfadausdrücke auf Dokumentstruktur
Prädikate auf Dokument-/Elementinhalte
descendant-or-self (//)
customer
orders
//customer[id=‘4711‘]/orders
[date='2002/12/06']/lineitem
filter
id
opeq
('=')
'4711'
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
date
order
filter
lineitem
opeq
('=')
'2002/12/06'
10-16
Mehrschichtige Transaktionsverwaltung für XML
z
Mehrschichtiger Ansatz wie aus ISK bekannt
–
–
–
z
Datenbanksystem auf der Speicherebene
Separaten Scheduler auf der darüber liegenden XML-Ebene (Middleware)
XML-Operationen werden in Datenbanktransaktionen aufgespalten
Abbildung von der Middleware auf das DBS hängt von der Abbildung der
XML-Dokumente ab (siehe Kap. 5)
–
–
–
–
textbasierte Abbildung
modellbasierte Abbildung
strukturbasierte Abbildung
XML-Datentyp des DBS
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-17
Mehrschichtige Transaktionsverwaltung für XML
T2
T1
Scheduler für
XML
SQL/XML-Updates
XML
Service
XML
Service
XML
Service
XML
Service
XMLMiddleware
SQL/XML-Update oder SQL
op1
r2(u)
op2
r2(v)
r1(s)
op3
r1(t)
op7
w1(u)
w1(v)
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
op8
w2(t)
op9
Datenbanksystem
w2(s)
10-18
Vorteile einer mehrschichtigen
Transaktionsverwaltung für XML
z
Ausnutzen der Semantik der XML-Verarbeitung
–
–
z
XML-Transaktionen auf der höheren Ebene
Kurze Datenbanktransaktionen auf der Speicherebene
Höhere Parallelität
–
Frühe Sperrfreigabe auf der Datenbank
„
„
–
z
Textbasierte Abbildung: z.B. jeder CLOB eine eigene DB-Transaktion
Modelbasierte Abbildung: z.B. jeder Dokumentteilbaum bestimmter Grösse eine
DB-Transaktion
Höhere Nebenläufigkeit auf der höheren Ebene durch Ausnutzen der Semantik
Realisierung einer Transaktionsverwaltung für XML
–
–
Isolation: Wie erkennen wir Konflikte effizient?
Atomarität: Wie behandeln wir abgebrochene Transaktionen?
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-19
Isolation: Concurrency Control für mehrschichtige
Transaktionsverwaltung für XML
z
XML-Transaktionen auf der höheren Ebene
z
Grober Ablauf des Schedulings auf der höheren Ebene
–
Beginn der XML-Transaktion
„
„
„
–
z
Ende der XML-Transaktion
Problem der Konflikterkennung auf der höheren Ebene
–
–
Vergleich mit allen anderen Anfragen (bspw. in XPath-Syntax) nicht effizient
Geeignetere Repräsentation des aktuellen Workloads nötig
„
„
–
–
z
Interception der XML-Anfragen der Transaktion auf der Middleware-Ebene
Bestimme Konflikte mit anderen aktiven XML-Transaktionen
Erzeugen der Datenbanktransaktionen für die Speicherebene
Pfadausdrücke
Prädikate über Dokumentinhalte
Ausnutzen der hierarchischen Struktur von XML
Erweiterung des klassischen DAG-Sperrprotokolls für das Scheduling
DAG-Sperrprotokoll in Kombination mit striktem Zwei-PhasenSperrprotokoll auf der höheren Ebene garantiert Serialisierbarkeit
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-20
Klassisches DAG-Sperrprotokoll
z
Hierarchische Struktur von Datenobjekten
–
–
z
Wurzel -> Datenbank -> Datei -> Tabelle -> Tabellenzeile -> Tabellenspalte
Wurzel -> Datenbank -> Index -> Tabelle -> Tabellenzeile -> Tabellenspalte
Unterscheidung der Sperren
–
–
Intentionale Sperren: Transaktion beabsichtigt, auf ein Datenobjekt auf einer
tieferen Hierarchiestufe zuzugreifen
Normale Sperre: Transaktion liest oder schreibt das Datenobjekt
z
Erweiterte Kommutativitätsmatrix
im DAG-Sperrprotokoll
z
DAG-Sperrprotokoll:
–
–
z
Lesend: Ein Pfad von der
Wurzel zum Datenobjekt sperren
Schreibend: Alle (!) Pfade von der
Wurzel zum Datenobjekt sperren
Granted
Requested None IS IX S SIX
IS
+
+
+ +
+
IX
+
+
+ S
+
+
- +
SIX
+
+
X
+
-
X
-
Zusammen mit 2PL sind die entstehenden Schedules konfliktserialisierbar
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-21
Beispiel für das klassische DAG-Sperrprotokoll
T1: select * from book where bookkey = B4
T2: update book set author = ‘ Hugo‘ where price < 20.00
T1
IS
T2 IX
T1
IS
T2 IX
Root
DB: bookstore
T1
T2 IX
index:
book price
T1
S
T2 X
IS
T2 IX
table: book
row: B4
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-22
Isolation für XML-Verarbeitung:
DGLOCK – erweitertes DAG-Sperrprotokoll
z
Striktes Zwei-Phasen-Sperrprotokoll (auf der XML-Ebene)
–
–
z
Effizienter Konflikttest
–
–
z
XML-Dokumente sind Baumstrukturen
DAG-Sperrprotokoll also anwendbar
Überprüfung für alle Anfragepaare skaliert schlecht
Sperren der XML-Baumstrukturen nicht möglich, da Struktur nicht explizit
Zusammenfassung der XML-Struktur besser geeignet: bspw. DataGuide
store
auction
store
auction
auction
description
Floppy
disk
price
5.20
description
PC
Pentium
price
4711.00
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
description
price
10-23
DGLOCK-Protokoll
z
Verwendung des DataGuide zum Sperren
z
DAG-Sperrprotokoll auf dem DataGuide einsetzen
–
–
z
Problematik dieses Vorgehens:
–
–
–
–
z
DataGuide ist hierarchisch bei einem Wald von XML-Dokumentbäumen
DataGuide kann mehrere Wurzeln haben
DAG-Sperren auf dem DataGuide sperren auf der Schemaebene
Sperrgranularität ist zu gross
Es werden nur Pfadausdrücke beim Sperren berücksichtigt
Prädikate über Dokumentinhalte sollen auch berücksichtigt werden
Lösung:
–
–
–
Annotation der Sperren mit einfachen Prädikaten (x θ const)
Effiziente Implementierung mittels Bitstring-Signaturen
Bitoperationen auf Signaturen prüfen Überlappung der Prädikate
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-24
Beispiel zu DGLOCK
T1 Update: /store/auction/price[. < .5]
T2 Retrieve: /store/auction[./price > 42]/description
DGLOCK Kommutativitätsmatrix
T1 IX
T2 IS
T1 IX
T2 IS
auction
Requested None IS
...
IX
S
SIX
X
IS
+
+
+
+
+
P
IX
+
+
+
P
P
P
S
+
+
P
+
P
P
SIX
+
+
P
P
P
P
X
+
P
P
P
P
P
price
description
T2 IS
Granted
store
T1
X: price < .5
T2
S: price > 42
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
Höhere Parallelität
Bessere Performanz
10-25
Atomarität: Recovery Manager für mehrschichtige
Transaktionsverwaltung für XML
z
Kompensation der Effekte nicht erfolgreich abgeschlossener XMLTransaktionen
–
–
DB-Transaktionen der XML-Services sind evtl. schon committed
Lösung: Inversoperationen dieser DB-Transaktionen durchführen
z
Zusätzliches Logging nötig
z
Ablauf der Recovery im Fehlerfall
–
–
–
–
Start am Ende des Logs
Lesen des Logs, um die nicht erfolgreich abgeschlossenen Transaktionen zu
bestimmen
Durchführen der Inversoperationen (in umgekehrter Reihenfolge der
Vorwärtsoperationen)
Ausführung der Inversoperationen durchläuft wie die Vorwärtsoperationen
die Concurrency Control, das Logging etc.
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-26
Atomarität: Recovery Manager für mehrschichtige
Transaktionsverwaltung für XML
BOT, EOT
store
XML Update
auction
TM für XML
description
Flop
py
disk
auction
price
5.20
description
PC
Pent
ium
price
4711.00
price
4711.00
transactionlog
txn
4711
4712
4711
flag
BOT
BOT
EOT
xmllog
txn
4711
4711
4712
4711
4711
lsn
511
512
513
514
515
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
docid
D13
D24
D344
D500
D500
compensate info
/a/bid[…]
//b/person
/a/bid[…]
/t/auction
/t/auction
10-27
Experimentelle Untersuchung mehrschichtiger
Transaktionsverwaltung für XML
z
Implementation von XMLTM im Rahmen von PowerDB-XML an der ETH
–
z
Zielsetzung der Experimente
–
–
z
XMLTM: mehrschichtiger Transaktionsmanager für XML
Alternativen für Transaktionsverwaltung von XML-Verarbeitung untersuchen
Effekt der Dokumentgrösse
Dokumentbestand
–
XML Benchmark XMark
„
„
z
Hardware
–
z
Skalierungsfaktor 1 (100 MB)
Dokumentgrösse: 100 Dokumente à 1 MB bis 10 000 Dokumente à 10 KB
PC Pentium II 400 MHz
Software
–
–
Windows 2000 Advanced Server
IBM DB2 V7.1 mit dem XML Extender für IBM DB2 (wir werden diesen Extender
später auch kennenlernen)
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-28
Aufbau der Experimente
XMLAnwendungen
Transaction
Manager
XMLTM
Transaktionsverwaltung
IBM DB2
XML extender
IBM DB2
XML extender
Speichermanager
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-29
Aufbau der Experimente
site
…
people
regions
{africa, asia, …}
homepage
closed_auctions
person
name
annotation price
emailaddress
itemref
description
open_auctions
profile
item
description
location
shipping
name
annotation
bidder
description
increase
z
Anfragen aus einem Internet-Auktionsszenario
z
Closed system:
–
–
initial
interval
itemref
50% Leseanfragen and 50% Updates
Systemauslastung immmer bei 100% CPU
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-30
Ergebnis der Experimente:
mehrschichtige vs. flache Transaktionen
seconds per request
Mixed workload: response time retrieval
450
400
350
300
250
200
150
100
50
0
100 docs * 1000KB
1000 docs * 100KB
10000 docs * 10KB
document storage granularity
XMLTM transactions: queries
Flat transactions: queries
z
Je kleiner die Dokumente, desto schneller sind Anfragen
z
XMLTM liefert grössenordnungsmässige Verbesserung der Antwortzeit
gegenüber flachen Transaktionen
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-31
Ergebnis der Experimente:
mehrschichtige vs. flache Transaktionen
seconds per request
Mixed workload: response time update
900
800
700
600
500
400
300
200
100
0
100 docs * 1000KB
1000 docs * 100KB
10000 docs * 10KB
document storage granularity
XMLTM transactions: updates
Flat transactions: updates
z
Je kleiner die Dokumente, desto schneller sind Änderungen
z
Overhead bei Änderungen für mehrschichtige Transaktionen:
–
–
Zusätzliches Logging
Parallele Queries „stehlen” Resourcen von den Updates
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-32
Zusammenfassung
z
Bei XML-Datenbeständen auch Bedarf an Änderungoperationen
–
Anfragesprache XQuery um deklarative Änderungsoperationen erweitert
z
Korrektes, paralleles, fehlertolerantes Abarbeiten von Anfragen und
Änderungen auf gemeinsamen Daten erfordert Transaktionen
z
Problematik klassischer („flacher“) Transaktionsmanager von
Datenbanksystemen bei XML-Verarbeitung
–
–
–
–
z
Sperrgranularität nicht auf XML und die Dokumentstruktur abgestimmt
Keine Ausnutzung der Semantik
Unnötige Sperrkonflikte
Schlechte Performanz der Ansätze
Neue Techniken für die Transaktionsverwaltung benötigt im
Zusammenhang mit XML
–
–
Datenmodell von XML und Semantik der Operationen im Scheduler ausnutzen
Dadurch bessere Sperrgranularität und höhere Performanz
Vorlesung "XML und Datenbanken" - WS 2002/2003 (Schek/Türker/Grabs)
10-33
Herunterladen