Upload
berend-zellmann
View
104
Download
0
Embed Size (px)
Citation preview
XML-Archivierung betriebswirtschaftlicherDatenbank-Objekte*
Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1
1 Universität Passau94030 Passau
<Nachname>@db.fmi.uni-passau.de
2 SAP AG69190 Walldorf
* Diese Arbeit wurde durch die Firma SAP im Rahmen des sog. Terabyte-Projektes gefördert.
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 2
Gliederung• Motivation
• Archivierung bisher
• Verwandte Arbeiten
• Besonderheiten der XML-Archivierung
• Der XML-Archivierungs-Operator
• Leistungsanalyse
• Zukünftige Arbeiten
• Zusammenfassung
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 3
Motivation
• Datenbanken betriebswirtschafticher Software wie z.B. SAP R/3 wachsen stetig (bereits mehrere Terabyte)
Tabellen mit sehr vielen Einträgen Leistungseinbußen, schwer administrierbar
• Archivierung kann Probleme lösen / lindern durchVerschieben der Daten von selten oder wenig
benötigten betriebswirtschaftlichen Objekten aus der Datenbank heraus auf Tertiärspeichersysteme (z.B. CDs) Tabellen werden kleiner
Kosten werden gesenkt (CDs billiger als Platten)
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 4
Archivierung bisher
Anwendung 1
Archivierungs-Komponente 1
DB
Ablagesystem
Anwendung 2Archivierungs-Komponente 2
Anwendung 3Archivierungs-Komponente 3
Anwendung nArchivierungs-Komponente n
SAP-System
Archivierungskomponente
MM
HR FI PS
CO
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 5
Probleme
DB
Anwendung 1
Archivierungs-Komponente 1
Ablagesystem
• Vielzahl von Archivierungskomponenten
• Daten in Ablage ohne Anwendung nicht lesbar
• Hohe Netzlast (DBAnwendungAblage)
• Definition des betriebswirtschaftlichen Objektes nur in Anwendung verfügbar
• Komplexe Prüfungen für Archivierbarkeit notwendig Nur in Anwendung
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 6
Probleme
DB
Anwendung 1
Archivierungs-Komponente 1
Ablagesystem
• Vielzahl von Archivierungskomponenten
• Daten in Ablage ohne Anwendung nicht lesbar
• Hohe Netzlast (DBAnwendungAblage)
• Definition des betriebswirtschaftlichen Objektes nur in Anwendung verfügbar
• Komplexe Prüfungen für Archivierbarkeit notwendig Nur in Anwendung
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 7
Lösung
• Zentrale Archivierungskomponente,
• die Teil der Datenbank ist und
• die Daten als XML-Dateien ablegt.
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 8
Verwandte Arbeiten K. Küspert and R. Schaarschmidt. Archivierung in
Datenbanksystemen, Informatik Spektrum, 1998 R. Schaarschmidt, Archivierung in Datenbanksyste-
men: Konzept und Sprache, Verlag B.G. Teubner, 2001. M. J. Carey, D. Florescu, Z. G. Ives, Y. Lu, J.
Shanmugasundaram, E. J. Shekita, and S. N. Subramanian. XPERANTO: Publishing Object-Relational Data as XML, In Proc. of the Third International Workshop on the Web and Databases, 2000.
M.F. Fernandez, W.-C. Tan, and D. Suciu. SilkRoute: Trading between Relations and XML. In Int’l World Wide Web Conf. (WWW), 2000.
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 9
Probleme
• Vielzahl von Archivierungskomponenten
• Daten in Ablage ohne Anwendung nicht lesbar
• Hohe Netzlast (DBAnwendungAblage)
• Definition des betriebswirtschaftlichen Objektes nur in Anwendung verfügbar
• Komplexe Prüfungen für Archivierbarkeit notwendig Nur in Anwendung
nur eine
XML
innerhalb DB XML Schema
temporäre Tabellen
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 10
XML Archivierung
Anwendung 1
Ablagesystem
XML
Anwendung 1 .. n
XMLXML
XML
XML-Archivierungs-Operator
XML Schema +temp. Tabellen
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 11
XML Schema Parameter
• Definition des betriebswirtschaftlichen Objektes, d.h. auf welche Tabellen sind die Daten eines Objektes verteilt
• bestimmt das Aussehen der erzeugten XML Dateien
• Einbinden der Daten mittels Annotationen: <xsd:annotation>
<xsd:appinfo>sql:[Schema].[Tabelle].[Spalte]
</xsd:appinfo> </xsd:annotation>
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 12
Temporäre Tabellen• enthalten die Schlüsselwerte der zu archivierenden Tabelleneinträge
• Kennzeichnen, welche Tabelleneinträge zu welchem Objekt gehören:
Bestellung (BID, Kunde, Datum, Summe)Bestellposition (BID, Zeile, Ware, Anz, Preis)
ArchKey BID
Obj_1 Obj_2
1 3
ArchKey BID Zeile
Obj_1 Obj_1 Obj_2
1 1 3
1 2 1
Arch_Bestellung
Arch_Bestellposition
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 13
XML Archivierung
Anwendung 1
Ablagesystem
XML
Anwendung 1 .. n
XMLXML
XML
XML- Archivierungs-Operator
XML Schema +temp. Tabellen
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 14
Beispiel
BID
Kunde
Datum Summe
1234
. . .
4711567834565678. . .
3.5.023.5.024.5.024.5.02
. . .
120057
10710. . .
BIDZeile
WareAnz.
Preis
112333
. . .
121123
FernseherDVD-Player
RadioBatterien
Lautsprecher
CDs
111
1022
1000
20057
0,102330
Bestellung
Bestellpositionen
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 15
An
wend
un
g
XML-Archivierungs-Operator
BIDKunde
Datum
Summe
123
... ... ...
BID
Zeile
Ware
Anz.
Preis
112
121
... ... ...
Ab
lag
e
OLTP-Datenbasis
...<xsd:schema ......
XML-Schema
12
Obj_1Obj_2
BIDArchKey
121
112
Obj_1Obj_1Obj_2
ZeileBIDArchKey
Temporäre Tabelle
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 16
An
wend
un
g
XML-Archivierungs-Operator
BIDKunde
Datum
Summe
123
... ... ...
BID
Zeile
Ware
Anz.
Preis
112
121
... ... ...
Ab
lag
e
OLTP-Datenbasis
...<xsd:schema ......
XML-Schema
12
Obj_1Obj_2
BIDArchKey
121
112
Obj_1Obj_1Obj_2
ZeileBIDArchKey
Temporäre Tabelle
XML-Generierung
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 17
An
wend
un
g
XML-Archivierungs-Operator
BIDKunde
Datum
Summe
123
... ... ...
BID
Zeile
Ware
Anz.
Preis
112
121
... ... ...
Ab
lag
e
OLTP-Datenbasis
...<xsd:schema ......
XML-Schema
12
Obj_1Obj_2
BIDArchKey
121
112
Obj_1Obj_1Obj_2
ZeileBIDArchKey
Temporäre Tabelle
XML-Generierung
Lösch-Operation
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 18
An
wend
un
g
XML-Archivierungs-Operator
BIDKunde
Datum
Summe
123
... ... ...
BID
Zeile
Ware
Anz.
Preis
112
121
... ... ...
Ab
lag
e
OLTP-Datenbasis
...<xsd:schema ......
XML-Schema
12
Obj_1Obj_2
BIDArchKey
121
112
Obj_1Obj_1Obj_2
ZeileBIDArchKey
Temporäre Tabelle
XML-Generierung
Lösch-Operation
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 19
An
wend
un
g
XML-Archivierungs-Operator
BIDKunde
Datum
Summe
123
... ... ...
BID
Zeile
Ware
Anz.
Preis
112
121
... ... ...
Ab
lag
e
OLTP-Datenbasis
...<xsd:schema ......
XML-Schema
12
Obj_1Obj_2
BIDArchKey
121
112
Obj_1Obj_1Obj_2
ZeileBIDArchKey
Temporäre Tabelle
XML-Generierung
Lösch-Operation
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 20
Ablauf einer XML-Archivierung
1. Temporäre Tabellen erzeugen
2. Temporäre Tabellen mit Schlüsselwerten füllen
3. Der XML-Archivierungs-Operator wird aufgerufen.
(a) Temporäre Tabellen sperren
(b) Einträge in prod. Tabellen sperren (Lesesperre)
(c) Daten und XML-Schema verknüpfen und XML-Dokumente generieren
(d) XML-Dokumente ablegen
(e) Lesesperren in Schreibsperren umwandeln und Daten in prod. Tabellen löschen
(f) Der Operator gibt die Sperren frei.
4. Temporäre Tabellen löschen
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 21
Bulkdelete (ICDE 2001)
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 22
Light-Variante des Bulkdelete
• Wenn RID vorhanden (und order by erlaubt):
delete from <produktive Tabelle P> where <P.Schlüssel> in
(select <P.Schlüssel> from <produktive Tabelle P>,
<temporärer Tabelle T>
where <P.Schlüssel>=<T.Schlüssel>
order by <P.RID>)
• Sortierung bzgl Primärschlüssel und auf gute Clusterung hoffen
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 23
Gliederung• Motivation
• Archivierung bisher
• Verwandte Arbeiten
• Besonderheiten der XML-Archivierung
• Der XML-Archivierungs-Operator
• Leistungsanalyse
• Zukünftige Arbeiten
• Zusammenfassung
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 24
LeistungsanalyseObjekttyp 3, 10.000 Objekte
0
50
100
150
200
250
300
10 15 20
Prozent gelöscht
Ze
it (
se
c)
tradlight
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 25
LeistungsanalyseXML Generierung: 10.000 Objekte, 10% archiviert
0
5
10
15
20
25
30
35
40
45
OBJEKT 1 OBJEKT 2 OBJEKT 3 OBJEKT 4
Objekttyp
Ze
it (
min
)
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 26
Leistungsanalyse10.000 Objekte, Objekttyp 2
0
30
60
90
120
150
10 15 20
Prozent archiviert / gelöscht
Ze
it (
min
)
clientserver
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 27
Zukünftige Arbeiten
• Implementierung verschiedener XML- Generierungstechniken
• Vergleich mit den XML-Generierungswerkzeugen der Datenbankhersteller
• Entwicklung eines dafür geeigneten Benchmarks
• Leistungsanalyse
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 28
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 29
Zusammenfassung
• In dieser Arbeit wurde ein XML-Archivierungs-Operator, der
• Daten betriebswirtschaftlicher Objekte als XML-Dokumente ablegt und
• in die Datenbank integriert ist
• Durch Archivierung verbessert sich die Leistung des DBMS,
• es werden Kosten gespart und
• durch Ablage als XML-Dokumente sind die Daten für andere Anwendungen lesbar
26.02.2003
Universität PassauLehrstuhl für Dialogorientierte
Systeme 30
Fragen
Danke für Ihre Aufmerksamkeit.
Fragen ?