Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

XML und Datenbanken © 2006 Markus Röder www.training-deluxe.de.

Ähnliche Präsentationen


Präsentation zum Thema: "XML und Datenbanken © 2006 Markus Röder www.training-deluxe.de."—  Präsentation transkript:

1 XML und Datenbanken © 2006 Markus Röder www.training-deluxe.de

2 Motivation für XML Einfaches Textformat Weite Standardisierung Enthält Daten und Metadaten Ist erweiterbar

3 Einsatz Ein RDBMS zur Speicherung hierarchisch strukturierter XML-Dokumente einzusetzen ist ungefähr so effizient, wie ein Auto abends nach Feierabend in seine Einzelteile zu zerlegen, um es morgens für die Fahrt zur Arbeit wieder zusammenzubauen

4 Datenbanken Effiziente und strukturierte Speicherung Datenbanken speichern Informationen in strukturierten Einheiten und bieten darüber hinaus unterschiedliche logische Sichten, ohne, dass der Anwender etwas über die Speicherung wissen muss. Indexe Durch gezielte Indizierung der Daten lassen sich Informationen schneller auffinden. Schnelle Anfrageauswertung Anfragen werden durch das DBMS optimiert, um schnellere Ergebnisse zu erhalten. Sicherheitskonzepte Um die Datenintegrität zu gewährleisten, kann die Manipulation der Daten innerhalb gekapselter Transaktionen durchgeführt werden. Mehrbenutzerfähigkeit Die meisten DBMS unterstützen den gleichzeitigen Zugriff durch mehrere Benutzer. Standards DBMS sind weit verbreitet und viele Anwendungen verwenden bereits SQL- Schnittstellen (bzw. JDBC, ODBC o.A.) zum Zugriff auf Datenbanken.

5 Datenbanken und Systeme im Einsatz Relationale Datenbanken Relationale DB XML Enabled Objektorientierte Datenbanken Native XML Datenbanken Persistenzframeworks ( z.B. Hibernate ) Middleware EAI SOA Implementierungen Application-Server PDOMs Individuelle Anwendungen

6 XML Daten in relationalen Datenbanken speichern Ablauf: Programmierung – Lesen der XML Daten mit Parser individuelles Datenmodell in Memory SAX standard in memory Repräsentation DOM Fehler : ParserError optional: Vorher xsl Transformation in Normalform – individuelles Mapping der Daten auf Tabellen Keys und Typbestimmung – Daten in Datenbank speichern

7 DTD - > DB Schema 1. Für jedes komplexe Element eine Tabelle mit Primärschlüssel erzeugen. 2. Jeden Element-Inhalt (Subelemente und PCDATA) betrachten und – für einzelne Referenzen zu einfachen Elementen eine Spalte erzeugen, – für mehrfache Elemente (*) eine abhängige Tabelle mit Fremdschlüssel erzeugen, – für Referenzen zu komplexen Elementen einen Fremdschlüssel bei diesen erzeugen, – für PCDATA in komplexen Elementen eine abhängige Tabelle mit Fremdschlüssel in dieser erzeugen, bei optionalen Elementen (?) Nullwerte in der entsprechenden Spalte erlauben und – evtl. Spalten für Ordnungsnummern bei Subelementen und PCDATA einfügen, falls deren Reihenfolge wichtig ist. 3. Jedes Attribut betrachten und für einfache Attribute eine Spalte erzeugen, – für mehrwertige Attribute (z.B. IDREFS) eine abhängige Tabelle mit Fremdschlüssel erzeugen, – bei optionalen Attributen (#IMPLIED) Nullwerte in der entsprechenden Spalte erlauben – sowie Default-Werte ¨

8 DB-Schema -> DTD 1. Für jede Tabelle ein Element erzeugen, dessen Subelemente aus den Spalten der Tabelle abgeleitet werden. Gleichzeitig für jede Spalte, die nicht Primär- oder Fremdschlüssel ist, ein PCDATA-Element erzeugen. 2. Für jede abhängige Tabelle, die einen Fremdschlüssel enthält, ein Subelement erzeugen. 3. Bei Spalten mit möglichen Nullwerten ein optionales Subelement (?) erzeugen.

9 Table Based Mapping.....................

10 Object-Relational Mapping Es wird versucht den XML Baum auf den Datenbank Bereich mit jeder Ebene als eigene Tabelle zu mappen

11 Mapping vom Profi http://www.rpbourret.com/xml/DTDToDataba se.htm#object

12 XML Enabled Datenbank Speicherung von XML Daten als BLOB/CLOB Je nach Tiefe der Daten können Teilbäume als Text im BLOB gespeichert werden. Auslesen und Suche über Volltextrecherche Oder hinzufügen einer weiteren Spalte id

13 Beispiel Oracle 9i Support für offene Standards – W3C: DOM, XML Schema, XSLT, XQuery – ANSI: SQLX – IETF: WebDAV – Und: HTTP, FTP, JNDI, Web Services Integriertes XML Repository in das RDBMS XML Schema-Integrität und RDBMS-Integritätregeln für XML Daten XML Views über relationale Daten und umgekehrt XML spezifische Performance Leichte Darstellbarkeit durch Transformation im Server

14 O

15 O

16

17

18 Im Hintergrund

19 Architektur

20 HTTP Zugriff

21

22

23

24 Altova Oracle Integration

25

26

27 XML native Datenbanken 6.3.1 What is a Native XML Database? 6.3.2 Native XML Database Architectures – 6.3.2.1 Text-Based Native XML Databases 6.3.2.1 Text-Based Native XML Databases – 6.3.2.2 Model-Based Native XML Databases 6.3.2.2 Model-Based Native XML Databases 6.3.3 Features of Native XML Databases – 6.3.3.1 Document Collections 6.3.3.1 Document Collections – 6.3.3.2 Query Languages 6.3.3.2 Query Languages – 6.3.3.3 Updates and Deletes 6.3.3.3 Updates and Deletes – 6.3.3.4 Transactions, Locking, and Concurrency 6.3.3.4 Transactions, Locking, and Concurrency – 6.3.3.5 Application Programming Interfaces (APIs) 6.3.3.5 Application Programming Interfaces (APIs) – 6.3.3.6 Round-Tripping 6.3.3.6 Round-Tripping – 6.3.3.7 Remote Data 6.3.3.7 Remote Data – 6.3.3.8 Indexes 6.3.3.8 Indexes – 6.3.3.9 External Entity Storage 6.3.3.9 External Entity Storage 6.3.4 Normalization, Referential Integrity, and Scalability – 6.3.4.1 Normalization 6.3.4.1 Normalization – 6.3.4.2 Referential Integrity 6.3.4.2 Referential Integrity – 6.3.4.3 Scalability 6.3.4.3 Scalability

28 Artikel zur Entscheidung native or not http://www.dotnet-magazin.de/itr/magazine/stuff/dm/Interview10_05.pdf

29 Tamino im Einsatz

30 Kommunikation mit Tamino

31 Kommunikationssprachen XQuery XUpdate

32

33

34

35 Middleware, zB Simplex

36 Application Server f. Mapping Bizztalk


Herunterladen ppt "XML und Datenbanken © 2006 Markus Röder www.training-deluxe.de."

Ähnliche Präsentationen


Google-Anzeigen