SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
www.sagecomputing.com.auwww.sagecomputing.com.au
Oracle XML DBOracle XML DB
What's in it for me?What's in it for me?
Penny Cookson - Managing Director
SAGE Computing ServicesSAGE Computing Services
Customised Oracle Training WorkshopsCustomised Oracle Training Workshops
and Consultingand Consulting
www.sagecomputing.com.auwww.sagecomputing.com.au
NZOUG Masterclass Series
www.sagecomputing.com.auwww.sagecomputing.com.au
Overview
Storage methods – structured and unstructured,
pros and cons
The XMLType
Storing , querying and updating XML using SQL
XML schemas
XML Validation
XML Transformation
XML DB repository
Using ftp and http for access to XML documents
Using webDAV for access to XML documents
www.sagecomputing.com.auwww.sagecomputing.com.au
Overview
www.sagecomputing.com.auwww.sagecomputing.com.au
Why Do I Care?Why Do I Care?
XML is the de facto standard for data interchange
XML is widely used for content management
XML provides flexible data storage
Store structured, semi-structured, unstructured data
XQuery to become W3C recommendation
Security and versioning
XMLDB provides:
Native server support for storage and processing of XML
documents
SQL access to XML data
Access using standard internet protocols
www.sagecomputing.com.auwww.sagecomputing.com.au
Why XMLDBWhy XMLDB
Without XML as a datatype
With XML as a datatype
XML as CLOB
Shredded XML
Complex
Processing in
the application
Native
XMLType
data type
Process XML
like any other
data type
www.sagecomputing.com.auwww.sagecomputing.com.au
FunctionalityFunctionality
Native storage of XML data using XMLType
Built- in methods provided for
manipulating/accessing the data
Support for W3C XML Schema standard
Support for W3C XPath standard
Support for W3C XQuery standard
Repository stores XML and other documents
using path based paradigm
Performance optimisations including
indexing
www.sagecomputing.com.auwww.sagecomputing.com.au
Underlying Technology
www.sagecomputing.com.auwww.sagecomputing.com.au
Is it installed?Is it installed?
DBCA automatically installs XMLDB
functionality
Install manually using catqm.sql and catxdbj
XDB user owns repository
/xdbconfig.xml stored in repository
Configure using Enterprise Manager or
manually
www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au
XMLTypeXMLType
Native server data type
Provides methods
extract()
extractValue()
existsNode()
schemaValidate()
transform()
Unstructured in CLOBS
Structured in object type tables created from schema
Semistructured
XMLType views for legacy data
www.sagecomputing.com.auwww.sagecomputing.com.au
XMLTypeXMLType -- ExamplesExamples
CREATE TABLE res_docs OF XMLType;
CREATE TABLE resource_details
(code VARCHAR2(4)
,description VARCHAR2(50)
,daily_rate NUMBER(6,2)
,specification XMLType);
www.sagecomputing.com.auwww.sagecomputing.com.au
XMLTypeXMLType -- ExamplesExamples
INSERT INTO res_docs
VALUES(XMLType('<Equipment serialNo="1000">
<Manufacturer>ACME</Manufacturer>
<Servicedate>01-JAN-2002</Servicedate>
<Type>Video Equipment</Type>
</Equipment>'));
INSERT INTO resource_details
(code, description, daily_rate, specification)
VALUES('VCR6', 'Video recorder 6',100,
XMLType('<Equipment serialNo="1000">
<Manufacturer>ACME</Manufacturer>
<Servicedate>01-JAN-2002</Servicedate>
<Type>Video Equipment</Type>
</Equipment>'));;
www.sagecomputing.com.auwww.sagecomputing.com.au
Storage MethodsStorage Methods
Entire document in a single
CLOB
Fast storage and retrieval of
entire document
Preserves original document
Store any document
Can be indexed using function
based index or Oracle text
Limited intelligent processing
XPath operations require
creation of DOM from document
No piecewise update
More space
Non schema based
Contents decomposed into set of
objects
Increased processing in storage
and retrieval
Loses whitespace / data format,
maintains DOM fidelity
Limited changes to schema
XQuery and XPath converted to
native database queries
B*Tree, function based and
Oracle text indexes
XML schema annotation
determines storage type
Less space
Unstructured- CLOB Structured
www.sagecomputing.com.auwww.sagecomputing.com.au
A Closer Look at StructuredA Closer Look at Structured
StorageStorage
Register
Schema
Oracle defines an object
Type for each complexType
Collections mapped to
VARRAYS
Schema annotations
determine storage
structures
Creates default tables
www.sagecomputing.com.auwww.sagecomputing.com.au
RepositoryRepository
Hierarchical folder/file metaphor
Stores metadata and content
Any content , but particularly XML
Access using
SQL or PL/SQL
standard protocols
Oracle Enterprise Manager
www.sagecomputing.com.auwww.sagecomputing.com.au
www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au
XML Schema
www.sagecomputing.com.auwww.sagecomputing.com.au
XML SchemaXML Schema
Defines validation rules
Defines physical storage types using
annotation
Defines physical storage names using
annotation
Defined as .xsd document
Registered using
DBMS_XMLSCHEMA.registerschema
www.sagecomputing.com.auwww.sagecomputing.com.au
www.sagecomputing.com.auwww.sagecomputing.com.au
Creating Schema BasedCreating Schema Based
XMLType InstancesXMLType Instances
Pass the schema in to XMLType constructor
or
SchemaLocation defined in XML document
Document must be well formed and conform
to SQL Type definitions created by schema
For full validation use schemaValidate()
method
Can use check constraint or trigger
Add uniqueness and foreign key constraints
www.sagecomputing.com.auwww.sagecomputing.com.au
Changing a SchemaChanging a Schema
DBMS_XMLSCHEMA.copyEvolve
Copies instances to temporary tables
Drops old schema
Creates new schema
Registers new schema
Copy instances back
Restrictions
Indexes, triggers, constraints lost
Does not support XMLType columns
www.sagecomputing.com.auwww.sagecomputing.com.au
DEMODEMO
Create Schema
Create document using PL/SQL
Create document using the
repository
Validate the document
www.sagecomputing.com.auwww.sagecomputing.com.au
Accessing the XML data
www.sagecomputing.com.auwww.sagecomputing.com.au
Access MethodsAccess Methods
Query based
SQL
Java API
PL/SQL API
Path based (repository)
SQL (RESOURCE_VIEW or PATH_VIEW)
PL/SQL (DBMS_XDB)
Protocol based
www.sagecomputing.com.auwww.sagecomputing.com.au
Query BasedQuery Based
Identify whether a node exists
existsNode
Fetch a node
extract
Fetch a value
extractValue
Update a node
updateXML
Transform a document
XMLtransform
www.sagecomputing.com.auwww.sagecomputing.com.au
ExampleExample
SELECT existsNode(value(R),
'/Equipment[Manufacturer="ACME"]') Is_There,
extractValue(value(R),
'/Equipment/Manufacturer') Manufacturer
FROM res_docs R;
IS_THERE MANUFACTURER
------------------- ------------------------------
1 ACME
0 SMITH AND SONS
0 SMITH AND SONS
www.sagecomputing.com.auwww.sagecomputing.com.au
ExampleExample
SELECT extract(value(R),
'/Equipment/Manufacturer') Tree
FROM res_docs R;
TREE
--------------------------------------------------------------------
<Manufacturer>ACME</Manufacturer>
<Manufacturer>SMITH AND SONS</Manufacturer>
<Manufacturer>SMITH AND SONS</Manufacturer>
www.sagecomputing.com.auwww.sagecomputing.com.au
ExampleExample
UPDATE res_docs R
SET value(R) =
updateXML(value(R),'/Equipment/Manufacturer/text()',
'ACME CORPORATION')
WHERE existsNode(value(R),
'/Equipment[Manufacturer="ACME"]') =1;
SELECT extract(value(R),'/Equipment/Manufacturer') Tree
FROM res_docs R;
TREE
--------------------------------------------------------------------------
<Manufacturer>ACME CORPORATION</Manufacturer>
<Manufacturer>SMITH AND SONS</Manufacturer>
<Manufacturer>SMITH AND SONS</Manufacturer>
www.sagecomputing.com.auwww.sagecomputing.com.au
ExampleExample
-- Create a table store the XSL stylesheet
CREATE TABLE res_xsl OF XMLType;
-- Insert the stylesheet document
INSERT INTO res_xsl
values (XMLType('<html>
<head/>
<body text="#FFFF00">
<FONT FACE="Arial">
</FONT>
……………………………….
……………………………….
</body>
</html>'));
--Transform the documents
SELECT value(R).transform(value(S))
FROM res_docs(R), res_xsl;
www.sagecomputing.com.auwww.sagecomputing.com.au
Index OptionsIndex Options
Use extractValue for single value
Using extract for multiple values creates index
on concatenation
Use function based indexes
Use bitmap indexes on existsNode
Use ctxxpath indexes for existsNode
processing
www.sagecomputing.com.auwww.sagecomputing.com.au
Generate Relational data asGenerate Relational data as
XMLXML
SELECT SYS_XMLGEN(description) DESCR,
SYS_XMLGEN(specification) SPEC
FROM resource_details;
DESCR SPEC
--------------------------------------------- --------------------------------------------------
<DESCRIPTION>Video recorder 6 <SPECIFICATION>
</DESCRIPTION> <Equipment serialNo="1000">
<Manufacturer>ACME CORPORATION
</Manufacturer>
<Servicedate>01-JAN-2002</Servicedate>
<Type>Video Equipment</Type>
</Equipment>
</SPECIFICATION>
www.sagecomputing.com.auwww.sagecomputing.com.au
Aggregate RowsAggregate Rows
SELECT SYS_XMLAGG(SYS_XMLGEN(value(R)))
FROM res_docs R;
SYS_XMLAGG(SYS_XMLGEN(VALUE(R)))
---------------------------------------------------------------------------------
<ROWSET>
<ROW>
<Equipment serialNo="1000">
<Manufacturer>ACME CORPORATION</Manufacturer>
<Servicedate>01-JAN-2002</Servicedate>
<Type>Video Equipment</Type>
</Equipment>
</ROW>
<ROW>
<Equipment serialNo="2000">
<Manufacturer>SMITH AND SONS</Manufacturer>
<Servicedate>10-DEC-2002</Servicedate>
<Type>Video Equipment</Type>
</Equipment>
</ROW>
…………………………. www.sagecomputing.com.auwww.sagecomputing.com.au
DEMODEMO
Xpath queries
Updating data
Transformation
www.sagecomputing.com.auwww.sagecomputing.com.au
XML Repository
www.sagecomputing.com.auwww.sagecomputing.com.au
Repository AccessRepository Access
PATH_VIEW
RESOURCE_VIEW
DBMS_XDB
Standard protocols
ftp
http
WebDav
Oracle Enterprise Manager
www.sagecomputing.com.auwww.sagecomputing.com.au
DBMS_XDBDBMS_XDB
Create a resource in the XMLDB repository
createResource
Check whether a resource exists
existsResource
Create a folder in the repository
createFolder
Access documents in the repository
XDBURIType.getBLOB()
XDBURIType.getCLOB()
XDBURIType.getXML()
www.sagecomputing.com.auwww.sagecomputing.com.au
VersionsVersions
DBMS_XDB_VERSION.MakeVersioned
Returns resource id of first version
DBMS_XDB_VERSION.checkOut
DBMS_XDB_VERSION.checkIn
DBMS_XDB_VERSION.UnCheckOut
DBMS_XDB_VERSION.GetPredecessors
Only for non schema based resources
www.sagecomputing.com.auwww.sagecomputing.com.au
SecuritySecurity
Managed in Access Contrl Lists (ACL)
Stored in XDB.XDB$ACL
Resources stored in XDB$RESOURCE
Supports
Database users
Database roles
LDAP users
LDAP groups
DBMS_XDB.setACL
DBMS_XDB.GETACLDOCUMENT
DBMS_XDB.getPrivileges
www.sagecomputing.com.auwww.sagecomputing.com.au
PrivilegesPrivileges
Atomic
read-properties
read-contents
update
read-acl
dav: lock
dav: unlock
Aggregate
all
dav: read
dav: write
www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au
www.sagecomputing.com.auwww.sagecomputing.com.au
WebDAVWebDAV
www.sagecomputing.com.auwww.sagecomputing.com.au
httphttp
www.sagecomputing.com.auwww.sagecomputing.com.au
ftpftp
www.sagecomputing.com.auwww.sagecomputing.com.au
DEMODEMO
Using DBMS_XDB
ftp access
WebDav access
http access
www.sagecomputing.com.auwww.sagecomputing.com.au
Thank You
For Your Attention
Enquiries@sagecomputing.com.au
SAGE Computing ServicesSAGE Computing Services
Customised Oracle Training WorkshopsCustomised Oracle Training Workshops
and Consultingand Consulting
www.sagecomputing.com.auwww.sagecomputing.com.au

Más contenido relacionado

La actualidad más candente

OWB11gR2 - Extending ETL
OWB11gR2 - Extending ETL OWB11gR2 - Extending ETL
OWB11gR2 - Extending ETL Suraj Bang
 
Lesson09
Lesson09Lesson09
Lesson09renguzi
 
MySQL Scalability Mistakes - OTN
MySQL Scalability Mistakes - OTNMySQL Scalability Mistakes - OTN
MySQL Scalability Mistakes - OTNRonald Bradford
 
Perf Tuning Best Practices
Perf Tuning Best PracticesPerf Tuning Best Practices
Perf Tuning Best Practicesguest01bbdd
 
Config management
Config managementConfig management
Config managementAlexei Goja
 
Michael Bayer Introduction to SQLAlchemy @ Postgres Open
Michael Bayer Introduction to SQLAlchemy @ Postgres OpenMichael Bayer Introduction to SQLAlchemy @ Postgres Open
Michael Bayer Introduction to SQLAlchemy @ Postgres OpenPostgresOpen
 
MythBusters Globalization Support - Avoid Data Corruption
MythBusters Globalization Support - Avoid Data CorruptionMythBusters Globalization Support - Avoid Data Corruption
MythBusters Globalization Support - Avoid Data CorruptionChristian Gohmann
 
2012 summarytables
2012 summarytables2012 summarytables
2012 summarytablessqlhjalp
 
MySQL Best Practices - OTN
MySQL Best Practices - OTNMySQL Best Practices - OTN
MySQL Best Practices - OTNRonald Bradford
 
Database design i_-_1_dl300
Database design i_-_1_dl300Database design i_-_1_dl300
Database design i_-_1_dl300KOI Lastone
 
Get database properties using power shell in sql server 2008 techrepublic
Get database properties using power shell in sql server 2008   techrepublicGet database properties using power shell in sql server 2008   techrepublic
Get database properties using power shell in sql server 2008 techrepublicKaing Menglieng
 
common_schema, DBA's framework for MySQL
common_schema, DBA's framework for MySQLcommon_schema, DBA's framework for MySQL
common_schema, DBA's framework for MySQLShlomi Noach
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptJavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptDave Stokes
 
Successful Scalability Principles - Part 1
Successful Scalability Principles - Part 1Successful Scalability Principles - Part 1
Successful Scalability Principles - Part 1Ronald Bradford
 
MySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and DevelopersMySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and DevelopersRonald Bradford
 
IaC MeetUp Active Directory Setup for Oracle Security LAB
IaC MeetUp Active Directory Setup for Oracle Security LABIaC MeetUp Active Directory Setup for Oracle Security LAB
IaC MeetUp Active Directory Setup for Oracle Security LABStefan Oehrli
 
New awesome features in MySQL 5.7
New awesome features in MySQL 5.7New awesome features in MySQL 5.7
New awesome features in MySQL 5.7Zhaoyang Wang
 
Extending MySQL Enterprise Monitor
Extending MySQL Enterprise MonitorExtending MySQL Enterprise Monitor
Extending MySQL Enterprise MonitorMark Leith
 
What’s New in Oracle Database 12c for PHP
What’s New in Oracle Database 12c for PHPWhat’s New in Oracle Database 12c for PHP
What’s New in Oracle Database 12c for PHPChristopher Jones
 

La actualidad más candente (20)

OWB11gR2 - Extending ETL
OWB11gR2 - Extending ETL OWB11gR2 - Extending ETL
OWB11gR2 - Extending ETL
 
Lesson09
Lesson09Lesson09
Lesson09
 
MySQL Scalability Mistakes - OTN
MySQL Scalability Mistakes - OTNMySQL Scalability Mistakes - OTN
MySQL Scalability Mistakes - OTN
 
Perf Tuning Best Practices
Perf Tuning Best PracticesPerf Tuning Best Practices
Perf Tuning Best Practices
 
Config management
Config managementConfig management
Config management
 
Michael Bayer Introduction to SQLAlchemy @ Postgres Open
Michael Bayer Introduction to SQLAlchemy @ Postgres OpenMichael Bayer Introduction to SQLAlchemy @ Postgres Open
Michael Bayer Introduction to SQLAlchemy @ Postgres Open
 
MythBusters Globalization Support - Avoid Data Corruption
MythBusters Globalization Support - Avoid Data CorruptionMythBusters Globalization Support - Avoid Data Corruption
MythBusters Globalization Support - Avoid Data Corruption
 
Introduction to Mysql
Introduction to MysqlIntroduction to Mysql
Introduction to Mysql
 
2012 summarytables
2012 summarytables2012 summarytables
2012 summarytables
 
MySQL Best Practices - OTN
MySQL Best Practices - OTNMySQL Best Practices - OTN
MySQL Best Practices - OTN
 
Database design i_-_1_dl300
Database design i_-_1_dl300Database design i_-_1_dl300
Database design i_-_1_dl300
 
Get database properties using power shell in sql server 2008 techrepublic
Get database properties using power shell in sql server 2008   techrepublicGet database properties using power shell in sql server 2008   techrepublic
Get database properties using power shell in sql server 2008 techrepublic
 
common_schema, DBA's framework for MySQL
common_schema, DBA's framework for MySQLcommon_schema, DBA's framework for MySQL
common_schema, DBA's framework for MySQL
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptJavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
 
Successful Scalability Principles - Part 1
Successful Scalability Principles - Part 1Successful Scalability Principles - Part 1
Successful Scalability Principles - Part 1
 
MySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and DevelopersMySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and Developers
 
IaC MeetUp Active Directory Setup for Oracle Security LAB
IaC MeetUp Active Directory Setup for Oracle Security LABIaC MeetUp Active Directory Setup for Oracle Security LAB
IaC MeetUp Active Directory Setup for Oracle Security LAB
 
New awesome features in MySQL 5.7
New awesome features in MySQL 5.7New awesome features in MySQL 5.7
New awesome features in MySQL 5.7
 
Extending MySQL Enterprise Monitor
Extending MySQL Enterprise MonitorExtending MySQL Enterprise Monitor
Extending MySQL Enterprise Monitor
 
What’s New in Oracle Database 12c for PHP
What’s New in Oracle Database 12c for PHPWhat’s New in Oracle Database 12c for PHP
What’s New in Oracle Database 12c for PHP
 

Destacado

Educational assistant performance appraisal
Educational assistant performance appraisalEducational assistant performance appraisal
Educational assistant performance appraisaladamkruse460
 
How Can I tune it When I Can't Change the Code?
How Can I tune it When I Can't Change the Code?How Can I tune it When I Can't Change the Code?
How Can I tune it When I Can't Change the Code?Sage Computing Services
 
Articles and Reviews for March 1, 2013
Articles and Reviews for March 1, 2013Articles and Reviews for March 1, 2013
Articles and Reviews for March 1, 2013instinctivevict20
 
Whose fault is it? - a review of application tuning problems
Whose fault is it? - a review of application tuning problemsWhose fault is it? - a review of application tuning problems
Whose fault is it? - a review of application tuning problemsSage Computing Services
 
What have you learned from your audience feedback?
What have you learned from your audience feedback?What have you learned from your audience feedback?
What have you learned from your audience feedback?CallummKopko
 
Reading specialist performance appraisal
Reading specialist performance appraisalReading specialist performance appraisal
Reading specialist performance appraisaljasonlugar
 
Seo starter-guide-equinet-academy
Seo starter-guide-equinet-academySeo starter-guide-equinet-academy
Seo starter-guide-equinet-academyDeepak Panchal
 
Title processor performance appraisal
Title processor performance appraisalTitle processor performance appraisal
Title processor performance appraisalsammywood963
 
Vertex BD Mallin rajaus
Vertex BD Mallin rajausVertex BD Mallin rajaus
Vertex BD Mallin rajausVertexSystems
 
Procurement assistant performance appraisal
Procurement assistant performance appraisalProcurement assistant performance appraisal
Procurement assistant performance appraisaladamkruse460
 
JUNIOR PRODUCTION ENGINEER
JUNIOR PRODUCTION ENGINEERJUNIOR PRODUCTION ENGINEER
JUNIOR PRODUCTION ENGINEERjsamuel 263
 
Daarligstandplads
DaarligstandpladsDaarligstandplads
Daarligstandpladstgruddafd
 
Gandakan produktivitas dengan membaca cepat
Gandakan produktivitas dengan membaca cepatGandakan produktivitas dengan membaca cepat
Gandakan produktivitas dengan membaca cepatdina_nadifah4d1113500004
 
Thoai Hoa Khop Dau Goi
Thoai Hoa Khop Dau GoiThoai Hoa Khop Dau Goi
Thoai Hoa Khop Dau Goiamalia616
 
Fluorescent Light Business Case
Fluorescent Light Business CaseFluorescent Light Business Case
Fluorescent Light Business CaseKim Brease
 

Destacado (16)

Educational assistant performance appraisal
Educational assistant performance appraisalEducational assistant performance appraisal
Educational assistant performance appraisal
 
How Can I tune it When I Can't Change the Code?
How Can I tune it When I Can't Change the Code?How Can I tune it When I Can't Change the Code?
How Can I tune it When I Can't Change the Code?
 
Articles and Reviews for March 1, 2013
Articles and Reviews for March 1, 2013Articles and Reviews for March 1, 2013
Articles and Reviews for March 1, 2013
 
Whose fault is it? - a review of application tuning problems
Whose fault is it? - a review of application tuning problemsWhose fault is it? - a review of application tuning problems
Whose fault is it? - a review of application tuning problems
 
What have you learned from your audience feedback?
What have you learned from your audience feedback?What have you learned from your audience feedback?
What have you learned from your audience feedback?
 
Feasibility Report
Feasibility ReportFeasibility Report
Feasibility Report
 
Reading specialist performance appraisal
Reading specialist performance appraisalReading specialist performance appraisal
Reading specialist performance appraisal
 
Seo starter-guide-equinet-academy
Seo starter-guide-equinet-academySeo starter-guide-equinet-academy
Seo starter-guide-equinet-academy
 
Title processor performance appraisal
Title processor performance appraisalTitle processor performance appraisal
Title processor performance appraisal
 
Vertex BD Mallin rajaus
Vertex BD Mallin rajausVertex BD Mallin rajaus
Vertex BD Mallin rajaus
 
Procurement assistant performance appraisal
Procurement assistant performance appraisalProcurement assistant performance appraisal
Procurement assistant performance appraisal
 
JUNIOR PRODUCTION ENGINEER
JUNIOR PRODUCTION ENGINEERJUNIOR PRODUCTION ENGINEER
JUNIOR PRODUCTION ENGINEER
 
Daarligstandplads
DaarligstandpladsDaarligstandplads
Daarligstandplads
 
Gandakan produktivitas dengan membaca cepat
Gandakan produktivitas dengan membaca cepatGandakan produktivitas dengan membaca cepat
Gandakan produktivitas dengan membaca cepat
 
Thoai Hoa Khop Dau Goi
Thoai Hoa Khop Dau GoiThoai Hoa Khop Dau Goi
Thoai Hoa Khop Dau Goi
 
Fluorescent Light Business Case
Fluorescent Light Business CaseFluorescent Light Business Case
Fluorescent Light Business Case
 

Similar a Oracle XML DB - What's in it for me?

Sql Summit Clr, Service Broker And Xml
Sql Summit   Clr, Service Broker And XmlSql Summit   Clr, Service Broker And Xml
Sql Summit Clr, Service Broker And XmlDavid Truxall
 
Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...
Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...
Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...InSync2011
 
Session on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh GundechaSession on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh GundechaAgile Testing Alliance
 
Azure Day Reloaded 2019 - ARM Template workshop
Azure Day Reloaded 2019 - ARM Template workshopAzure Day Reloaded 2019 - ARM Template workshop
Azure Day Reloaded 2019 - ARM Template workshopMarco Obinu
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Marco Gralike
 
ZZ BC#7.5 asp.net mvc practice and guideline refresh!
ZZ BC#7.5 asp.net mvc practice  and guideline refresh! ZZ BC#7.5 asp.net mvc practice  and guideline refresh!
ZZ BC#7.5 asp.net mvc practice and guideline refresh! Chalermpon Areepong
 
Red Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsRed Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsJudy Breedlove
 
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco GralikeBoost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco GralikeMarco Gralike
 
MySQL Document Store
MySQL Document StoreMySQL Document Store
MySQL Document StoreMario Beck
 
TSQL in SQL Server 2012
TSQL in SQL Server 2012TSQL in SQL Server 2012
TSQL in SQL Server 2012Eduardo Castro
 
Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Jim Manico
 
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...Marco Gralike
 
SQL Server 2008 Integration Services
SQL Server 2008 Integration ServicesSQL Server 2008 Integration Services
SQL Server 2008 Integration ServicesEduardo Castro
 
Orcale dba training
Orcale dba trainingOrcale dba training
Orcale dba trainingUgs8008
 
Oracle DBA Training in Hyderabad
Oracle DBA Training in HyderabadOracle DBA Training in Hyderabad
Oracle DBA Training in Hyderabadunited global soft
 
Oracle DBA Training in Hyderabad
Oracle DBA Training in HyderabadOracle DBA Training in Hyderabad
Oracle DBA Training in HyderabadUgs8008
 
JSON in der Oracle Datenbank
JSON in der Oracle DatenbankJSON in der Oracle Datenbank
JSON in der Oracle DatenbankUlrike Schwinn
 
OOW09 Ebs Tuning Final
OOW09 Ebs Tuning FinalOOW09 Ebs Tuning Final
OOW09 Ebs Tuning Finaljucaab
 
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...djkucera
 

Similar a Oracle XML DB - What's in it for me? (20)

Sql Summit Clr, Service Broker And Xml
Sql Summit   Clr, Service Broker And XmlSql Summit   Clr, Service Broker And Xml
Sql Summit Clr, Service Broker And Xml
 
Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...
Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...
Developer & Fusion Middleware 1 | Mark Drake | An introduction to Oracle XML ...
 
Session on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh GundechaSession on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh Gundecha
 
Azure Day Reloaded 2019 - ARM Template workshop
Azure Day Reloaded 2019 - ARM Template workshopAzure Day Reloaded 2019 - ARM Template workshop
Azure Day Reloaded 2019 - ARM Template workshop
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
 
ZZ BC#7.5 asp.net mvc practice and guideline refresh!
ZZ BC#7.5 asp.net mvc practice  and guideline refresh! ZZ BC#7.5 asp.net mvc practice  and guideline refresh!
ZZ BC#7.5 asp.net mvc practice and guideline refresh!
 
Red Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop LabsRed Hat Agile integration Workshop Labs
Red Hat Agile integration Workshop Labs
 
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco GralikeBoost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
 
MySQL Document Store
MySQL Document StoreMySQL Document Store
MySQL Document Store
 
TSQL in SQL Server 2012
TSQL in SQL Server 2012TSQL in SQL Server 2012
TSQL in SQL Server 2012
 
Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2
 
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
 
SQL Server 2008 Integration Services
SQL Server 2008 Integration ServicesSQL Server 2008 Integration Services
SQL Server 2008 Integration Services
 
Orcale dba training
Orcale dba trainingOrcale dba training
Orcale dba training
 
Oracle DBA Training in Hyderabad
Oracle DBA Training in HyderabadOracle DBA Training in Hyderabad
Oracle DBA Training in Hyderabad
 
Oracle DBA Training in Hyderabad
Oracle DBA Training in HyderabadOracle DBA Training in Hyderabad
Oracle DBA Training in Hyderabad
 
JSON in der Oracle Datenbank
JSON in der Oracle DatenbankJSON in der Oracle Datenbank
JSON in der Oracle Datenbank
 
Day2
Day2Day2
Day2
 
OOW09 Ebs Tuning Final
OOW09 Ebs Tuning FinalOOW09 Ebs Tuning Final
OOW09 Ebs Tuning Final
 
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
 

Más de Sage Computing Services

Bind Peeking - The Endless Tuning Nightmare
Bind Peeking - The Endless Tuning NightmareBind Peeking - The Endless Tuning Nightmare
Bind Peeking - The Endless Tuning NightmareSage Computing Services
 
Back to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOABack to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOASage Computing Services
 
New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...Sage Computing Services
 
Take a load off! Load testing your Oracle APEX or JDeveloper web applications
Take a load off! Load testing your Oracle APEX or JDeveloper web applicationsTake a load off! Load testing your Oracle APEX or JDeveloper web applications
Take a load off! Load testing your Oracle APEX or JDeveloper web applicationsSage Computing Services
 
Transformations - how Oracle rewrites your statements
Transformations - how Oracle rewrites your statementsTransformations - how Oracle rewrites your statements
Transformations - how Oracle rewrites your statementsSage Computing Services
 
Application Express - A web development environment for the masses - and for ...
Application Express - A web development environment for the masses - and for ...Application Express - A web development environment for the masses - and for ...
Application Express - A web development environment for the masses - and for ...Sage Computing Services
 
Common Coding and Design mistakes (that really mess up performance)
Common Coding and Design mistakes (that really mess up performance)Common Coding and Design mistakes (that really mess up performance)
Common Coding and Design mistakes (that really mess up performance)Sage Computing Services
 
Oracle Discoverer is dead - Where to next for BI?
Oracle Discoverer is dead - Where to next for BI?Oracle Discoverer is dead - Where to next for BI?
Oracle Discoverer is dead - Where to next for BI?Sage Computing Services
 

Más de Sage Computing Services (15)

Aspects of 10 Tuning
Aspects of 10 TuningAspects of 10 Tuning
Aspects of 10 Tuning
 
Bind Peeking - The Endless Tuning Nightmare
Bind Peeking - The Endless Tuning NightmareBind Peeking - The Endless Tuning Nightmare
Bind Peeking - The Endless Tuning Nightmare
 
Back to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOABack to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOA
 
Results cache
Results cacheResults cache
Results cache
 
Vpd
VpdVpd
Vpd
 
New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...New Tuning Features in Oracle 11g - How to make your database as boring as po...
New Tuning Features in Oracle 11g - How to make your database as boring as po...
 
Lost without a trace
Lost without a traceLost without a trace
Lost without a trace
 
Meet the CBO in Version 11g
Meet the CBO in Version 11gMeet the CBO in Version 11g
Meet the CBO in Version 11g
 
Take a load off! Load testing your Oracle APEX or JDeveloper web applications
Take a load off! Load testing your Oracle APEX or JDeveloper web applicationsTake a load off! Load testing your Oracle APEX or JDeveloper web applications
Take a load off! Load testing your Oracle APEX or JDeveloper web applications
 
The Cost Based Optimiser in 11gR2
The Cost Based Optimiser in 11gR2The Cost Based Optimiser in 11gR2
The Cost Based Optimiser in 11gR2
 
Transformations - how Oracle rewrites your statements
Transformations - how Oracle rewrites your statementsTransformations - how Oracle rewrites your statements
Transformations - how Oracle rewrites your statements
 
Application Express - A web development environment for the masses - and for ...
Application Express - A web development environment for the masses - and for ...Application Express - A web development environment for the masses - and for ...
Application Express - A web development environment for the masses - and for ...
 
OHarmony - How the Optimiser works
OHarmony - How the Optimiser worksOHarmony - How the Optimiser works
OHarmony - How the Optimiser works
 
Common Coding and Design mistakes (that really mess up performance)
Common Coding and Design mistakes (that really mess up performance)Common Coding and Design mistakes (that really mess up performance)
Common Coding and Design mistakes (that really mess up performance)
 
Oracle Discoverer is dead - Where to next for BI?
Oracle Discoverer is dead - Where to next for BI?Oracle Discoverer is dead - Where to next for BI?
Oracle Discoverer is dead - Where to next for BI?
 

Último

MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 

Último (20)

MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 

Oracle XML DB - What's in it for me?

  • 1. www.sagecomputing.com.auwww.sagecomputing.com.au Oracle XML DBOracle XML DB What's in it for me?What's in it for me? Penny Cookson - Managing Director SAGE Computing ServicesSAGE Computing Services Customised Oracle Training WorkshopsCustomised Oracle Training Workshops and Consultingand Consulting www.sagecomputing.com.auwww.sagecomputing.com.au NZOUG Masterclass Series www.sagecomputing.com.auwww.sagecomputing.com.au Overview Storage methods – structured and unstructured, pros and cons The XMLType Storing , querying and updating XML using SQL XML schemas XML Validation XML Transformation XML DB repository Using ftp and http for access to XML documents Using webDAV for access to XML documents www.sagecomputing.com.auwww.sagecomputing.com.au Overview www.sagecomputing.com.auwww.sagecomputing.com.au Why Do I Care?Why Do I Care? XML is the de facto standard for data interchange XML is widely used for content management XML provides flexible data storage Store structured, semi-structured, unstructured data XQuery to become W3C recommendation Security and versioning XMLDB provides: Native server support for storage and processing of XML documents SQL access to XML data Access using standard internet protocols www.sagecomputing.com.auwww.sagecomputing.com.au Why XMLDBWhy XMLDB Without XML as a datatype With XML as a datatype XML as CLOB Shredded XML Complex Processing in the application Native XMLType data type Process XML like any other data type www.sagecomputing.com.auwww.sagecomputing.com.au FunctionalityFunctionality Native storage of XML data using XMLType Built- in methods provided for manipulating/accessing the data Support for W3C XML Schema standard Support for W3C XPath standard Support for W3C XQuery standard Repository stores XML and other documents using path based paradigm Performance optimisations including indexing
  • 2. www.sagecomputing.com.auwww.sagecomputing.com.au Underlying Technology www.sagecomputing.com.auwww.sagecomputing.com.au Is it installed?Is it installed? DBCA automatically installs XMLDB functionality Install manually using catqm.sql and catxdbj XDB user owns repository /xdbconfig.xml stored in repository Configure using Enterprise Manager or manually www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au XMLTypeXMLType Native server data type Provides methods extract() extractValue() existsNode() schemaValidate() transform() Unstructured in CLOBS Structured in object type tables created from schema Semistructured XMLType views for legacy data www.sagecomputing.com.auwww.sagecomputing.com.au XMLTypeXMLType -- ExamplesExamples CREATE TABLE res_docs OF XMLType; CREATE TABLE resource_details (code VARCHAR2(4) ,description VARCHAR2(50) ,daily_rate NUMBER(6,2) ,specification XMLType); www.sagecomputing.com.auwww.sagecomputing.com.au XMLTypeXMLType -- ExamplesExamples INSERT INTO res_docs VALUES(XMLType('<Equipment serialNo="1000"> <Manufacturer>ACME</Manufacturer> <Servicedate>01-JAN-2002</Servicedate> <Type>Video Equipment</Type> </Equipment>')); INSERT INTO resource_details (code, description, daily_rate, specification) VALUES('VCR6', 'Video recorder 6',100, XMLType('<Equipment serialNo="1000"> <Manufacturer>ACME</Manufacturer> <Servicedate>01-JAN-2002</Servicedate> <Type>Video Equipment</Type> </Equipment>'));;
  • 3. www.sagecomputing.com.auwww.sagecomputing.com.au Storage MethodsStorage Methods Entire document in a single CLOB Fast storage and retrieval of entire document Preserves original document Store any document Can be indexed using function based index or Oracle text Limited intelligent processing XPath operations require creation of DOM from document No piecewise update More space Non schema based Contents decomposed into set of objects Increased processing in storage and retrieval Loses whitespace / data format, maintains DOM fidelity Limited changes to schema XQuery and XPath converted to native database queries B*Tree, function based and Oracle text indexes XML schema annotation determines storage type Less space Unstructured- CLOB Structured www.sagecomputing.com.auwww.sagecomputing.com.au A Closer Look at StructuredA Closer Look at Structured StorageStorage Register Schema Oracle defines an object Type for each complexType Collections mapped to VARRAYS Schema annotations determine storage structures Creates default tables www.sagecomputing.com.auwww.sagecomputing.com.au RepositoryRepository Hierarchical folder/file metaphor Stores metadata and content Any content , but particularly XML Access using SQL or PL/SQL standard protocols Oracle Enterprise Manager www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au XML Schema
  • 4. www.sagecomputing.com.auwww.sagecomputing.com.au XML SchemaXML Schema Defines validation rules Defines physical storage types using annotation Defines physical storage names using annotation Defined as .xsd document Registered using DBMS_XMLSCHEMA.registerschema www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au Creating Schema BasedCreating Schema Based XMLType InstancesXMLType Instances Pass the schema in to XMLType constructor or SchemaLocation defined in XML document Document must be well formed and conform to SQL Type definitions created by schema For full validation use schemaValidate() method Can use check constraint or trigger Add uniqueness and foreign key constraints www.sagecomputing.com.auwww.sagecomputing.com.au Changing a SchemaChanging a Schema DBMS_XMLSCHEMA.copyEvolve Copies instances to temporary tables Drops old schema Creates new schema Registers new schema Copy instances back Restrictions Indexes, triggers, constraints lost Does not support XMLType columns www.sagecomputing.com.auwww.sagecomputing.com.au DEMODEMO Create Schema Create document using PL/SQL Create document using the repository Validate the document www.sagecomputing.com.auwww.sagecomputing.com.au Accessing the XML data
  • 5. www.sagecomputing.com.auwww.sagecomputing.com.au Access MethodsAccess Methods Query based SQL Java API PL/SQL API Path based (repository) SQL (RESOURCE_VIEW or PATH_VIEW) PL/SQL (DBMS_XDB) Protocol based www.sagecomputing.com.auwww.sagecomputing.com.au Query BasedQuery Based Identify whether a node exists existsNode Fetch a node extract Fetch a value extractValue Update a node updateXML Transform a document XMLtransform www.sagecomputing.com.auwww.sagecomputing.com.au ExampleExample SELECT existsNode(value(R), '/Equipment[Manufacturer="ACME"]') Is_There, extractValue(value(R), '/Equipment/Manufacturer') Manufacturer FROM res_docs R; IS_THERE MANUFACTURER ------------------- ------------------------------ 1 ACME 0 SMITH AND SONS 0 SMITH AND SONS www.sagecomputing.com.auwww.sagecomputing.com.au ExampleExample SELECT extract(value(R), '/Equipment/Manufacturer') Tree FROM res_docs R; TREE -------------------------------------------------------------------- <Manufacturer>ACME</Manufacturer> <Manufacturer>SMITH AND SONS</Manufacturer> <Manufacturer>SMITH AND SONS</Manufacturer> www.sagecomputing.com.auwww.sagecomputing.com.au ExampleExample UPDATE res_docs R SET value(R) = updateXML(value(R),'/Equipment/Manufacturer/text()', 'ACME CORPORATION') WHERE existsNode(value(R), '/Equipment[Manufacturer="ACME"]') =1; SELECT extract(value(R),'/Equipment/Manufacturer') Tree FROM res_docs R; TREE -------------------------------------------------------------------------- <Manufacturer>ACME CORPORATION</Manufacturer> <Manufacturer>SMITH AND SONS</Manufacturer> <Manufacturer>SMITH AND SONS</Manufacturer> www.sagecomputing.com.auwww.sagecomputing.com.au ExampleExample -- Create a table store the XSL stylesheet CREATE TABLE res_xsl OF XMLType; -- Insert the stylesheet document INSERT INTO res_xsl values (XMLType('<html> <head/> <body text="#FFFF00"> <FONT FACE="Arial"> </FONT> ………………………………. ………………………………. </body> </html>')); --Transform the documents SELECT value(R).transform(value(S)) FROM res_docs(R), res_xsl;
  • 6. www.sagecomputing.com.auwww.sagecomputing.com.au Index OptionsIndex Options Use extractValue for single value Using extract for multiple values creates index on concatenation Use function based indexes Use bitmap indexes on existsNode Use ctxxpath indexes for existsNode processing www.sagecomputing.com.auwww.sagecomputing.com.au Generate Relational data asGenerate Relational data as XMLXML SELECT SYS_XMLGEN(description) DESCR, SYS_XMLGEN(specification) SPEC FROM resource_details; DESCR SPEC --------------------------------------------- -------------------------------------------------- <DESCRIPTION>Video recorder 6 <SPECIFICATION> </DESCRIPTION> <Equipment serialNo="1000"> <Manufacturer>ACME CORPORATION </Manufacturer> <Servicedate>01-JAN-2002</Servicedate> <Type>Video Equipment</Type> </Equipment> </SPECIFICATION> www.sagecomputing.com.auwww.sagecomputing.com.au Aggregate RowsAggregate Rows SELECT SYS_XMLAGG(SYS_XMLGEN(value(R))) FROM res_docs R; SYS_XMLAGG(SYS_XMLGEN(VALUE(R))) --------------------------------------------------------------------------------- <ROWSET> <ROW> <Equipment serialNo="1000"> <Manufacturer>ACME CORPORATION</Manufacturer> <Servicedate>01-JAN-2002</Servicedate> <Type>Video Equipment</Type> </Equipment> </ROW> <ROW> <Equipment serialNo="2000"> <Manufacturer>SMITH AND SONS</Manufacturer> <Servicedate>10-DEC-2002</Servicedate> <Type>Video Equipment</Type> </Equipment> </ROW> …………………………. www.sagecomputing.com.auwww.sagecomputing.com.au DEMODEMO Xpath queries Updating data Transformation www.sagecomputing.com.auwww.sagecomputing.com.au XML Repository www.sagecomputing.com.auwww.sagecomputing.com.au Repository AccessRepository Access PATH_VIEW RESOURCE_VIEW DBMS_XDB Standard protocols ftp http WebDav Oracle Enterprise Manager
  • 7. www.sagecomputing.com.auwww.sagecomputing.com.au DBMS_XDBDBMS_XDB Create a resource in the XMLDB repository createResource Check whether a resource exists existsResource Create a folder in the repository createFolder Access documents in the repository XDBURIType.getBLOB() XDBURIType.getCLOB() XDBURIType.getXML() www.sagecomputing.com.auwww.sagecomputing.com.au VersionsVersions DBMS_XDB_VERSION.MakeVersioned Returns resource id of first version DBMS_XDB_VERSION.checkOut DBMS_XDB_VERSION.checkIn DBMS_XDB_VERSION.UnCheckOut DBMS_XDB_VERSION.GetPredecessors Only for non schema based resources www.sagecomputing.com.auwww.sagecomputing.com.au SecuritySecurity Managed in Access Contrl Lists (ACL) Stored in XDB.XDB$ACL Resources stored in XDB$RESOURCE Supports Database users Database roles LDAP users LDAP groups DBMS_XDB.setACL DBMS_XDB.GETACLDOCUMENT DBMS_XDB.getPrivileges www.sagecomputing.com.auwww.sagecomputing.com.au PrivilegesPrivileges Atomic read-properties read-contents update read-acl dav: lock dav: unlock Aggregate all dav: read dav: write www.sagecomputing.com.auwww.sagecomputing.com.au www.sagecomputing.com.auwww.sagecomputing.com.au
  • 8. www.sagecomputing.com.auwww.sagecomputing.com.au WebDAVWebDAV www.sagecomputing.com.auwww.sagecomputing.com.au httphttp www.sagecomputing.com.auwww.sagecomputing.com.au ftpftp www.sagecomputing.com.auwww.sagecomputing.com.au DEMODEMO Using DBMS_XDB ftp access WebDav access http access www.sagecomputing.com.auwww.sagecomputing.com.au Thank You For Your Attention Enquiries@sagecomputing.com.au SAGE Computing ServicesSAGE Computing Services Customised Oracle Training WorkshopsCustomised Oracle Training Workshops and Consultingand Consulting www.sagecomputing.com.auwww.sagecomputing.com.au