Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

XML in Datenbanksystemen. © Prof. T. Kudraß, HTWK Leipzig 2 2 Warum wird XML eingesetzt? Antworten von Unternehmen: erweiterte Suchmöglichkeiten im Unternehmen.

Ähnliche Präsentationen


Präsentation zum Thema: "XML in Datenbanksystemen. © Prof. T. Kudraß, HTWK Leipzig 2 2 Warum wird XML eingesetzt? Antworten von Unternehmen: erweiterte Suchmöglichkeiten im Unternehmen."—  Präsentation transkript:

1 XML in Datenbanksystemen

2 © Prof. T. Kudraß, HTWK Leipzig 2 2 Warum wird XML eingesetzt? Antworten von Unternehmen: erweiterte Suchmöglichkeiten im Unternehmen ermöglicht neue Operationen auf Daten verkürzt Anwendungsentwicklungszeit erlaubt Konvertierung von EDI-Daten in besser handhabbares Format verbindet viele Anwendungen im Unternehmen verbindet Anwendungen mit denen von Zulieferern und Geschäftspartnern Teilnahme an E-Commerce / B2B, der auf XML basiert

3 © Prof. T. Kudraß, HTWK Leipzig 3 3 Vorteile von XML XML ist plattformunabhängig (vgl. Java) XML ist sprachunabhängig XML verursacht keine Lizenzkosten, viele kostenlose XML-Tools XML basiert auf Unicode: jedes Zeichen jeder Schrift darstellbar (voraussetzung für Internationalisierung) XML ist per Definition erweiterbar. XML durchgängig über alle Anwendungebenen hinweg verwendbar (Datenhaltung, Anwendungslogik, Präsentation) – vgl. klassische Realisierung solcher Anwendungen mit relationalen Datenbanken

4 © Prof. T. Kudraß, HTWK Leipzig 4 4 Textorientierte Dokumente Lesbare Dokumente (document centric) – textorientiert (document = Text) – sind selten genau gleich strukturiert – Reihenfolge ist wichtig – sinntragende Daten auf allen Ebenen, viel Mixed Content – Volltextsuche ist unabdingbar, aber nicht ausreichend – manuell erstellt oder aus anderem Format konvertiert – Beispiele Zeitschriftenbeiträge, Bücher Gebrauchsanweisungen, Handbücher e-Mail Präsentationen Verträge – 70% der relevanten Geschäftsinformationen in Textdokumenten

5 © Prof. T. Kudraß, HTWK Leipzig 5 5 Datenorientierte XML-Dokumente Datenzentrierte Dokumente – wie Daten im herkömmlichen Sinn (z.B. in relationalen Datenbanken) – XML-Sicht auf stark strukturierte Daten – Reihenfolge ist oft nicht relevant – sind einheitlich und meist einfach strukturiert – haben Datentypen – sinntragende Daten in Blattelementen oder Attributen – Mixed Content ist die Ausnahme (oder Dekoration) – Beispiele: Telefonbücher wissenschaftliche Daten Fahrpläne, Flugpläne Bestellungen

6 © Prof. T. Kudraß, HTWK Leipzig 6 6 Daten und Dokumente Semistrukturierte Daten – Strukturiert: Felder – Unstrukturiert: binäre Daten wie Text, Video- und Audio-Streams, Bilder (in XML: External Entities, CDATA Sections) – unregelmäßiges Auftreten von Hyperlinks – ggf. fehlendes Schema Mangel an Struktur – Mischform aus datenzentriert und dokumentenzentriert – Struktur implizit oder verborgen – Integration von Daten aus heterogenen Quellen (hierfür strukturiertes Modell oft zu restriktiv) – Bestimmte Anfragetypen ignorieren Schema bewußt (z.B. Zeichenkettensuche über gesamte Datenbank hinweg) Beispiel Krankenakten: – Krankenakten Daten: Geburtsdatum, Adresse, Körpertemperatur-Messreihen … binäre Daten: Röntgenbilder Dokumente: Diagnose, Anamnese etc.

7 © Prof. T. Kudraß, HTWK Leipzig 7 7 Klassifikation: Beispiel Datenorientierte Dokumente (strukturiert, regulär Beispiele: Produktkataloge, Bestellungen, Rechnungen) Textorientierte Dokumente (unstrukturiert, irregulär Beispiele: wissenschaftliche Artikel, Bücher, E-Mails, Webseiten) Semistrukturierte Dokumente (datenorientierte und textorientierte Anteile Beispiele: Veröffentlichungen, Amazon) Meyer 1-234-56789-0 2 30.00 XML builds on the principles of two existing languages, HTML and SGML to create a simple mechanism.. The generalized markup concept.. Neil Bradley XML companion 1-234-56789-0 XML builds on the principles of two existing languages, HTML and..

8 © Prof. T. Kudraß, HTWK Leipzig 8 8 Einsatz von XML Publishing und Content Management Elektronischer Handel (E-Commerce) Workflow und integrierte Geschäftsprozesse – Prozessbeschreibungen (BPEL) – Ablaufdaten / Logs XML und Metadaten – RDF (Resource Decription Framework) XML und Multimedia – XHTML, SMIL, MPEG-7 Gesundheitswesen – HL7 Komplex strukturierte Daten – z.B. Chemical Markup Language (CML)

9 © Prof. T. Kudraß, HTWK Leipzig 9 9 Publishing und Content Management XSLT-Prozessor <xsl:stylesheet version=1.0 xmlns:xsl=http://www <xsl:template match=P <xsl:apply-templates… <Produkt name=… Dieses Produkt stellt eine absolute Weltneuheit dar und ist in seiner funktionalen Gestaltung erstaunlich <xsl:stylesheet version=1.0 xmlns:xsl=http://www <xsl:template match=P <xsl:apply-templates… <xsl:stylesheet version=1.0 xmlns:xsl=http://www <xsl:template match=P <xsl:apply-templates… <Produkt name=… Dieses Produkt stellt eine absolute Weltneuheit dar und ist in seiner funktionalen Gestaltung erstaunlich <Produkt name=… Dieses Produkt stellt eine absolute Weltneuheit dar und ist in seiner funktionalen Gestaltung erstaunlich Braille WAP Internet

10 © Prof. T. Kudraß, HTWK Leipzig 10 Elektronischer Handel (E-Commerce) B2B (business to business) – zwischen zwei Unternehmen – Kommunikation entlang einer Zuliefererkette (supply chain) – Einsatzbereich für EDI (electronic data interchange) – XML/EDI-Aktivitäten: Vokabulare, Repositories, Frameworks (z.B. ebXML) B2C (business to consumer) – zwischen Unternehmen und Vebraucher – Verkauf über Internet / elektron. Bestellannahme B2G (business to government) – zwischen Unternehmen und öffentlicher Verwaltung G2C (government to citizen) – zwischen öffentlicher Verwaltung und Bürgern – kein Handel, sondern administrative Vorgänge (Steuererklärung, Anträge etc.)

11 © Prof. T. Kudraß, HTWK Leipzig 11 Warum XML in Datenbanken XML als Austauschformat – XML-Dokumente enthalten geschäftsrelevante Daten (z.B. in Zuliefererketten) – Aufbewahrung der Dokumente so wie bei Eingang (d.h. Originaldokument unverändert lassen!) Rechtsrahmen: Grundsätze zum Zugriff und zur Prüfbarkeit digitaler Unterlagen (GDPdU) seit 1.1.2002 – Umwandlung in ein anderes Format Umwandlung in anderes Format grundsätzlich möglich, aber fehlerträchtig nicht notwendig, wenn Funktionalität im Umgang mit XML- Dokumenten der von Datenbanken entspricht – Speicherung der XML-Daten auf der Strecke zwischen den Austauschpartnern (persistent message queuing) Nur die Speicherung in Datenbanken garantiert – mächtige und effiziente Suchfunktionen – transaktionsorientierte Speicherung – Mehrbenutzerbetrieb

12 © Prof. T. Kudraß, HTWK Leipzig 12 Warum XML in Datenbanken (2) XML-basierte Anwendungen – XML als internes Datenhaltungsformat: Konfigurationsdateien, Anwendungsdaten, Stylesheets Bedarf für adäquate Speicherung Dokumentenverwaltung – für XML-Dokumente spezialisierte Systeme – benötigen XML-spezifische Datenhaltung – Basisfunktionalität (z.B. Textsuche) sollte im DBS enthalten sein Beispiele für Anwendungen – Portale für Unternehmensinformationen – Produktkataloge – Patienteninformationsverwaltung – B2B Dokumentenaustausch

13 © Prof. T. Kudraß, HTWK Leipzig 13 Grundmodelle von XML-Datenbanken monolithischer Ansatz – gesamte DB einziges großes XML-Dokument – Verwaltung einzelner XML-Doumente problematisch (Prolog, DTD, Metadaten, Referenzen) fragmentorientierter Ansatz – Daten in der DB (aus XML-Sicht) nicht miteinander verknüpft – bei Koexistenz von relationaler und XML-Sicht – aufwendige Rekonstruktion, Gefahr des Informationsverlustes (Prolog,DTD,Kommentare,PI) dokumentenorientierter Ansatz – DB = Menge von XML-Dokumenten – (typbezogene) Gruppierung von Dokumenten (mit gleicher schematischer Beschreibung) – analog zu Tabelle – benutzerspezifische Sammlung von Dokumenten (collections)

14 © Prof. T. Kudraß, HTWK Leipzig 14 XML-Architektur physische Ebene Dokument- verarbeitung Dokumenten Entwurf von XML- Konzeptueller logische Ebene konzeptuelle XML Datenbanken Klettke / Meyer XML-Datenbanken

15 © Prof. T. Kudraß, HTWK Leipzig 15 Anforderungen an XML-Datenbanken Datenbankspezifische Anforderungen Effizienz (Performance) – Indizierung (B* Baum nicht ausreichend) – Anfrageoptimierung – Caching Mehrbenutzerbetrieb Skalierbarkeit – Wachstum von Daten und Benutzern – XML-spezifisch: Dokumentgröße, tiefere Struktur Transaktionskonzept (ACID) – Sperrgranulat?

16 © Prof. T. Kudraß, HTWK Leipzig 16 Anforderungen an XML-Datenbanken Datenbankspezifische Anforderungen (2) Speicherungsstrukturunabhängigkeit – Optimierer sollte über Speicherungsstruktur entscheiden – vgl. SQL: Anfrage bleibt, auch wenn Indexe hinzukommen Sicherheit – abhängig von Grundmodell des XML-Datenbanksystems – Mögliche Definition von Zugriffsregeln auf Dokumenttypebene auf Basis von Knotentypen prädikatbasiert Verfügbarkeit Erweiterbarkeit – Definition von eigenen Datentypen und Methoden (vgl. objektrelationale Datenbanken) – auch: Definition eigener Zugriffsstrukturen – Erweiterbarkeit durch Unterstützung von XML Schema gegeben – prozedurale Erweiterbarkeit erweitert Anfragesprache

17 © Prof. T. Kudraß, HTWK Leipzig 17 Anforderungen an XML-Datenbanken XML-spezifische Anforderungen (1) Standardkonformität – XML 1.0 – XML Schema, XML Namespaces – XQuery 1.0 Dokumentenbehandlung – Verwaltung vollständiger XML-Dokumente (einschließlich Prolog, DTD) – gespeicherte Dokumente vollständig und unverändert zurückgeben Originaltreue der Dokumente (Round-Trip-Problem) – Was heißt unverändert? – auch Behandlung von Metadaten

18 © Prof. T. Kudraß, HTWK Leipzig 18 Anforderungen an XML-Datenbanken XML-spezifische Anforderungen (2) Schema-Unabhängigkeit – schematische Beschreibung nicht zwingend erforderlich – Speicherung beliebiger wohlgeformter XML- Dokumente auch bei unbekanntem Schema Strukturunabhängigkeit – rekursive Typdefinitionen mit beliebig tiefen (aber endlichen) Elementverschachtelungen in Dokumenten verarbeitbar – Speicherung von XML-Dokumenten jeden Typs (daten- oder textorientiert)

19 © Prof. T. Kudraß, HTWK Leipzig 19 Anforderungen an XML-Datenbanken XML-spezifische Anforderungen (3) Schemavorgabe und Validierung – bei vorhandenem Schema Validierung der Dokumente beim Speichern Web-Anbindung – Referenzierung von Dokumenten über HTTP analog zu Dateien – Unterstützung einer URL-Adressierung (HTTP- Methode GET mit Parametern) Einbettung von Datenbankzugriffen Kodierung und Internationalisierung – UTF-8 und UTF-16 XML-spezifische Schnittstelle

20 © Prof. T. Kudraß, HTWK Leipzig 20 Anforderungen an XML-Datenbanken XML-spezifische Anforderungen (4) Unveränderte Rückgabe (Originaltreue) Was heißt unverändert? Vergleich in kanonischer Form (bei gleicher Kodierung) – Kommentare und PI bleiben erhalten – Elemente bleiben Elemente, Attribute bleiben Attribute – Namen und Namensräume bleiben erhalten – Reihenfolge der Geschwisterelement bleibt erhalten – DTD und Prolog bleiben erhalten Entity-Referenzen werden aufgelöst

21 © Prof. T. Kudraß, HTWK Leipzig 21 Anforderungen an XML-Datenbanken XML-spezifische Anforderungen (5) Offenes Inhaltsmodell – Anwendung: einseitige Erweiterung eines gemeinsamen Datenformat durch Teilnehmer an einem Datenaustausch – Schemadefinition nur teilweise validieren – Wildcards in XML Schema: any, anyattribute Schema-Evolution – Schemaänderungen ohne Einfluß auf Daten – Wahrung der Konsistenz (Verschärfung von Constraints problematisch) Speicherung von Nicht-XML-Daten – Referenzen auf unparsed entities – Beispiel: Bilder im GIF-Format Anbindung anderer Datenquellen

22 © Prof. T. Kudraß, HTWK Leipzig 22 Anfragetypen objektrelationale Systeme: werteorientierte und textorientierte Anfragen XML: komplexere Strukturen als Relationenmodellneue Anfragetypen – werteorientierte Anfragen – textorientierte Anfragen – strukturorientierte Anfragen – verweisorientierte Anfragen – schemaorientierte Anfragen – namensraumorientierte Anfragen – metadatenorientierte Anfragen – kombinierte Anfragen

23 © Prof. T. Kudraß, HTWK Leipzig 23 Anfragetypen: Werteorientiert Wert eines Elements = Inhalt, reduziert auf alle Nicht-Element-Daten aller Ebenen @attribute < 5 – element < 7.1 – 6.1 element = Hugo – Hugo

24 © Prof. T. Kudraß, HTWK Leipzig 24 Anfragetypen: Textorientiert textorientierte Prädikate, zumeist auf Elementen orientiert an Textstruktur (Wort, Satz, Abschnitt) keine exakte Übereinstimmung gefordert (Akzente, Groß/Kleinschreibung) Ziel: möglichst viele relevante Dokumente finden mit geringem Anteil nicht-relevanter Dokumente (Recall vs. Precision) Beispiele: – documents containing XML – documents containing XML OR HTML but not SGML – documents containing XML within two words of database – documents with word similar to XML (ranking) – Wort, das mit dem Teilwort bank aufhört, ist im Wert eines Elements enthalten

25 © Prof. T. Kudraß, HTWK Leipzig 25 Anfragetypen: Strukturorientiert sinnvoll bei nicht beschränktem Schema siehe XPath Query Language //Buch bzw. /[//Buch] alle Buch-Elemente bzw. Dokumente, in denen ein Element Buch vorkommt //Buch/@ISBN bzw. /[//Buch/@ISBN] der Wert des Attributs ISBN von Buch bzw. Dokumente, in denen ein Element Buch ein Attribut ISBN hat /Buch/@* /Buch/Titel /Buch/Autor[1] /Buch/*[1] Im Dokument kommt ein Buch-Element vor, das mehr als zwei Autor-Kindelemente hat.

26 © Prof. T. Kudraß, HTWK Leipzig 26 Weitere Anfragetypen (1) Verweisorientierte Anfragen – verschiedene Verweismechanismen: IDREF, XLink, externes Entity – Verweise in Anfragen referenzieren – Beispiele: Welche Dokumente zeigen auf eine bestimmte Stelle? Welche anderen Dokumente werden aus einem Dokument referenziert? Schemaorientierte Anfragen – Vergleich von Dokumenten gegen ihre schematische Beschreibung – Beispiele: In welchen Dokumenten sind alle optionalen Attribute mit Werten belegt? In welchen Dokumenten enthält eine Zeichenkette genau die Maximalzahl erlaubter Zeichen? – Analogie zum RDBMS: Anfragen auf Data Dictionary – XML Schema ist selbst auch XML

27 © Prof. T. Kudraß, HTWK Leipzig 27 Weitere Anfragetypen Namensraumorientierte Anfragen – Suche nach Dokumenten, die Elemente oder Attribute eines bestimmten Namensraums enthalten – Beispiele: Welche Dokumente enthalten Stylesheet-Anteile, also Element des XSL-Namensraums http://www.w3.org/1999/XSL/Transform Welche Dokumente enthalten Elemente aus mehr als einem Namensraum? Metadatenorientiert – Dokumente, die seit dem 1.1.2002 geändert wurden – Dokumente, die von Matthias Conrad gespeichert wurden Kombinationen daraus – Beispiel: werteorientiert + strukturorientiert + textorientiert: //Buch[Preis < 50 AND Titel CONTAINS XML]

28 © Prof. T. Kudraß, HTWK Leipzig 28 Anfrageergebnisse Sinnvolle Ergebnisse: – ein einzelnes Dokument, so wie es gespeichert wurde – eine Menge von Dokumenten – ein XML-Fragment (z.B. ein einzelnes Element mit seinen Kindern) – eine Menge von XML-Fragmenten – ein Wert (z.B. ein Attributwert, Funktionsergebnis, dynamisch berechnete Summe) – eine Menge von Werten – ein Attribut (Name-Wert-Paar) – eine Menge von Attributen Wie kann ein wohlgeformtes XML-Dokument geliefert werden? – DBMS verpackt Ergebnis in einem wohlgeformten XML- Dokument (z.B. durch Definition einer Wurzel) – Anfrage ist für Gestalt des Ergebnisses verantwortlich

29 © Prof. T. Kudraß, HTWK Leipzig 29 Andere Operationen Einfügen und Löschen von XML-Dokumenten vergleichbar mit Operationen anderer DBS mehr Möglichkeiten beim Ändern mit XML: – Attributwert ändern – Löschen oder Hinzufügen von Attributen – textuellen Inhalt eines Elements ändern – Kindelemente hinzufügen oder entfernen – Umbenennung von Elementen oder Attributen Operationen aus anderen Datenbanksystemen – Cursor-Konzept zur Verwaltung großer Ergebnismengen – das Laden großer Datenmengen – Definition und Änderung von Schemata

30 © Prof. T. Kudraß, HTWK Leipzig 30 Schemata in XML-Datenbanken Schemata in Datenbanken – Schema beschreibt Struktur der Instanzen – Unterscheide Typdefinitionen (statisch) und Integritätsbedingungen (laufzeitdynamisch) – Schema auch Behälter für Mengen von Instanzen (z.B. Tabelle in RDB) Definition physischer Eigenschaften (Speicherungsformen, Indexe) Schemata für XML – XML: selbstbeschreibende Instanzen (Interpretation ohne Schema möglich) – optionale Schemata eher mit Integritätsbedingungen in DBMS vergleichbar (Validieren beim Parsen einer XML-Instanz)

31 © Prof. T. Kudraß, HTWK Leipzig 31 Schemata in XML-Datenbanken (2) Aspekte eines Schemas im XML-Datenbanksystem – Garantieaspekt (Instanz validiert gegen dieses Schema) – Informationsaspekt (Schema enthält Infos über zu erwartende Instanzen) – Modularisierungsaspekt (wiederverwendbare Definitionen) Schema sollte für eine Menge von Instanzen definiert sein Validierung gegen dokumentspezifisches Schema nicht sinnvoll

32 © Prof. T. Kudraß, HTWK Leipzig 32 Anfragesprachen - Anforderungen deklarativ benutzerfreundliche Formulierung von Anfragen XML-basierte Syntax zur Darstellung der Anfragestruktur protokoll-unabhängig (nicht nur HTTP) integrierte Fehlerbehandlung auf allen Arten von wohlgeformten XML- Dokumenten (text- oder datenorientiert), schematische Beschreibung optional Anfragesprache muss geschlossen sein. Berücksichtigung von Namespaces

33 © Prof. T. Kudraß, HTWK Leipzig 33 Anfragesprachen für XML-Datenbanken XML Query Working Group (seit 1998) XML-QL war an Hochschulen sehr populärer Sprachvorschlag Industrie: 1999 XPath wird W3C-Empfehlung als Adressierungsmechanismus innerhalb von XSLT und zur Verwendung in XPointer – keine XML-Anfragesprache für DBS Erweiterungen von SQL: SQL/XML XQuery 1.0 W3C Recommendation 23.01.2007


Herunterladen ppt "XML in Datenbanksystemen. © Prof. T. Kudraß, HTWK Leipzig 2 2 Warum wird XML eingesetzt? Antworten von Unternehmen: erweiterte Suchmöglichkeiten im Unternehmen."

Ähnliche Präsentationen


Google-Anzeigen