Two interesting sessions of today are :
Session 1: XML DB Case study
Speakers: Mihaela Lupu, Waters Corporation and Geetha Arora, Oracle
Mihaela started the presentation with a high-level overview about the Waters Corporation. Its a global leader in providing complimentary analytical technologies based on Milford,MA
getting a generic catalog db for the different structures, different architectures and different user interface of their products
large structures over 10 million rows.
larger than 100mb in size
unstructured data about 40gb in size
25mb/sec to 100mb/sec ...storage data rate
real time support for read and write at the same time.
content management system ..central repository
save, load, delete and search operations using api
storage -- unified format..common info, xml data and binary data
created relation tables (catalog info) with xpath and xnamespaces info as columns as a solution to search related issues. An Engine automatically generates this catalog (relational table) by reading the xml data.
Application retrieves the xpath and namespace info from this catalog table before reading the actual xml data.
created views as a solution to ... build sql statement generically, join data from xml and relational tables, clean and better performance..
xml index creation for most searchable xml data.
XML use cases...
structured ... data centric
unstructured... doc centric
unstructured: binary xml + unstructured xml index
structured: hybrid storage /obj relational + clob
unstructured: binary xml + structured xml index
structured: structured storage + btree index
why index xml?
improves xpath based fragment extraction
good for path and value based predicates
good dml performance
unstructured xml index:
doc is unstructured
xpaths not known in advance
allows async maintenance
peicewise index updates possible
rid | path | order key | locator | value
path subsetting.. nodes that will be used in common queries, better ddl and dml performance
hybrid index possible for 1 column
provides relational view over xml data
index size is small and light weight
xpaths known in advance
xml with structured component
rowid | col1 | col2
2nd index on structured xml index can be manually created.. It can also be a text index, btree or bitmap
for unstructured xml index, oracle automatically creates the 2nd index (btree )
choice of index determined by query paradigm.. xpath known or unknown