7. WikiPedia
ā¢ One string of XML data with
structured and unstructured
data sections
ā¢ Language: English
ā¢ Size : 42,15 GB
ā¢ Pages : 12.961.997
ā¢ Date : 21 Dec 2012
17. Oracle XML DB
ā¢ NO cost option
ā¢ C (native / embedded kernel)
ā¢ (XQuery) Standards
ā¢ Code maintained by Oracle
18. XQuery
XMLType Abstraction
DB XQuery Procedural XQuery
XQuery Rewrite Pushdown XVM
(use āno query rewriteā)
Relational Streaming XPath DOM Tree
Evaluation Model
Access
SQL Execution Methods XMLIndex
Object-Relational Binary XML
Relational Storage Secure Files
Source: S317428: Building Really Scalable XML Applications with Oracle XML DB and Oracle Text
27. WikiPedia
ā¢ Structured & Unstructured
bits and pieces
ā¢ A lot of āunboundedā
elements
ā¢ Not a lot of restrictions
ā¢ The bit with value is in
element ātekstā
52. WikiPedia
ā¢ SQL*Loader
ā¢ Parallel or Direct
ā¢ Securefile LOB Column
ā¢ 2.5 hours
And no (performant) way
to get the details outā¦
a.k.a ācompletely uselessā
53. WikiPedia
ā¢ SQL*Loader
ā¢ Parallel or Direct
ā¢ Securefile Binary XML
ā¢ ā¦2.5 hours ???
55. fast
insert performance CLOB
XMLType
CLOB
(domain) indexes
XMLType
Binary XML
XMLType
Object Relational
fast
select performance
56.
57. XML Partitioning
ā¢ Object Relational Partitioning
ā Equi-Partitioning since version Oracle 11.1.0.7.0
ā¢ Binary XML Partitioning
ā Range, List, Hash
ā¢ Local partitioned XMLIndex
ā LOCAL keyword in XMLIndex create syntax
ā¢ Partition Key on virtual column (Binary XML)
ā¢ Partition Key on column (Object Relational)
58. XMLType
Binary XML Securefile
(document/content)
Post Parse LOB Index
59. Driving access on CONTENT
BTre
e
Index
bookstore
Function
based Index
(XPath)
book whitepaper
title author author chapter title author id paragraph
Unstructured
Structured XMLIndex
XMLIndex
content structured
content
BTree
Oracle XML Index
Text Index
61. Structured XMLIndex (SXI)
ā¢ CONTENT TABLE(s)
ā¢ Based on XMLTABLE syntax Structured
XMLIndex
ā¢ XMLTable construct can be f (x)
nested:
ā VIRTUAL column alias
ā¢ Can be maintained manually
ā¢ Secondary indexes possible
Content
Tables
62. Describe CONTENT TABLE
ā¢ A āregularā heap table with columnsā¦
ā¢ Ideal for secondary indexes, if needed.
65. Unstructured XMLIndex (UXI)
ā¢ PATH TABLE
ā¢ Use Path Subsetting Unstructured
ā Full Blown XMLIndex can be BIG XMLIndex
f (x)
ā¢ Token Tables (XDB.X$......)
ā Query re-write on Tokens
ā Fuzzy Searches, //
ā Optimizer Statistics
ā¢ Can be maintained manually
ā Recorded in Pending Table
Path Table
ā¢ Secondary indexes possible
74. XML Full Tekst Index
ā¢ Based on Oracle Text Index, XQuery Full Text
ā¢ XML Namespace Aware
ā¢ XML Semantic aware full text search
ā Full-Tekst Selection Expression ā contains text
ā Logical Full Text Operator ā ftor, ftand, ftMildNot
ā Context Aware full text search
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85. Balanced Design
ā¢ Inserts, Updates & Deletes
ā XML Future Changes
ā Index Maintenance In Memory On Disk
ā¢ Selects
ā In Memory
ā Via Indexes
ā¢ XML Validation
ā Strict, Lazy
ā Client Side Possibilities
86. Reward
ā¢ Optimal performance
ā¢ Out performing XML
ā¢ Proper design will give
performance increase over
XML handlingā¦
ā¦proper design is still keyā¦
87.
88. References
Oracle XML DB
ā http://www.oracle.com/pls/db112/homepage
XML DB FAQ Thread
ā http://forums.oracle.com/forums/thread.jspa?thr
eadID=410714
Personal Blog
ā http://www.xmldb.nl
ā http://technology.amis.nl
89. References
Daniela Florescu, Oracle Corporation
Advances in XML and XQuery
Sam Idicula, Oracle XML DB Development Team
Binary XML Storage and Query Processing in Oracle
Jinyu Wang, Scott Brewton
Making XML Technology Easier to Use
Joel Spolsky - Joel on Software
Back to Basics
90. References
Oracle XML DB Main page material
ā¢ Oracle XML DB : Best Practices to Get Optimal
Performance out of XML Queries (PDF)
ā¢ Oracle XML DB : Choosing the Best XMLType
Storage Option for Your Use Case (PDF)
ā¢ A Request for Comments for the Oracle Binary
XML Format
Editor's Notes
See also OOW 2010, S317428: Building Really Scalable XML Applications with Oracle XML DB and Oracle Text ā Nipun Agarwal, Oracle