Alex Keh Principal Product Manager Windows Development Oracle Corporation.

Slides:



Advertisements
Similar presentations
Introduction to NHibernate By Andrew Smith. The Basics Object Relation Mapper Maps POCOs to database tables Based on Java Hibernate. V stable Generates.
Advertisements

Getting Started with Oracle and .NET
17. Data Access ADO.Net Architecture New Features of ADO.NET
Chapter 10 Database Applications Copyright © 2011 by The McGraw-Hill Companies, Inc. All Rights Reserved. McGraw-Hill.
DEV351 ADO.NET Performance Pablo Castro Program Manager – ADO.NET Team Microsoft Corporation.
ODP.NET.
Chapter 10 ADO. What is ADO? ADO is a Microsoft technology ADO stands for ActiveX Data Objects ADO is a programming interface to access data in a database.
Chapter 12: ADO.NET and ASP.NET Programming with Microsoft Visual Basic.NET, Second Edition.
Fundamentals, Design, and Implementation, 9/e Chapter 11 Managing Databases with SQL Server 2000.
ASP.NET Programming with C# and SQL Server First Edition Chapter 8 Manipulating SQL Server Databases with ASP.NET.
Chapter 12 Database Connectivity with ASP.NET JavaScript, Third Edition.
Chapter 7 Managing Data Sources. ASP.NET 2.0, Third Edition2.
PL/SQL Programming for .NET Developers: Tips, Tricks, and Debugging
Module 14: Scalability and High Availability. Overview Key high availability features available in Oracle and SQL Server Key scalability features available.
Getting Started with Oracle and.NET Christian Shay Principal Product Manager,.NET and Windows Oracle USA.
1. Getting Started with Oracle and.NET Riaz Ahmed Director Software Development at Oracle.
“This presentation is for informational purposes only and may not be incorporated into a contract or agreement.”
Visual Studio Development Lifecycle: SQL, PL/SQL, Source Control, Deployment Christian Shay Principal Product Manager -.NET Technologies, Oracle.
Bruce Armstrong TeamSybase
Oracle Developer Tools for Visual Studio.NET Christian Shay Principal Product Manager Oracle Corporation Prerequisites for presentation:
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any.
Bringing the Power of Oracle Database to.NET Andy Mendelsohn Senior Vice President, Database Server Technologies Oracle Corporation.
Oracle Developer Tools for Visual Studio.NET Curtis Rempe.
DEV 301 Oracle Developer Tools for Visual Studio.NET Christian Shay, Oracle Corporation Alex Keh, Oracle Corporation.
New .NET Features for the Oracle Database
Advance Computer Programming Java Database Connectivity (JDBC) – In order to connect a Java application to a database, you need to use a JDBC driver. –
Application Express 4.1 New Features Hilary Farrell, Principal Member of Technical Staff, Oracle.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
Databases and LINQ Visual Basic 2010 How to Program 1.
Programming with Visual Basic.NET An Object-Oriented Approach  Chapter 8 Introduction to Database Processing.
Introduction to ADO.Net and Visual Studio Database Tools ISYS 512.
Native Support for Web Services  Native Web services access  Enables cross platform interoperability  Reduces middle-tier dependency (no IIS)  Simplifies.
10-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.
ADO.NET A2 Teacher Up skilling LECTURE 3. What’s to come today? ADO.NET What is ADO.NET? ADO.NET Objects SqlConnection SqlCommand SqlDataReader DataSet.
Oracle and Windows Prem Kumar Vice President Windows Development.
New Oracle Features for.NET Developers Alex Keh Principal Product Manager Server Technologies.
Learningcomputer.com SQL Server 2008 – Administration, Maintenance and Job Automation.
Objectives In this lesson, you will learn to: *Identify the need for ADO.NET *Identify the features of ADO.NET *Identify the components of the ADO.NET.
CERN - IT Department CH-1211 Genève 23 Switzerland t DB Development Tools Benthic SQL Developer Application Express WLCG Service Reliability.
New.NET Features for Oracle Database 11g Alex Keh Principal Product Manager, Server Technologies, Oracle.
Module 7: Accessing Data by Using ADO.NET
Windows Forms in Visual Studio 2005 Mike Pelton Systems Engineer Microsoft Ltd
Presented by Joseph J. Sarna Jr. JJS Systems, LLC
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
Module 4 Introduction ADO.NET.
Performance/Scalability with JDBC, UCP & Oracle Database 12c
Module 2: Using ADO.NET to Access Data. Overview ADO.NET Architecture Creating an Application That Uses ADO.NET to Access Data Changing Database Records.
Brian Saltzmann Chris Bennett IST 210 Professor Charlotte McConn.
Text TCS INTERNAL Oracle PL/SQL – Introduction. TCS INTERNAL PL SQL Introduction PLSQL means Procedural Language extension of SQL. PLSQL is a database.
Business Data Integration with MOSS 2007 Naveedullah Khan PMP, MCAD.NET Senior Consultant.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
Excel Services Displays all or parts of interactive Excel worksheets in the browser –Excel “publish” feature with optional parameters defined in worksheet.
Oracle Opens Your Windows Dick Vesters Frank van der Borden Oracle Nederland BV.
ADO .NET from. ADO .NET from “ADO .Net” Evolution/History of ADO.NET MICROSOFT .NET “ADO .Net” Evolution/History of ADO.NET History: Most applications.
3 Copyright © 2006, Oracle. All rights reserved. Designing and Developing for Performance.
Top 10 Entity Framework Features Every Developer Should Know
Integrating Data Lesson 6.
Christian Shay Principal Product Manager
ASP.NET Programming with C# and SQL Server First Edition
Introduction to Database Processing with ADO.NET
Introduction to Database Processing with ADO.NET
Visual Basic 2010 How to Program
Web Technologies IT230 Dr Mohamed Habib.
Maximum Availability Architecture Enterprise Technology Centre.
ADO.NET Accessing Databases in VS.NET
Santanu Datta Graham T. Williams Sr. Director, Windows Technology
Опит в използването на ODP.NET с Oracle 9i
Chapter 10 ADO.
Chapter 10 Accessing Database Files
Introduction to ADO.Net and Visual Studio Database Tools.
Presentation transcript:

Alex Keh Principal Product Manager Windows Development Oracle Corporation

Developing Oracle Applications with.NET

Agenda  Introduction  Oracle Data Provider for.NET Features and Demos  Best Practices  Customers  Future Directions

Why Choose Oracle?  Oracle brings enterprise scalability, availability and reliability to.NET – Advanced DB features are available through Oracle Data Provider for.NET (ODP.NET)  Oracle is open – DB server can be on Windows, Linux, or Unix – Developers can use either.NET or J2EE without losing DB capabilities  Wide adoption

Oracle: A Great Database for.NET  ODP.NET fully compliant with ADO.NET – No limits on using.NET functionality with Oracle  Oracle DB leads the way in advanced functionality --- all exposed in ODP.NET – RAC, XML DB, grid, advanced security, etc.  High performance ADO.NET provider – Lots of tuning options

ODP.NET - Basics  Available today in production for free – – Original release: 2002 – released last month  Can be used with Oracle8, Oracle8i, Oracle9i, and Oracle10g database servers – DB server can be on Unix, Linux, Windows, etc. – Database client on Windows  Supports VS.NET 2002 and 2003  Supports.NET Framework 1.0 and 1.1

ODP.NET Object Model DataSet Oracle DataAdapter Oracle Transaction Oracle Command Oracle Connection Oracle DataReader Connected Layer (ODP.NET) Disconnected Layer Oracle OracleCommand Builder Data Layer

D E M O N S T R A T I O N Simple “Hello World” Demo

Agenda  Introduction  Oracle Data Provider for.NET Features and Demos  Best Practices  Customers  Future Directions

D E M O N S T R A T I O N Batch SQL, Oracle REF Cursors, and Multiple Active Result Sets (MARS)

D E M O N S T R A T I O N Passing Array Parameters

Key Unique Oracle on.NET Features – Top 5 Features Oracle SS2K Multiple Active Result Sets (MARS) Multiple Active Result Sets (MARS)Yes No Native XML Data Type Native XML Data Type Yes No Result Set Retrieval Tuning Options Result Set Retrieval Tuning OptionsYes No Configurable LOB Retrieval Configurable LOB Retrieval Yes No Array Parameters Array Parameters Yes No Features Oracle SS2K Multiple Active Result Sets (MARS) Multiple Active Result Sets (MARS)Yes No Native XML Data Type Native XML Data Type Yes No Result Set Retrieval Tuning Options Result Set Retrieval Tuning OptionsYes No Configurable LOB Retrieval Configurable LOB Retrieval Yes No Array Parameters Array Parameters Yes No

Other Unique ODP.NET Features  Proxy authentication  TAF Callbacks and Notifications  Configurable statement cache  Array binding for multiple execution  Named or positional parameters  DataAdapter Requery

ODP.NET  SQL statement caching  Command cancellation and timeout  DeriveParameters support – Automatic stored procedure parameter metadata population  Support for ADO.NET 1.1 APIs  Retrieve LOB data greater than InitialLOBFetchSize without a primary key, unique column, or rowid  And bug fixes...

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

D E M O N S T R A T I O N Using XML Schema

Agenda  Introduction  Oracle Data Provider for.NET Features and Demos  Best Practices  Customers  Future Directions

Best Practices - Connections  Use connection pooling – But keep the number of connections and connection pools to a minimum  Watch out for dynamically-created connection strings – Changing parameter order does not create new pools – Changing parameter values does  Use proxy authentication – Effective for uniquely-identified users with same roles

Best Practices - Connections  Use Validate Connection only if you have to – Guarantees a valid connection, BUT extra round trip – Writing your own exception handler may be better/faster  Close all ODP.NET objects when finished (e.g. OracleConnection) – Do not count on the garbage collector to do this automatically

Best Practices – Data Retrieval and Updates  Key concept: control database roundtrips – Retrieve only the data that is needed when it’s needed  Single command (SELECT) tuning – Use FetchSize (OracleDataReader) and RowSize (OracleCommand) to control result retrieval – Use DataAdapter Requery  Save DB round trip and from re-executing

Best Practices – Data Retrieval and Updates  Multi-statement tuning (in one round trip) – Executing multiple, differing statements?  Use anonymous PL/SQL ­Batches statements for execution in one round trip – Executing the same set of commands multiple times?  Use statement caching ­Re-uses already parsed SQL or PL/SQL commands ­Works even if parameter values change!

Best Practices – Data Retrieval and Updates  Multi-statement tuning (in one round trip) -- continued – Executing the same command multiple times?  Use parameter array binding ­Statement will execute once for each array value ­Limited ability to use SELECT statements

Best Practices – Data Retrieval and Updates  Multi-statement tuning (in one round trip) -- continued – Passing an array (or executing the same command multiple times)?  Use PL/SQL associative arrays ­Statement will execute once for the entire array ­Can be used with SELECT statements  Parameter array binding ­Easier to use than associative arrays ­However, associative arrays will have faster performance and more features

Best Practices – Data Types  Key concept: control database roundtrips  These benefits come from using ODP.NET types (e.g. OracleClob)  Use OracleRefCursor class – Defers data retrieval until results needed  Use Oracle LOB classes (DML) – No need to retrieve data when updating or writing to LOBs

Best Practices – Data Types  Use Oracle LOB classes (SELECT) – Need to retrieve LOB data all at once?  InitialLOBFetchSize and InitialLongFetchSize to tune LOB and LONG retrieve the Use Oracle LOBs – Need to retrieve LOB data in specific amounts?  Set the Read property to retrieve the LOB data needed per round trip – Need to defer LOB retrieval until later?  By default, ODP.NET LOBs use LOB locators (pointers to LOBs on the server)

Agenda  Introduction  Oracle Data Provider for.NET Features and Demos  Best Practices  Customers  Future Directions

Credit Suisse First Boston  Mission Critical.NET derivatives trading system – Running in London, NY, Singapore and DR locations  DB Server – Production with Oracle Database 10g – XML DB, RAC, Streams, and Data Guard on Linux  Middle-tier – ODP.NET 10g – Connection Pooling – Non-schema and schema-based XMLType  LOB data type – Fast performance

Thomson Financial  Internet text-based repository for financial information research  DB Server – Oracle RAC on HP-UX with MC Service Guard from HP – Uses Data Guard and Replication

Thomson Financial  Middle-tier - ODP.NET – Transparent application failover and notifications  TAF support works great in failing over queries and re- starting transactions – XMLType – data in XML – Extensive LOB and temporary LOB manipulation – Connection pooling

Agenda  Introduction  Oracle Data Provider for.NET Features and Demos  Best Practices  Customers  Future Directions

Future Directions Themes  Better ease of use  More flexibility  Access to advanced Oracle DB features  Faster performance  ADO.NET 2.0 compliance

Future Directions  ODP.NET improvements for RAC and Grid – Fast connection failover  ODP.NET frees connections to bad nodes and creates new connections to healthy ones – Runtime load balancing  Sets how connections are to be divided among RAC instances based on percentage  ODP.NET DB change notification – When a DB data change occurs, client result sets using the data are notified – Ensure clients have the latest data

Future Directions  ODP.NET Connection Pool Management – Explicitly refresh connections in a pool or pools  ODP.NET LOB retrieval – Faster performance  Fewer DB round trips for LOB retrieval – Easier tunability and usability  Full LOB functionality with IntialLOBFetchSize  InitialLOBFetchSize can be greater than 32 KB  ODP.NET VPD – Application security context

Future Directions  ADO.NET 2.0 – Complying with new spec – Support new ADO.NET 2.0 features .NET stored procedures – Run C# and VB.NET code as stored procedures  Oracle Developer Tools for Visual Studio – Code wizards – Browse and edit Oracle schema – Browse and edit stored procedures – And more…

For More Information during OW  Presentation: Oracle Developer Tools for Visual Studio.NET – Follows current presentation  More demonstrations – Oracle on.NET booth at the demogrounds – Oracle on Windows Pavilion at the demogrounds

For More Information after OW  ODP.NET –  Oracle’s.NET Developer Center –  Oracle’s Windows Technology Center –  Subscribe to the ODP.NET mailing list – Send to with Subject line: “Subscribe”  me: