30
XML-Archivierung betriebswirtschaftlich er Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau <Nachname>@db.fmi.uni-passau.de 2 SAP AG 69190 Walldorf [email protected] * Diese Arbeit wurde durch die Firma SAP im Rahmen des sog. Terabyte-Projektes gefördert.

XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

Embed Size (px)

Citation preview

Page 1: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

[email protected]

* Diese Arbeit wurde durch die Firma SAP im Rahmen des sog. Terabyte-Projektes gefördert.

Page 2: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 3: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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)

Page 4: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 5: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 6: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 7: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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.

Page 8: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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.

Page 9: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 10: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 11: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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>

Page 12: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 13: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 14: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 15: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 16: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 17: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 18: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 19: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 20: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 21: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

26.02.2003

Universität PassauLehrstuhl für Dialogorientierte

Systeme 21

Bulkdelete (ICDE 2001)

Page 22: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 23: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 24: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 25: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

)

Page 26: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 27: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 28: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

26.02.2003

Universität PassauLehrstuhl für Dialogorientierte

Systeme 28

Page 29: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

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

Page 30: XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons Kemper 1 1 Universität Passau 94030 Passau @db.fmi.uni-passau.de

26.02.2003

Universität PassauLehrstuhl für Dialogorientierte

Systeme 30

Fragen

Danke für Ihre Aufmerksamkeit.

Fragen ?