Speicheroptionen des Oracle Datentypen XMLType

von Karsten Besserdich

Oracle XMLTypes können mittels verschiedener Speicheroptionen in der Oracle Datenbank in einer Tabelle abgelegt werden.

Speicheroptionen

  • CLOB XMLType – CLOBs
  • (O-R) XMLType oder auch Object Relational XMLType genannt
  • Binary XMLType – ab Oracle 11g definierter Oracle Standard – Pre-Parsed binary format

Vorteile von Binary XMLType

  • komprimierte Speicherung – XML-Elemente werden in separaten Indextabelle abgelegt und durch jeweilige ID ersetzt
  • optimierte Zugriffspfade auf XML-Elemente – u.a. schnellere Suche in der abgespeicherten XML-Struktur

XMLTypes können, müssen jedoch nicht, einem XML-Schema zugewiesen werden. Hier sprechen wir von Schema-based XMLTypes bzw. non-Schema-based XMLTypes (Default).

Die folgenden Beispiele verdeutlichen die Erstellung einer Tabelle im Zusammenhang mit XMLTypes.

non-Schema-based CLOB XMLType

Schema-based CLOB XMLType

Voraussetzung für die Erstellung der Tabelle ist eine Registrierung des XML-Schemas.

non-Schema-based (O-R) XMLType

Schema-based (O-R) XMLType

non-Schema-based Binary XMLType

Schema-based Binary XMLType

Wichtig in diesem Beispiel ist, dass das XML-Schema ebenfalls als binary xml in der Oracle XML-DB registriert wird. Hierzu muss der Parameter option mit dem Wert dbms_xmlschema.register_binaryxml belegt werden.

Empfehlung

Ich habe sehr gute Erfahrungen mit dem Binary XMLType und anschliessender flexiblen XML-Validierung gemacht. Ein kleines Tutorial finden Sie in meinem Artikel Tutorial XML-Validierung in Oracle XML-DB.

SCHREIBEN SIE EINEN KOMMENTAR