Jonathan Robie Nancy Vodicka Webinar Details
description
Transcript of Jonathan Robie Nancy Vodicka Webinar Details
![Page 1: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/1.jpg)
Jonathan RobieNancy Vodicka
![Page 2: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/2.jpg)
Webinar Details
• To ask a question during the presentation, type it in the Q&A box.
• A link to the recorded presentation and slides will be emailed after the event.
• Teleconference details are:
Teleconference: Use Internet Phone or one of the numbers below: 866-469-3239 (Tollfree in US/Canada)or 650-429-3300 (US/Canada Direct)or 1800-093-897 Australia 10-800-712-1281 China - North 10-800-120-1281 China - South 800-90-3575 Hong Kong 00531-12-1688 Japan 00798-14-800-6581 South Korea 800-120-4239 Singapore 00801-13-7644 Taiwan 0800-90-5571 France 0800-101-6943 Germany 1-800-882019 Ireland 1-80-9214652 Israel 800-780-632 Italy 0800-022-6826 Netherlands 900-97-1417 Spain 020-79-7251 Sweden 0800-028-8023 UK 0800-891-1716 Brazil 001-866-622-9902 Mexico
![Page 3: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/3.jpg)
DataDirect XQuery 2.0
![Page 4: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/4.jpg)
XML from Relational, XML
HOLDINGS
USERID TICKER SHARES
Jonathan PRGS 23
Minollo PRGS 4000000
Jonathan AMZN 3000
Minollo AMZN 3000
<portfolio> <userId>Jonathan</userId></portfolio>
<portfolio > <company ticker="AMZN"> <companyname>Amazon.com, Inc.</companyname> <annualrevenues>7780</annualrevenues> </company> <company ticker="EBAY"> <companyname>eBay Inc.</companyname> <annualrevenues>22600</annualrevenues> </company> <company ticker="IBM"> <companyname>Int'l Business Machines C</companyname> <annualrevenues>128200</annualrevenues> </company> <company ticker="PRGS"> <companyname>Progress Software</companyname> <annualrevenues>493.4</annualrevenues> </company></portfolio>
COMPANIES
TICKER NAME ANNUALREVENUES
AMZN Amazon.com, Inc. 7780
EBAY eBay Inc. 22600
PRGS Progress Software 493.4
YHOO Yahoo! Inc. 10700
![Page 5: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/5.jpg)
XML from Relational, XML
HOLDINGS
USERID TICKER SHARES
Jonathan PRGS 23
Minollo PRGS 4000000
Jonathan AMZN 3000
Minollo AMZN 3000
COMPANIES
TICKER NAME ADJUSTEDCLOSE ACTUALCLOSE
AMZNAmazon.co
m, Inc. 44.69 44.69
EBAY 24-Jun-04 85.33 85.33
PRGS 24-Jun-04 18.78 18.78
YHOO 1-Jul-04 32.48 32.48
<portfolio> <userId>Jonathan</userId></portfolio>
<portfolio > <company ticker="AMZN"> <companyname>Amazon.com, Inc.</companyname> <annualrevenues>7780</annualrevenues> </company> <company ticker="EBAY"> <companyname>eBay Inc.</companyname> <annualrevenues>22600</annualrevenues> </company> <company ticker="IBM"> <companyname>Int'l Business Machines C</companyname> <annualrevenues>128200</annualrevenues> </company> <company ticker="PRGS"> <companyname>Progress Software</companyname> <annualrevenues>493.4</annualrevenues> </company></portfolio>
<portfolio> { let $user := doc("request.xml")/performance/userid for $h in collection("holdings")/holdings, $c in collection("companies")/companies where $h/userid eq $user and $c/ticker eq $h/stockticker return <company ticker="{ $c/ticker }"> { $c/companyname } { $c/annualrevenues } </company> }</portfolio>
![Page 6: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/6.jpg)
DataDirect XQuery
DataDirect XQuery is a high-performance, scalable, embeddable XQuery implementation
that plugs easily into any Java architecture and accesses almost any data source
without being dependent on underlying servers or proprietary extensions to XQuery.
** MySQL coming soon
**
![Page 7: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/7.jpg)
XQuery for the Java platform
• Pure Java implementation
• Any Java platform
• Any J2EE application server – or no server
• Easily embeddable – installs like JDBC driver
• XQuery API for Java (XQJ) – JDBC-like API for XQuery
![Page 8: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/8.jpg)
Input and Output
• Relational Databases• SQL Server 2000, 2005• Oracle 9i, 10gR1, R2• DB2 W/U/L: 8.x • DB2 iSeries: v5r2, v5r3 • DB2: z/OS: 8 • Sybase: 12.5.x, 15
• XML sources• http: ftp: and file: schemes • XML in DOM trees• Drastically reduced memory
requirements for large XML documents.
• Legacy sources• Adapters for CSV, EDI, and
more
• XML Output• XML as text• XML in DOM trees • XML in SAX streams • XML in StAX streams
![Page 9: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/9.jpg)
Stylus Studio IDE
![Page 10: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/10.jpg)
<oXygen/> plugin for Eclipse (DataDirect Edition)
![Page 11: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/11.jpg)
DataDirect XQuery Benefits
• Productivity• High level query language = less code to write and maintain• Supported by Stylus Studio IDE• Supported by <oXygen/> plugin for Eclipse
• Performance• Query optimization• Very selective SQL queries for relational sources• Relational joins done in the database• Document projection and streaming for XML sources• Lazy evaluation and retrieval• Generally outperforms hand-written code using JDBC and
Java XML APIs
• Flexibility• Supports almost all major relational databases• Easily embeddable in any Java application, on any platform,
with or without a J2EE application server• Extensible (external Java or SQL functions, custom URI
resolvers, …)
![Page 12: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/12.jpg)
XQuery 2.0 Release Highlights
• Performance and Scalability Enhancements• Enhanced SQL performance, more extensive performance suite• Enhanced XML query performance• XML Document projection and streaming (improves performance,
dramatically reduces memory required for large XML input)• Additional pragmas allow user to configure performance options
• XML Deployment Adapters• Query flat-file, EDI, or many other formats as though they were XML• Files are converted on the fly
• Enhanced support for external Java functions
• Additional Database Support
• Updated XQuery Support• XQuery Candidate Recommendation (November, 2005)• Now supports XQuery modules• Tested against the W3C XQuery Test Suite
![Page 13: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/13.jpg)
Database throughput
![Page 14: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/14.jpg)
Queries that Build Hierarchies
![Page 15: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/15.jpg)
XMark: Q1 Performance
![Page 16: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/16.jpg)
XMark: Q1 Memory consumption
![Page 17: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/17.jpg)
XML Deployment AdaptersISA+00+DATADIRECT+00+STYLUS2006+01+DATA DIRECT +01+STYLUS STUDIO +060504+1212+~+00503+200654321+0+I+:'GS+BF+DATADIRECT+STYLUS2006+20060504+121212+256+X+005030'ST+105+3389'BGN+28+1024+20060504+121212+GM'NM1+2L+4+Progress Software Corporation'N3+14 Oak Park Drive'N4+Bedford+MA+01730+US+AA'REF+1Z+PRGS'NM1+2L+4+Apple Computer, Inc.'N3+1 Infinite Loop'N4+Cupertino+CA+95014+US+AA'REF+1Z+AAPL'SE+11+3389'GE+1+256'IEA+1+200654321'
![Page 18: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/18.jpg)
XML Deployment AdaptersISA+00+DATADIRECT+00+STYLUS2006+01+DATA DIRECT +01+STYLUS STUDIO +060504+1212+~+00503+200654321+0+I+:'GS+BF+DATADIRECT+STYLUS2006+20060504+121212+256+X+005030'ST+105+3389'BGN+28+1024+20060504+121212+GM'NM1+2L+4+Progress Software Corporation'N3+14 Oak Park Drive'N4+Bedford+MA+01730+US+AA'REF+1Z+PRGS'NM1+2L+4+Apple Computer, Inc.'N3+1 Infinite Loop'N4+Cupertino+CA+95014+US+AA'REF+1Z+AAPL'SE+11+3389'GE+1+256'IEA+1+200654321'
<company-details> { for $requestedCompany in doc("adapter://EDI?ticker-request.edi")/X12/TS_105/GROUP_2 return let $companyInfo := collection("statistical")/statistical[ticker eq $requestedCompany/REF/REF02] return <company ticker="{ $companyInfo/ticker }"> { $companyInfo/companyname } { $companyInfo/annualrevenues } <address> <street>{ $requestedCompany/N3/N301/text() }</street> <city>{ $requestedCompany/N4/N401/text() }</city> <state>{ $requestedCompany/N4/N402/text() }</state> <code>{ $requestedCompany/N4/N403/text() }</code> <country>{ $requestedCompany/N4/N404/text() }</country> </address> </company> }</company-details>
![Page 19: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/19.jpg)
Customer Scenarios
![Page 20: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/20.jpg)
DataDirect XQuery
DataDirect XQuery is a high-performance, scalable, embeddable XQuery implementation
that plugs easily into any Java architecture and accesses almost any data source
without being dependent on underlying servers or proprietary extensions to XQuery.
** MySQL coming soon
**
![Page 21: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/21.jpg)
Gevity – Integrate SF.com w/Oracle
PDF w/ pricing for prospect
“The Gevity Pricing Engine (GPE) takes prospect data directly from SalesForce.com via a web service and uses XQuery to join it with data from the Oracle 9i database.”
How much will it cost to outsource our HR to Gevity?
XML back to application
Oracle 9i
Human Resource DataXML from SF.com
• Users: Gevity Business Development Managers
• Purpose: Quickly produce price quotes
• Data: Human Resource Data in Oracle 9i, customer and prospect data in SalesForce.com
• Can manage accounts from any internet connection – home, office, prospect’s office, or any Wi-Fi hot spot
• Deliver through many agents – browser, cell phone, blackberry, etc
![Page 22: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/22.jpg)
Summary
The Challenge? • Working with XML & relational data• Increasingly difficult for developers to keep up with peculiarities in
proprietary XML tools
Why XQuery? • Based on a standard• XQuery is best for manipulating data as XML• XQuery and XQJ integrates easily into their environment• XQuery simplifies merging relational and XML
Why DataDirect XQuery? • Lives in middle tier with the application• Supports Oracle 9i with XQuery, not available from Oracle• Stable product• Follows standard closer than other implementations• Interface similar to JDBC integrates easily into their architecture• <oXygen/> XML Editor for Eclipse – wanted an IDE to help with learning
curve of new language• First class support for help with queries and tuning• DataDirect’s length of time in market and financial stability
![Page 23: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/23.jpg)
To read more…
Check out the Gevity case study: www.datadirect.com/products/
xquery/docs/gevity_case.pdf
![Page 24: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/24.jpg)
DB2
SQL Server
Integrating XML & Relational“We are integrating ACORD messages with the data from our customer policy and insurance databases.”
XML in ACORD format to the insurance
companies, underwriters
Need to process insurance claims and policies
Oracle9i, 10g
Customer Policy & Insurance DataResults as XML
![Page 25: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/25.jpg)
Summary
The Challenge? • Software vendor working with XML & relational data• Data in Oracle 9i/10g, MS SQL Server, and DB2 databases• Must work with any Application Server and cannot be limited by any other
software (must be easily embeddable)
Why XQuery? • XQuery is best for working with relational and XML data, no conversions• Simplified merging relational and XML• Develop application faster• Performance is better than other technologies
Why DataDirect XQuery? • Supports multiple database versions (for example, Oracle 9i and 10g)• Provides database vendor independence• Easily embeddable; requires no other platforms or products• XQJ interface easy to use
![Page 26: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/26.jpg)
Integrating Other Data Sources“I have test data in XML and CSV files, and my product data is relational. I need help to integrate these for reporting…”
Equipment tests produce results as XML docs
RelationalData
Product Information
Field results as CSV files
Results as XML
Reporting Application using XQuery
![Page 27: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/27.jpg)
Summary
The Challenge? • Working with XML, relational data, and other data sources
Why XQuery? • XQuery allows you to query anything that can be represented as XML, no
need for conversions • Simplifies application development (easier, less code)
Why DataDirect XQuery? • Can query XML, relational, and other data sources
• Comma/Tab/Character Separated Values• dBase• HTML• RTF• EDI.. and a lot of them (X12, EDIFACT, IATA)• Custom URI resolvers for proprietary data sources
• Scalable and performs very well compared to other solutions. • No other software limitations and requires no other software/platform
purchases.
![Page 28: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/28.jpg)
Querying Large XML files
XML
“We’ve got very large XML documents (3-5G), and can’t find anything to process them successfully.”
Web-based reportingapplication – traffic accidents
XML from web serviceTransient Reporting Data
Results as XML
![Page 29: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/29.jpg)
Summary
The Challenge? • Out of memory errors with XML files (>100MB)
Why XQuery? • Transient reporting data is XML• XQuery simplifies application development
Why DataDirect XQuery? • Only product they’ve found that doesn’t get out of memory errors
processing their XML files (3-5G)• Performance compared to other XQuery products such as open source is
very good – often half the time or less.
![Page 30: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/30.jpg)
Customer Benefits
Why do customers choose DataDirect XQuery?
• Productivity• The easiest way to develop applications/reports when dealing with various data
sources (relational, XML, and legacy data sources).• Dramatically reduced development time over alternative approaches.• Less maintenance effort (~cheaper).• Stability for developers through our standards-based XQuery and XQJ
implementations.• XML tools for query development and testing – to get developers productive quickly.
• Performance• Faster execution time with XQuery as compared to other technologies. • Special optimization, mediation = best possible XQuery performance. • XML streaming drastically reduces the amount of memory required when processing
large XML documents.
• Flexibility• Easily embeddable; does not require any other product or application server. • Freedom from database vendor and database version.
![Page 31: Jonathan Robie Nancy Vodicka Webinar Details](https://reader035.fdocuments.us/reader035/viewer/2022070303/54b4f60d4a7959244d8b48a6/html5/thumbnails/31.jpg)
To ask a question now, type it in the Q&A box. A Q&A document will be emailed after the session.