XML–Speicherungsmethoden eine Klassifikation Meike Klettke Universität Rostock Fachbereich Informatik [email protected] www.xml-und-datenbanken.de 1 Motivation Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ ■ ■ XML-Dokumente können für sehr verschiedene Anwendungen eingesetzt werden Aussehen der Dokumente unterscheidet sich stark Vielzahl von Methoden zur Speicherung existiert Mehrere Varianten zur Modellierung von XML-Dokumenten und deren Struktur Klassifikation und Einordnung bekannter Methoden Meike Klettke 2 1 Inhalt Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme 3-Ebenen von Datenbanken 3-Ebenen in der Dokumentverarbeitung ? 3-Ebenen für XML-Anwendungen ?? ■ ■ ■ – Logische Ebene – Physische Ebene – Konzeptelle Ebene Reihenfolge entspricht der historischen Entwicklung Klassifikation von Speicherungsverfahren – Grundprinzip, Vor- und Nachteile, Verwendung ■ Meike Klettke 3 Drei-Ebenen Architektur von Datenbanken Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme konzeptuelle Ebene ■ ■ ■ logische Ebene physische Ebene Konzeptueller Entwurf: ERM Logische Ebene: Relationenmodell, relationale Algebra Physische Ebene: interne Speicherung, Indizierung, Transaktionsverarbeitung, Anfrageoptimierung Meike Klettke 4 2 Drei-Ebenen Architektur in der Dokumentverarbeitung Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme konzeptuelle Ebene ■ ■ ■ logische Ebene physische Ebene Konzeptueller Entwurf: Editoren Logische Ebene: Dokumentenmodell Physische Ebene: interne Speicherung, Indizierung, Anfragerealisierung Meike Klettke 5 Drei-Ebenen Architektur für XMLAnwendungen Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Konzeptueller Entwurf von XMLDokumenten ? <..> <..> <..> konzeptuelle Ebene ■ </..> </..> </..> logische Ebene ? physische Ebene XML-Dokumente – Anfragen, Updates ? – Speicherung ? – Modellierung ? Meike Klettke 6 3 Unterteilung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Datenzentrierte Dokumente (strukturiert, regulär Beispiele: Produktkataloge, Bestellungen, Rechnungen) Dokumentzentrierte Dokumente (unstrukturiert, irregulär Beispiele: wissenschaftliche Artikel, Bücher, E-Mails, Webseiten) Semistrukturierte Dokumente (datenzentrierte und dokumentenzentrierte Anteile Beispiele: Veröffentlichungen, Amazon) <order> <customer>Meyer</customer> <position> <isbn>1-234-56789-0</isbn> <number>2</number> <price currency=„Euro“>30.00</price> </position> </order> <content> XML builds on the principles of two existing languages, <emph>HTML</emph> and <emph>SGML</emph> to create a simple mechanism .. The generalized markup concept .. </content> <book> <author>Neil Bradley</author> <title>XML companion</title> <isbn>1-234-56789-0</isbn> <content> XML builds on the principles of two existing languages, <emph>HTML</emph> and .. </content> </book> Meike Klettke 7 Bedeutung des Dokumentcharakters Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ Sehr verschiedene Arten von XML-Dokumenten auf logischer Ebene <..> <..> <..> </..> </..> </..> logische Ebene Das heißt: – Nicht nur eine Methode für Anfragen, zur internen Speicherung, zur konzeptuellen Modellierung, ... – sondern jeweils ganze Bandbreite Meike Klettke 8 4 Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme <..> <..> <..> </..> </..> </..> logische Ebene datenzentriert semistrukturiert dok-zentriert Logische Ebene Dokumentmodell Anfragen/Updates an Struktur und Inhalt XML, SGML XQuery, XPath, DOM, IR-Anfragen Daten- und Dokumentmodell Anfragen/Updates an Struktur und Inhalt XML, OEM XQuery, Lorel Datenmodell Anfragen/Updates an Inhalt XML, RDBM, OODBM XQuery, SQL, OQL Meike Klettke 9 Realisierungen für die logische Ebene Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Dokumentzentrierte XML-Dokumente: ■ Darstellung: XML, SGML ■ Anfragen: XQuery, XPath, DOM, IR-Anfragen Semistrukturierte XML-Dokumente: ■ Darstellung: XML, OEM ■ Anfragen: XQuery, Lorel Datenzentrierte XML-Dokumente: ■ Darstellung: XML, rel. DM, oo. DM ■ Anfragen: XQuery, SQL, OQL Meike Klettke 10 5 Anforderungen an die Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ Nach (Fiebig, Kanne, Moerkotte) ?? physische Ebene physische Effektive Speicherung Effizienter Zugriff auf XML-Dokumente Ebene oder Teile davon – Transaktionsverwaltung – Unterstützung von XPath und XQuery – Unterstützung von SAX und DOM für Anwendungen Wiederherstellbarkeit der Dokumente Meike Klettke 11 Realisierungen für die physische Ebene Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung der XML-Dokumente als Ganzes und Indizierung (textbasiert native) – Volltextindex – Volltext- und Strukturindex physische Ebene Speicherung der Graphenstruktur (modellbasiertes natives Verfahren) – generische Graphspeicherung – Speicherung der DOM-Informationen strukturierte Abbildung auf Datenbanken – relationale Datenbanken – objekt-orientierte und objekt-relationale Datenbanken – Einsatz von benutzerdefinierten Mappingverfahren Meike Klettke 12 6 Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Konzeptueller Entwurf von XMLDokumenten ?? konzeptuelle Ebene konzeptuelle Ebene datenzentriert semistrukturiert dok-zentriert Konzeptuelle Ebene Modellierung von Struktur und Inhalt baumbasierte XML-Editoren Modellierung von Struktur und Inhalt ?? Modellierung von Struktur ER UML ORM Meike Klettke 13 Realisierungen für die konzeptuelle Modellierung Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Dokumentzentrierte XML-Dokumente – Graphische Editoren – Visualisierung von Baum- und Graphstruktur Semistrukturierte XML-Dokumente – ?? Konzeptueller Entwurf von XMLDokumenten konzeptuelle Ebene Datenzentrierte XML-Dokumente – Erweiterung von ER – Erweiterung und Einschränkung von UML – Erweiterung von ORM Hier werden in Zukunft noch weitere Forschungsansätze und Tools dazukommen Meike Klettke 14 7 Zusammenfassung: XML-Architektur Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Dokumentverarbeitung XML Konzeptueller Entwurf von XMLDokumenten <..> <..> <..> </..> </..> </..> Datenbanken konzeptuelle Ebene logische Ebene Meike Klettke physische Ebene 15 Speicherungsmethoden Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ Vorstellung von Methoden – Grundprinzip – Eigenschaften ■ Dabei Klassifikation bekannter Methoden Meike Klettke 16 8 Bedeutung des Dokumentcharakters Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ ■ XML-Dokumente können die ganze Bandbreite von Daten bis zu Volltextdokumenten einnehmen (dokumentzentriert, semistrukturiert, datenzentriert) Entsprechend eignen sich auch Speicherungsverfahren von der Dokumentenverarbeitung bis zur Datenbanktechnologie Weiterhin: Neuentwicklung von Methoden Keine optimale Lösung für alle Anwendungen, Dokumentcharakter spielt entscheidende Rolle Meike Klettke 17 Meike Klettke dok-zentriert physische Ebene Struktur auf Werteebene Struktur auf Schemaund Werteebene datenzentriert Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme semistrukturiert Architektur: physische Ebene Dateien Volltextindex, Strukturindex generische Speicherung von Graphen oder DOM-Informationen Struktur auf Schemaebene relationale, objekt-relationale oder objekt-orientierte Datenbanken 18 9 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung als Ganzes strukturierte Speicherung in Datenbanken Speicherung der Dokumentstruktur Volltext- und XML-Index Volltextindex Information Retrieval Suchmaschinen Text Extender - Oracle Text - DB2 Text Extender - Informix Text Data Blades Meike Klettke 19 Grundprinzip der invertierten Liste Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Dokumente Stichworte 1 A 2 B 3 A D C C Stichworte F D D E Dokumente A 1 B 2 C 2 3 D 1 2 E 3 F 1 3 3 Invertierte Speicherung: Bestimmung der Stichworte der Dokumente Meike Klettke Speicherung der Stichworte und der zugehörigen Dokumente 20 10 Volltext-Index Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Begriff hotel Warnemünde Rostock ort anreisebeschreibung Verweis <hotel> <hotelname>Hotel Hübner</hotelname> <adresse> <plz>18119</plz> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> <nummer>12</nummer> </adresse> <anreisebeschreibung> Aus Richtung Rostock kommend ... </anreisebeschreibung> </hotel> - bekannte Methode (älter als relationale Datenbanken) - Boolsches Retrieval (AND, OR, NOT) Meike Klettke 21 Eigenschaften des Volltext-Indexes Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ ■ Schemabeschreibung – nicht erforderlich Dokumentrekonstruktion – Dokumente bleiben im Original erhalten Anfragen – Anfragen des Information Retrieval Weitere Besonderheiten – Volltextfunktionen (SQL-MM) – keine Auswertung des XML-Markups Einsatz – für dokumentzentrierte XML-Anwendungen Meike Klettke 22 11 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung als Ganzes strukturierte Speicherung in Datenbanken Speicherung der Dokumentstruktur Volltext- und XML-Index Volltextindex DB2 Text Extender Oracle Text Informix Verity Text Search Data Blade Meike Klettke 23 Kombinierter Volltext- und XMLIndex Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Volltext-Index Term Verweis Element Warnemünde Seestraße Rostock <hotel> <hotelname>Hotel Hübner</hotelname> <adresse> <plz>18119</plz> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> </adresse> <anreisebeschreibung> Aus Richtung Rostock kommend fahren Sie auf der Stadtautobahn bis nach Warnemünde <anreisebeschreibung> </hotel> ... XML-Index Element Verweis Vorgänger hotel adresse ort strasse anreisebeschreibung - XML - Struktur kann in Anfragen ausgewertet werden Meike Klettke 24 12 Eigenschaften des des kombinierten Volltext- und XML-Indexes ■ Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Schemabeschreibung – nicht erforderlich ■ Dokumentrekonstruktion ■ Anfragen – Dokumente bleiben im Original erhalten – Anfragen des Information Retrieval – Auswertung des Markup in den Anfragen – XML-Anfragen möglich ■ Weitere Besonderheiten ■ Einsatz – Volltextfunktionen (SQL-MM) – für dokumentzentrierte XML-Anwendungen – auch für semistrukturierte Anwendungen Meike Klettke 25 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung als Ganzes Speicherung der Dokumentstruktur Abbildung der Graphstruktur strukturierte Speicherung in Datenbanken Speicherung der Informationen des DOM Neil Bradley Florescu/Kossmann Shimura/Yoshikawa/Uemura Meike Klettke 26 13 Speicherung der Graphstruktur Elements: Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Element Type Value plz int 18119 ort string Warnemünde strasse string Seestrasse Descendant-of hotel adresse Attributes: Element Attribute Type Value url string www... autor string Müller • generische Speicherung der Struktur des XML-Dokumentes Meike Klettke 27 Eigenschaften der Speicherung der Graphenstruktur Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ Schemabeschreibung – Zur Speicherung nicht erforderlich ■ Dokumentrekonstruktion ■ Anfragen – Möglich, aber sehr auswändig – XML-Anfragen möglich – Angepasste Datenbankanfragen ■ Weitere Besonderheiten ■ Einsatz – Anfragen über vielen Elementen/Attributen sind aufwändig – für daten- und dokumentzentrierte, sowie semistrukturierte XML-Anwendungen Meike Klettke 28 14 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung als Ganzes strukturierte Speicherung in Datenbanken Speicherung der Dokumentstruktur Abbildung der Graphstruktur Speicherung der Informationen des DOM Richard Edwards infonyte eXcelon XIS (POET) Meike Klettke 29 Speicherung des DOM / 1 DOMImplementation Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ Informationen des Document Object Models werden in Datenbanken gespeichert Node NodeList NamedNodeMap Attr CharacterData Comment Text CDataSection ■ ■ Verwendung relationaler oder objekt-orientierter Datenbanken oder Entwicklung eigener Speicherungsstrukturen Document DocumentFragment DocumentType Element Entity EntityReference Notation ProcessingInstruction Meike Klettke 30 15 Speicherung des DOM / 2 Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Methoden der Klasse Node: - getChildren() - getFirstChild() - getNextSibling() - getNodeType() - getParentNode() - getPreviousSibling() - hasChildren() NodeID NodeType PreviousSibling Methoden der Klasse Element: - getAttributes() - getElementsByTagName(String) - getTagName() Methoden der Klasse Attribut: - getName() - getValue() NodeID DocID ParentNode NextSibling FirstChild NodeID ElementID TagName AttributName AttributValue Meike Klettke 31 Eigenschaften der Speicherung von DOM Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ ■ Schemabeschreibung – Zur Speicherung nicht erforderlich Dokumentrekonstruktion – Möglich, aber auswändig Anfragen – XML-Anfragen möglich – Angepasste Datenbankanfragen Weitere Besonderheiten – Standardisierte und allgemein akzeptierte Schnittstelle Einsatz – für daten- und dokumentzentrierte, sowie semistrukturierte XML-Anwendungen Meike Klettke 32 16 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung als Ganzes strukturierte Speicherung in Datenbanken Speicherung der Dokumentstruktur Vollständiges (+automatisches) Mapping Benutzerdefiniertes Mapping Shanmugasundaram et al. (Ronald Bourret) (Deutsch/Fernandez/ Suciu : Stored) Klettke/Meyer POET Meike Klettke 33 Abbildung der XML- Struktur auf Struktur relationaler Datenbanken Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme XML-Dokument <hotel url="www.hotel-huebner.de"> <hotelname>Hotel Hübner</hotelname> <adresse> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> ... </adresse> <preise> <einzelzimmer>198</einzelzimmer> ... </preise> </hotel> Hotel: Adresse: Preise: HotelID Hotelname Adresse Preise H0001 Hotel Hübner A0001 P0001 AdresseID Ort Strasse A0001 Warnemünde Seestraße PreiseID Einzelzimmer P0001 198 ... ... - DTD ist erforderlich - Anfragen verwenden SQL - Funktionalität - Datentypen Meike Klettke 34 17 Abbildung der XML- Struktur auf objekt-orientierte Datenbanken Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme XML-Dokument Hotel: <hotel url="www.hotel-huebner.de"> <hotelname>Hotel Hübner</hotelname> <adresse> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> ... </adresse> <preise> <einzelzimmer>198</einzelzimmer> ... </preise> </hotel> HotelID H0001 - Hotelname Hotel Hübner Adresse Ort Strasse Warnemünde Seestraße Preise ... einzelzimmer ... 198 DTD ist erforderlich Anfragen verwenden SQL - Funktionalität Datentypen Datenbanken mit vielen Nullwerten Meike Klettke 35 Strukturierte Speicherung in Datenbanken Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ ■ Schemabeschreibung – Zur Speicherung erforderlich Dokumentrekonstruktion – Nur eingeschränkt möglich (Protokollierung des Abbildungsprozesses) Anfragen – Datenbankanfragen – XML-Anfragen möglich Weitere Besonderheiten – Föderationen mit bestehenden Datenbanken möglich Einsatz – für datenzentrierte XML-Anwendungen Meike Klettke 36 18 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Speicherung als Ganzes strukturierte Speicherung in Datenbanken Speicherung der Dokumentstruktur Vollständiges (+automatisches) Mapping Benutzerdefiniertes Mapping Deutsch/Fernandez/ Suciu : Stored Ronald Bourret DB2 XML Extender Meike Klettke 37 Benutzerdefiniertes Mapping XML-Dokument Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Mapping Vorschrift <hotel url="www.hotel-huebner.de"> <hotelname>Hotel Hübner</hotelname> <adresse> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> ... </adresse> <preise> <einzelzimmer>198</einzelzimmer> ... </preise> </hotel> Datenbank <ClassMap> <ElementType Name="hotel"/> <ToClassTable> <Table Name="Hotelpreise"/> </ToClassTable> <PropertyMap> <Attribute Name="url"/> <ToColumn> <Column Name="Hotel_URL"/> </ToColumn> </PropertyMap> <PropertyMap> <ElementType Name="hotelname"/> <ToColumn> <Column Name="Name"/> </ToColumn> </PropertyMap> ... </Classmap> Hotelpreise Hotel_URL Name www.hotel-huebner.de Hotel Hübner Einzelzimmer 198 - Flexible Methode - Integration von XML-Dokumenten in existierende Datenbanken - Ein Mapping muss von Benutzer spezifiziert werden Meike Klettke 38 19 Eigenschaften der Speicherung mittels benutzerdefiniertem Mapping Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ ■ ■ ■ ■ Schemabeschreibung – Zur Speicherung erforderlich Dokumentrekonstruktion – Meist nicht möglich (Voraussetzung: Protokollierung des Abbildungsprozesses, vollständige Abb.) Anfragen – Datenbankanfragen – XML-Anfragen in Ausnahmefällen möglich Weitere Besonderheiten – Integration in bestehende Datenbanken möglich Einsatz – für datenzentrierte XML-Anwendungen Meike Klettke 39 Hybride Ansätze Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Auswahl unterschiedlicher Speicherungsmethoden für verschiedene Dokumentanteile <hotel> <hotelname>Strand Hotel Hübner</hotelname> <adresse> <plz>18119</plz> <ort>Warnemünde</ort> <strasse>Seestraße</strasse> <nummer>12</nummer> <telefon>0381/5434-0</telefon> </adresse> <hausbeschreibung> Sie finden unser elegant und komfortabel eingerichtetes 4-Sterne Hotel direkt an der Strandpromenade von Warnemünde mit Blick auf Leuchtturm, Hafeneinfahrt und Ostsee. </hausbeschreibung> </hotel> Sie finden unser elegant und komfortabel eingerichtetes 4-Sterne Hotel direkt an der Strandpromenade von Warnemünde mit Blick auf Leuchtturm, Hafeneinfahrt und Ostsee. Hotel Strand Hotel Hübner Meike Klettke Ort Warnemünde Strasse Seestraße Telefon 0381/5434-0 40 20 Speicherung von XML-Dokumenten Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme Als Dateien / Clobs Speicherung der Dokumentstruktur Strukturierte Speicherung in Datenbanken Volltextindex Abbildung der Graphstruktur Vollständiges Mapping Volltextindex und XML-Index Abbilden des DOM-Modells Benutzerdefiniertes Mapping Für dokument-zentrierte XML-Dokumente Für semistrukturierte XML-Dokumente Für daten-zentrierte XML-Dokumente Meike Klettke 41 Zusammenfassung Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme ■ XML-Datenbanken – Vielzahl von Verfahren und Techniken existieren nebeneinander – oft aus den Bereichen Datenbanken und Dokumentverarbeitung – generell: es gibt keine „beste Lösung“ für alle XMLDokumente – geeignetste Lösung ist abhängig von konkreten Erfordernissen – vieles ist noch in der Entwicklung Meike Klettke 42 21 Literatur / 1 Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme – Neil Bradley, The XML companion, Addison Wesley, 1998 – Yoshikawa, M., Amagasa, T., Shimura, T., Uemura, S., XRel: A PathBased Approach for Storage and Retrieval of XML Documents Using Relational Databases: ACM Transactions on Internet Technology, Volume 1, Nummer 1, S. 110-141, 2001 – Daniela Florescu, Donald Kossmann, Storing and Querying XML Data Using an RDBMS, Bulletin of the Technical Committee on Data Engineering, volume 22, number 3, September 1999, pp. 27-34 – Jayaval Shanmugasundaram, Kristin Tufte, Gang He, Chun Zhang, David DeWitt, Jeffrey Naughton, Relational Databases for Querying XML Documents - Limitations and Opportunities, Proceedings of the 25th VLDB Conference, Edinburgh, Scotland, 1999, pp. 302-314 – Meike Klettke, Holger Meyer, XML and Object-Relational Databases Enhancing Structural Mappings Based on Statistics, WebDB 2000, Mai 2000 Meike Klettke 43 Literatur / 2 Einleitung Anwendung Datenbanken XML XML-Prozessoren XML-Generierung Architektur Modellierung XML-Speicherung Indizierung XML-Anfragen Systeme – Ronald Bourret, C. Bornhövd, A.P. Buchmann, A Generic Load/ Extract Utility for Data Transfer between XML Documents and Relational Databases, Second International Workshop on Advanced Issues of E-Commerce and Web-based Information Systems, WECWIS'00 – Ronald Bourret, XML-DBMS - Middleware for Transferring Data between XML Documents and Relational Databases, http://www.rpbourret.com/xmldbms/index.htm – Alin Deutsch, Mary F. Fernandez, Dan Suciu, Storing Semistructured Data with STORED, SIGMOD 1999, Proceedings ACM SIGMOD International Conference on Management of Data, June 1999, Philadephia, Pennsylvania, USA, ACM Press, 1999, pp. 431-442 – Meike Klettke, Holger Meyer, XML and databases, http://www.xml-und-datenbanken.de Meike Klettke 44 22