Title: Heterogenous XML-based Data Integration
1(No Transcript)
2Julie Basu Senior Development Manager Nirav
ChanchaniSenior Product Manager Oracle
Corporation
3Session id 40258
Heterogeneous XML-based Data Integration Using
XQuery, J2EETM, and Database Technologies
4Presentation Agenda
- Business Problem
- XML-based Data Integration
- Querying with XQuery
- Building Applications using the J2EETM Platform
- Leveraging the XML Database
- Demonstration
- Next Steps
5Business 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 ?
6Technical 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
7Presentation Agenda
- Business Problem
- XML-based Data Integration
- Querying with XQuery
- Building Applications using the J2EETM Platform
- Leveraging the XML Database
- Demonstration
- Next Steps
8What 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
9XML Data Integration Example
XQuery Engine
Synthesized Information
Order Tracking
J2EETM CA
EIS
JDBC
HTTP
Parts Inventory
Shipment Tracking
Database
Web Service
10Technologies 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-based Data Integration
J2EETM Platform
XML Database
11Comparison 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-basedFocus is on report formatting and delivery Query-based
12Presentation Agenda
- Business Problem
- XML-based Data Integration
- Querying with XQuery
- Building Applications using the J2EETM Platform
- Leveraging the XML Database
- Demonstration
- Next Steps
13What 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
14XQuery Sample Code
ltdescriptive-cataloggt for i in
document("catalog.xml")//item, p in
document("parts.xml")//partpartno
i/partno, s in
document("suppliers.xml")//supplier
suppno i/suppno order by
p/description, s/suppname where i/price lt
1000 return ltitemgt
p/description, s/suppname,
i/price lt/itemgt
lt/descriptive-cataloggt
15Advantages 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
16Whats 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
17Presentation Agenda
- Business Problem
- XML-based Data Integration
- Querying with XQuery
- Building Applications using the J2EETM Platform
- Leveraging the XML Database
- Demonstration
- Next Steps
18Oracle Application Server 10g - The J2EETM
Platform
- Building applications using J2EETM services in
Oracle Application Server 10g - Data Source Access
- Client Access
- Caching
- Security
19J2EETM 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 Oracles XML-SQL utility
for JDBC result set, other
20J2EETM 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
21XML 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
22Data 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
23Presentation Agenda
- Business Problem
- XML-based Data Integration
- Querying with XQuery
- Building Applications using the J2EETM platform
- Leveraging the XML Database
- Demonstration
- Next Steps
24Oracle 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
25Leveraging 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
26What 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
27D E M O N S T R A T I O N
28Summary
- 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
29Next 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 Nirav.Chanchani_at_oracle.com
30A
31Reminder Please complete the OracleWorld
online session surveyThank you.
32(No Transcript)