Kein Folientitel

Werbung
1
DOAG - Regionaltreffen
Hannover
Donnerstag, 06.03.2003
Ali Khabbazian
Thales IS
mail: [email protected]
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Oracle 9i XML Datenbank
2
Topics:
•Einführung (XML und ORACLE XML DB)
•XML Developer‘s Kit (XDK) für Java und PL/SQL
•ORACLE XML SQL Utility (XSU)
© Thales IS GmbH 2002
•Demo bzw. Beispiele
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
3
Einführung
1- XML - Allgemein
© Thales IS GmbH 2002
2- XML in der ORACLE Datenbank
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
4
XML - Allgemein
© Thales IS GmbH 2002
Was ist XML nicht?
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
5
XML - Allgemein
...XML ist nicht
Ein Abkömmling von HTML
Ein Ersatz für HTML
Eine Programmiersprache
(es ist eine Datenbeschreibungssprache (engl. eXtended Markup Language))
Thales Information Systems GmbH
© Thales IS GmbH 2002
Ein Ersatz für Java
XML ist für die Daten
Java ist für den Prozess
Im Team
für Ihren
Erfolg
6
XML - Allgemein
Wofür und warum ist XML gut?
•Als Speicherformat
•Als Datenaustauschformat
•Speichern von Applikation-Metadaten
•Datenaustausch zwischen EAI-Komponentenn
© Thales IS GmbH 2002
•herstellerneutralen Protokollen (z. B. SOAP)
•Standard
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
7
XML Dokument
Quelldokument
DTD
Document Type Definition
(optional)
XSL / XSLT
Stylesheets (optional)
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
XML - Allgemein
8
XML - Geräteunabhängigkeit
Business to Business
WEB
•Beliebiger Inhalt
•beliebiges Gerät
DB
...
Internet
andere
Applikationen
WEB
DB
Business to Customer
...
Phone
Pager
Palm
Geräte
Thales Information Systems GmbH
SmartPhone
Content
Servers
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
PC
9
XML Transformation - XSL & XSLT
XSLT wird benutzt, um verschiedene User-Interfaces
oder Applikationen zu erzeugen
xsl:...
PC
SmartPhone
HTML
WML
WEB
<?xml?>
DB
Phone
Pager
Thales Information Systems GmbH
...
XSLT
VoxML
WhateverML
Content
Servers
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Palm
10
Einführung Teil 2:
© Thales IS GmbH 2002
XML in der ORACLE Datenbank
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
11
XML in der ORACLE Datenbank
Formal:
Aus der Anwendersicht:
•vollständige und zeitnahe
Umsetzung der
W3C-Spezifikationen
•Bereitstellung geeigneter
Tools für die Arbeit mit XML
in der Datenbank
•Zugriff (inkl. Update)
•Einbindung in bestehende
Systemlandschaften
•Performance, Skalierbarkeit
Sicherheit
•native Speicherung von
XML in der DB
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Anforderungen an XML DBs
12
XML Datenbanken - eine Prognose
Gartner, Oktober 2001
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Bis 2004 spielt XML-relationale Technologie
in jeder modernen eBusiness-orientierten
Architektur eine Rolle
13
ORACLE XML Datenbank
Kein separater Server sondern nur eine Erweiterung
(keine zusätzlichen Lizenzkosten)
Gleicher Datenbank-Kernel für:
•relationale Daten und
Thales Information Systems GmbH
© Thales IS GmbH 2002
•XML-Dokumente
Im Team
für Ihren
Erfolg
14
ORACLE XML Datenbank
Ein nativer Datentyp
SQL-Methoden für XML
W3C-Standard
XML/SQL-Dualität
Standardmethode zum XML Zugriff
XML-Repository zur Organisation von XML Dokumenten
FTP-, HTTP- und WebDAV-Protokoll
Standard API‘s für Java, C und PL/SQL-Zugriff
....
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Was bietet Oracle XML DB?
15
Vor dem Mauerfall
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
ORACLE XML Datenbank
16
Nach dem Mauerfall
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
ORACLE XML Datenbank
17
Oracle 8i
Thales Information Systems GmbH
Oracle 9i R1
Oracle 9i R2
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
XML in der ORACLE Datenbank
18
XML in der ORACLE Datenbank
Speicherungsart (I)
Sperre auf Elementebene
CLOB
Multiuser-Zugriff
Relationale Indizierung
Performance
Relational
Nur SQL
XML Information
Nativ
Objektrelational
XML Validierung
Relationale Abbildung
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Nativ als
Dokument
19
XML in der ORACLE Datenbank
Speicherungsart (II)
Flexible Speicherung
CLOB
Performance
Nur Textindex
Nativ als
Dokument
Relational
Sperre auf Dokumentebene
Redundanz
XML Validierung
Thales Information Systems GmbH
© Thales IS GmbH 2002
Nativ
Objektrelational
Im Team
für Ihren
Erfolg
20
XML in der ORACLE Datenbank
Speicherungsart (III)
Flexibilität
CLOB
Standardkonformer Zugriff
XML Indizieung
XML Validierung
Relational
Nativ
Objektrelational
Thales Information Systems GmbH
Performance
Sperre auf Dokumentebene
© Thales IS GmbH 2002
Nativ als
Dokument
Im Team
für Ihren
Erfolg
21
XML in der ORACLE Datenbank
Speicherungsart (IV)
Sperre auf Elementebene
CLOB
SQL und W3C Standards
XML Indizieung
Relational
XML Validierung
Intelligentes DOM Handling
Performance
Nativ
Objektrelational
Thales Information Systems GmbH
Flexibilität
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Nativ als
Dokument
22
XML in der ORACLE Datenbank
SQL> INSERT into PURCHASE_ORDER_TABLE values (1234, XMLTYPE(
2
‘<PurchseOrder>
3
<Reference>Khabbazian-20030306123456</Reference>
4
<Actions/>
5
<Reject/>
6
<Requestor>Ali Khabbazian</Requestor>
.......
18
</Purchase>‘)
19 /
1 row created.
SQL>
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
SQL> Create table PURCHASE_ORDER_TABLE
2
(PO_NUMBER number(16), PURCHASE_ORDER xmltype)
3
)
4
/
Table created.
23
ORACLE XML DB Architektur (I)
2100
8080
XML DB Repository
HTTP
FTP
WebDAV
XML Shema
SQL*NET
XML Dokumente
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Port
8080
24
Zugriff auf XML DB per WebDAV
© Thales IS GmbH 2002
Anmelden an DB
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
25
© Thales IS GmbH 2002
Zugriff per http (mit XSLT-Transformation)
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
26
XML DB Repository
Hinzufügen eines Verzeichnisses in das Repository
SQL> declare
2
result boolean;
3
begin
4
result := xdb_utilites.createFolder(‘/home/‘|| USER || ‘/xsd‘);
5
end
6
/
PL/SQL procedure erfolgreich durchgeführt.
SQL> commit;
Thales Information Systems GmbH
© Thales IS GmbH 2002
Commit complete.
SQL>
Im Team
für Ihren
Erfolg
27
XML Developer‘s Kit (XDK)
•Beinhaltet wichtige Komponenten zum Lesen, Manipulieren,
Transformieren und Darstellen von XML-Dokumenten
•Keine Shareware- oder Trialversion
Vollsupport
© Thales IS GmbH 2002
• Zum einfachen Erstellen von web-basierten
Datenbank-Applikationen
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
28
XML Developer‘s Kit (XDK)
Sun Solaris Windows NT Linux
HP-UX
XDK für Java
9.2.0.4.0
9.2.0.4.0
9.2.0.4.0
9.2.0.4.0
XDK für JavaBeans
9.2.0.4.0
9.2.0.4.0
9.2.0.4.0
9.2.0.4.0
XDK für C
9.2.0.4.0
9.2.0.4.0
9.0.1.0.0
9.0.1.0.0
XDK für C++
9.2.0.4.0
9.2.0.4.0
9.0.1.0.0
9.0.1.0.0
XDK für PL/SQL
9.2.0.4.0
9.2.0.4.0
9.2.0.4.0
9.2.0.4.0
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
Aktuelle Releases in 9i
29
XDK für Java
Komponenten der XDK für Java:
•XML-Parser für Java inkl. XLST 
•XML Schema-Prozessor für Java 
•XML Class-Generator für Java 
•XSQL Servlet
•SOAP Server
© Thales IS GmbH 2002
•XML Compressor
•TransX Utility
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
30
XDK für Java
XML-Parser für Java:
XML-Daten können von der Applikation bearbeiten werden.
Folgende Standards werden unterstützt:
•W3C XML 1.0 Anforderungen
•DOM (Document Object Model) API (1.0, 2.0 Core, 2.0 Traversal)
© Thales IS GmbH 2002
•SAX (Simple API für XML) 2.0 und SAX2-ext
•W3C XML Namespaces 1.0
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
31
XDK für Java
XML Schema Processor für Java:
Es gibt zwei Arten, XML Schema Processor zu nutzen:
•Ein Builder setzt das Shema aus den XML Schema Dokumenten Zusammen
© Thales IS GmbH 2002
• Ein Validator benutzt das Schema zur Validierung eines Dokuments
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
32
XDK für Java
XML Class Generator für Java:
Nützlich in folgenden Situationen:
•Austausch von XML-Messages zwischen zwei Applikationen
© Thales IS GmbH 2002
•Erstellen von einem XML-Dokument für eine Web-Form
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
33
© Thales IS GmbH 2002
XDK für Java
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
34
© Thales IS GmbH 2002
ORACLE XML DB - Architektur II
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
35
XDK für PL/SQL
Wichtige Komponente der XDK für PL/SQL:
XML Parser für PL/SQL
XML Schema Prozessor für PL/SQL
XML SQL Utility (XSU) für PL/SQL
XSLT Prozessor
Thales Information Systems GmbH
© Thales IS GmbH 2002
XML Schema Prozessor
Im Team
für Ihren
Erfolg
36
XML SQL Utility - XSU
1- Das Werkzeug zur Umwandlung:
der relationalen Daten in XML-Format
und der XML-Daten in die relationale Form
2- Das Werkzeug zum
stückweisen (piecewise) Update von XML-Dokumenten
3- XSU-Funktionalitäten sind erreichbar:
Thales Information Systems GmbH
© Thales IS GmbH 2002
über Java API
über PL/SQL API
über Java Befehl
Im Team
für Ihren
Erfolg
37
XML SQL Utility - XSU
<?xml version=’1.0’?>
<ROWSET>
<ROW num="1">
<EMPNO>7369</EMPNO>
<ENAME>Smith</ENAME>
<JOB>CLERK</JOB>
<MGR>7902</MGR>
<HIREDATE>12/17/1980 0:0:0</HIREDATE>
<SAL>800</SAL>
<DEPTNO>20</DEPTNO>
</ROW>
<!-- additional rows ... -->
</ROWSET>
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
SQL> SELECT * FROM emp;
38
Erzeugen von XML mit XML SQL Utility
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
XML SQL Utility - XSU
39
Speichern von XML in der Datenbank mit XSU
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
© Thales IS GmbH 2002
XML SQL Utility - XSU
40
Referenzen:
Bücher:
Oracle9i XML-Handbuch / Oracle Press / 2002 / Ben Cheng
Online-Veröffentlichungen:
XML Developer‘s Kits Guide - XDK.pdf
XML Database Developer‘s Guide.pdf
XML API Reference.pdf
ORACLE XML DB - An ORACLE Technical White Paper (PDF-File)
Links:
© Thales IS GmbH 2002
http://otn.oracle.com./tech/xml/xml_java/content.html
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
41
© Thales IS GmbH 2002
Danke für Ihre Aufmerksamkeit
Thales Information Systems GmbH
Im Team
für Ihren
Erfolg
Herunterladen