XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte* Bernhard Zeller 1 Axel Herbst 2 Alfons...

Preview:

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

axel.herbst@sap.com

* 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 ?

Recommended