Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

32

Transcript of Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Page 1: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.
Page 2: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Julie BasuSenior Development Manager

Nirav ChanchaniSenior Product Manager

Oracle Corporation

Page 3: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Heterogeneous XML-based Data Integration Using XQuery, J2EETM, and Database Technologies

Session id: 40258

Page 4: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Presentation Agenda

Business Problem XML-based Data Integration Querying with XQuery Building Applications using the J2EETM Platform Leveraging the XML Database Demonstration Next Steps

Page 5: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Business Problem

Multiple domain-specific applications

– Manufacturing, Inventory, Supply Chain, Financial, …

Information is trapped within these applications

How does an organization get a consolidated view of its information – in real time ?

CRM Application

Financial Application

Contract Management Application

SynthesizedInformation

Order Management Application

Shipping and Distribution Application

Page 6: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Technical Challenges Domain-specific information

– Replication does not make sense

Independent operation of applications – Access to information has to be in real-time

Different access method for each application– Each application has its own protocol and access method

What architecture can best accommodate my present and future needs ?

– Complexity: Avoid the n by m matrix– Flexibility: Add new sources easily – Time to market: Within days, not months

Page 7: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Presentation Agenda

Business Problem XML-based Data Integration Querying with XQuery Building Applications using the J2EETM Platform Leveraging the XML Database Demonstration Next Steps

Page 8: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

What is XML-based Data Integration?

XML-based Data Integration or Enterprise Information Integration (EII):

Create aggregated views using XQuery Get information from diverse sources in XML Consume synthesized information

Page 9: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Database Web Service

J2EETM CA

JDBC HTTP

XQuery Engine

Order Tracking

Shipment Tracking

XML Data Integration Example

Synthesized Information

EIS

Parts Inventory

Page 10: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

XML-based Data Integration

J2EETM Platform

Technologies Involved

Why XML?– Different data formats

Why XQuery ?– Declarative way to query

XML documents

Why J2EETM ? – Standards-based

infrastructure platform

Why XML Database ?– Native XML storage– XML data management – Performance optimizations

XML Database

XQuery Engine

Page 11: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Comparison with Existing Technologies

Difference Similarity

Application Integration

More about data pumping and synchronization among systems

Involves data adapters, data translation and transformation

Data Warehousing

Explicit ETL steps required; large data volume; batch loading, not real-time

Optional cache pre-population step similar to the “loading” step

Traditional Report Generation

SQL & relation-based vs. XQuery & XML-based

Focus is on report formatting and delivery

Query-based

Page 12: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Presentation Agenda

Business Problem XML-based Data Integration Querying with XQuery Building Applications using the J2EETM Platform Leveraging the XML Database Demonstration Next Steps

Page 13: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

What is XQuery?

Query XML Documents FLWOR expression:

– For: similar to SQL “from” clause– Let: declaring a variable– Where: similar to SQL “where” clause– Order by: similar to SQL for sorting– Return: similar to SQL “select” clause

Operations– Filtering – Transformation – Joining

Page 14: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

XQuery Sample Code<descriptive-catalog> { for $i in document("catalog.xml")//item, $p in document("parts.xml")//part[partno = $i/partno], $s in document("suppliers.xml")//supplier[ suppno = $i/suppno] order by $p/description, $s/suppname where $i/price < 1000 return <item> {

$p/description, $s/suppname, $i/price

} </item> }</descriptive-catalog>

Page 15: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Advantages of XQuery

Declarative view definition– Less programming

Query optimization– Just like SQL, XQuery engine optimizes queries

Lower cost of code maintenance– Less code when compared to DOM or SAX

Page 16: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

What’s New in XQuery?

Different from XSLT, not re-inventing wheel – Document ordering– Rules matching vs. nested SQL-like queries

XQuery 1.0 goals– Read-only, no transaction semantics, no security– Update capability not there yet

XQuery runtime– Could be in middle tier, database, or a hybrid

Page 17: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Presentation Agenda

Business Problem XML-based Data Integration Querying with XQuery Building Applications using the J2EETM Platform Leveraging the XML Database Demonstration Next Steps

Page 18: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Oracle Application Server 10g - The J2EETM Platform

Building applications using J2EETM services in Oracle Application Server 10g

Data Source Access Client Access Caching Security

Page 19: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

J2EETM Data Sources

Different types of data sources with varying access protocols and APIs

– Data sources : Applications, RDBMS, Documents, Message Queues, Proprietary

– Access mechanisms: JDBC, J2EETM CA, Web Services, JMS, File I/O

– Translation mechanisms: Oracle’s XML-SQL utility for JDBC result set, other

Page 20: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

J2EETM Client Access

Programmatic client access XQuery Java API is being standardized in

Java Community Process– JSR 225: Oracle and IBM leads

Higher-level APIs: EJB, Web Services, J2EETM CA, JSP tag library

Page 21: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

XML Data Caching

Cache data from sources and results Choices: In memory, file, or database Benefits: Better Performance

– Decrease data fetching cost– Reduce latency of unreliable or remote sources– Eliminate re-execution of queries

Costs: Need to keep cached data fresh – Set expiration time for cached info– Invalidate or refresh upon update, e.g., DB triggers

Page 22: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Data Source & Cache Security

Delegate security checking to sources– For SQL / JDBC data source use JAAS– For J2EETM CA leverage the Principal Mapping and

Custom Login module

Security of cached data - poses additional risk!– Require login / authentication before cache access– Use JAAS to enforce cache access policies

Page 23: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Presentation Agenda

Business Problem XML-based Data Integration Querying with XQuery Building Applications using the J2EETM platform Leveraging the XML Database Demonstration Next Steps

Page 24: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Oracle XML Database (XML DB)

Native XML storage – Available since Oracle Database Release 9.2

Inherits RDBMS features: Security, Transaction,… XML-specific features

– XML indexing, XPath & XSLT support, XML schema validation, XML partial update

Supports SQL/XML– Allows blending relational and XML data operations

Page 25: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Leveraging Oracle XML DB

XML DB can be an XQuery source – Can define XML views of relational data– XQuery engine can rewrite query into SQL/XML

XML DB could also be used for caching– Efficient storage & indexing for large data sets

Can leverage security framework of XML DB– For both source and cache

Page 26: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

What about Standards?

Most components based on existing standards: XML-based, J2EETM-based

Oracle is helping to move standards forward:– Query APIs

XQuery Java API: JSR 225 Oracle and IBM leads XML Extension to JDBC: JSR 114

– XML metadata API to enhance usability Candidate technology: CCI in J2EETM CA

Page 27: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

D E M O N S T R A T I O N

Page 28: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Summary

What?– Get information from diverse sources in XML – Join, filter and transform data by XQuery– Apply Caching and Security appropriately– Consume synthesized information

Why?– Real-time information access and synthesis– Productivity: Quick development cycle,

low code maintenance cost

Page 29: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Next Steps ….

See the solution in action at Oracle DEMOGrounds!

– At the Oracle Application Sever 10g booth - Simplify Information Integration

Relevant web sites– OTN: http://otn.oracle.com

Contact information– Product Manager: [email protected]

Page 30: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

AQ&Q U E S T I O N SQ U E S T I O N S

A N S W E R SA N S W E R S

Page 31: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.

Reminder – Please complete the OracleWorld online session survey

Thank you.

Page 32: Julie Basu Senior Development Manager Nirav Chanchani Senior Product Manager Oracle Corporation.