Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Similar documents
SQL and PL/SQL Development and Leveraging Oracle Multitenant in Visual Studio. Christian Shay Product Manager, NET Technologies Oracle

Track and Keynote/Session Title 9:00:00 AM Keynote 11g Database Development Java Track Database Apex Track.Net Track. 09:30:00 AM with Oracle and

<Insert Picture Here> Oracle In-Memory Database Cache Overview

What s New with Oracle Database 12c on Windows On-Premises and in the Cloud

PL/SQL Programming for.net Developers: Tips, Tricks, and Debugging

CASE STUDY: Oracle TimesTen In-Memory Database and Shared Disk HA Implementation at Instance level. -ORACLE TIMESTEN 11gR1

Oracle Database 10g Release 2 on Windows: Development and Deployment. An Oracle Technical White Paper May 2006

Tips and Tricks for Using Oracle TimesTen In-Memory Database in the Application Tier

<Insert Picture Here> Oracle Database Directions Fred Louis Principal Sales Consultant Ohio Valley Region

Oracle Data Provider For.NET 11g. An Oracle Technical White Paper October 2007

New 11g Features in Oracle Developer Tools for Visual Studio. An Oracle White Paper January 2008

New Features in Oracle Application Express 4.1. Oracle Application Express Websheets. Oracle Database Cloud Service

Oracle TimesTen IMDB - An Introduction

Real-time Data Replication

<Insert Picture Here> Oracle on Windows and.net

Developing Microsoft SharePoint Server 2013 Advanced Solutions MOC 20489

HOUG Konferencia Oracle TimesTen In-Memory Database and TimesTen Application-Tier Database Cache. A few facts in 10 minutes

Preview of Oracle Database 12c In-Memory Option. Copyright 2013, Oracle and/or its affiliates. All rights reserved.

<Insert Picture Here> Oracle SQL Developer 3.0: Overview and New Features

1 Changes in this release

OTM Performance OTM Users Conference Jim Mooney Vice President, Product Development August 11, 2015

Toad for Oracle 8.6 SQL Tuning

Developing Microsoft SharePoint Server 2013 Advanced Solutions

Jive and High-Availability

Optimizing the Performance of the Oracle BI Applications using Oracle Datawarehousing Features and Oracle DAC

PHP on IBM i: What s New with Zend Server 5 for IBM i

Using DataDirect Connect for JDBC with Oracle Real Application Clusters (RAC)

VERITAS Storage Foundation 4.3 for Windows

Real Application Testing. Fred Louis Oracle Enterprise Architect

Application-Tier In-Memory Analytics Best Practices and Use Cases

Course 20489B: Developing Microsoft SharePoint Server 2013 Advanced Solutions OVERVIEW

SOLUTION BRIEF. JUST THE FAQs: Moving Big Data with Bulk Load.

Using Apache Derby in the real world

Configuring the BIG-IP LTM v11 for Oracle Database and RAC

Sivakumar Software Engg, Zagro Singapore Pte Ltd .

Using Oracle Real Application Clusters (RAC)

An Oracle Technical White Paper July Using Oracle In-Memory Database Cache to Accelerate the Oracle Database

Virtualization Strategy with Oracle VM and Oracle Linux. Bjorn Naessens

Course 10978A Introduction to Azure for Developers

DE-20489B Developing Microsoft SharePoint Server 2013 Advanced Solutions

Automate Your BI Administration to Save Millions with Command Manager and System Manager

ORACLE DATA SHEET KEY FEATURES AND BENEFITS ORACLE WEBLOGIC SERVER STANDARD EDITION

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

Developing Microsoft SharePoint Server 2013 Advanced Solutions

MS 10978A Introduction to Azure for Developers

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

Oracle 11g New Features - OCP Upgrade Exam

Oracle Database Cloud Services OGh DBA & Middleware Day

Jive and High-Availability

Techniques for implementing & running robust and reliable DB-centric Grid Applications

OLTP Meets Bigdata, Challenges, Options, and Future Saibabu Devabhaktuni

An Oracle White Paper May Guide for Developing High-Performance Database Applications

Oracle Database 11g: RAC Administration Release 2

TIBCO Spotfire Metrics Modeler User s Guide. Software Release 6.0 November 2013

How To Test For A Test On A Test Server

INTRODUCTION ADVANTAGES OF RUNNING ORACLE 11G ON WINDOWS. Edward Whalen, Performance Tuning Corporation

Oracle SQL Developer Migration. An Oracle White Paper September 2008

a division of Technical Overview Xenos Enterprise Server 2.0

VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5

Data Management in the Cloud

Beyond the Basics: Making the Most of Oracle Enterprise Manager 12c Monitoring

AWS Schema Conversion Tool. User Guide Version 1.0

Oracle Database 11g: New Features for Administrators DBA Release 2

High-Performance Oracle: Proven Methods for Achieving Optimum Performance and Availability

Course Outline: Course 20489B: Developing Microsoft SharePoint Server 2013 Advanced Solutions

Oracle Database 11 g Performance Tuning. Recipes. Sam R. Alapati Darl Kuhn Bill Padfield. Apress*

PUBLIC Performance Optimization Guide

Learn Oracle WebLogic Server 12c Administration For Middleware Administrators

F1: A Distributed SQL Database That Scales. Presentation by: Alex Degtiar (adegtiar@cmu.edu) /21/2013

In-memory Tables Technology overview and solutions

In Memory Accelerator for MongoDB

Building Scalable Applications Using Microsoft Technologies

Database Management System Choices. Introduction To Database Systems CSE 373 Spring 2013

SQL Server 2012 Gives You More Advanced Features (Out-Of-The-Box)

Power BI Performance. Tips and Techniques

SharePoint 2010

MS-40074: Microsoft SQL Server 2014 for Oracle DBAs

Addendum 3. Do not install Service Pack 3 if you use Oracle 8! Oracle 8 is no longer supported and will not operate with SP3.

Deployment Guide Oracle Siebel CRM

Raima Database Manager Version 14.0 In-memory Database Engine

Getting Started with Telerik Data Access. Contents

Oracle Database In-Memory The Next Big Thing

AD207: Advances in Data Integration with Lotus Enterprise Integrator for Domino 6.5. Sarah Boucher, Manager Enterprise Integration Development

To install Multifront you need to have familiarity with Internet Information Services (IIS), Microsoft.NET Framework and SQL Server 2008.

SAP HANA SAP s In-Memory Database. Dr. Martin Kittel, SAP HANA Development January 16, 2013

SOLUTION BRIEF. Advanced ODBC and JDBC Access to Salesforce Data.

Oracle Database: SQL and PL/SQL Fundamentals NEW

MS Enterprise Library 5.0 (Logging Application Block)

<Insert Picture Here> Move to Oracle Database with Oracle SQL Developer Migrations

WebSphere Business Monitor

FileMaker 11. ODBC and JDBC Guide

Cache Database: Introduction to a New Generation Database

Transcription:

1

Oracle and Visual Studio 2013: What's New and Best Practices Alex Keh Senior Principal Product Manager, Oracle

Program Agenda Introduction to ODAC New Features Schema Compare ODP.NET, Managed Driver Entity Framework 3

Program Agenda Optimizing ODP.NET Performance Connections Data Retrieval and Updates ODP.NET Data Types Caching 4

Introduction to ODAC 5

Oracle.NET Development Environment Oracle Developer Tools for Visual Studio Application Development Visual Studio Oracle Data Provider for.net.net Framework Deploy Oracle Providers for ASP.NET Database Development Deploy Web or Client/Server Oracle Database Extensions for.net 6

Oracle s Commitment to.net ODP.NET ODT &.NET SP ODAC 2006 64-bit ODAC ODAC 2008 ODAC 2009 ODAC 11.2 R2 ODAC 11.2 R4 ODAC 11.2 R5 ODAC 12c R1 2002-03 2005 2006 2007 2007-08 2009 2010 2011 2012 2013.NET 1.x VS 2003.NET 2.0 VS 2005.NET 3.0.NET 3.5 VS 2008.NET 4 VS 2010 EF.NET 4.5 VS 2012 Managed ODP.NET 7

ODAC 12c Release 2 Features Visual Studio 2013 certified.net Framework 4.5.1 certified Entity Framework 6 compatible Free download from OTN 8

Develop on Windows Run Database on any Platform ODT and ODP.NET 12c Visual Studio Windows Windows Linux Solaris Other Oracle 12c, 11g, or 10g 9

D E M O N S T R A T I O N Visual Studio and ODAC 10

Schema Compare and Tools 11

Schema Compare Tool in Visual Studio New in Oracle Developer Tools for Visual Studio ODAC 12c Oracle Database 10.2 or higher Compare two schemas in the same or different DBs Visually inspect differences using UI Generate a diff script for deployment purposes Reverse schema compare to rollback changes Can compare down to granularity of schema type e.g. compare all tables, or all packages, etc. 12

D E M O N S T R A T I O N Schema Compare 13

Managed ODP.NET 14

Current ODP.NET Architecture Managed and Unmanaged Managed Unmanaged Database ODP.NET Oracle.Data Access.dll ODP.NET Unmanaged DLLs OCI NET Oracle 15

Forthcoming ODP.NET Architecture Fully Managed Managed Database ODP.NET Oracle.Managed DataAccess.dll Oracle 16

Managed ODP.NET vs. Unmanaged ODP.NET Benefits One assembly for both 32-bit and x64 Easier side by side deployment Deploy smaller and fewer binaries Before: 150 MB After: Less than 10 MB Easier patching process Fully integrated with Code Access Security 17

Managed ODP.NET 100% managed provider Assembly Oracle.ManagedDataAccess.dll No other Oracle Client files required Unless using distributed transactions Namespaces Oracle.ManagedDataAccess.Client Oracle.ManagedDataAccess.Types 18

Unmanaged to Managed Migration Application migration process 1. Replace Oracle.ManagedDataAccess.dll reference to project 2. Modify namespace(s) to Managed ODP.NET 3. Change.NET config settings for Managed ODP.NET Include *.ora file settings Managed ODP.NET APIs same as ODP.NET APIs Initially, Managed ODP.NET does not support all ODP.NET features Plan is eventual feature parity 19

D E M O N S T R A T I O N Hello (Managed) World 20

Entity Framework 21

Entity Framework - Implicit RC RC metadata can be automatically generated specifically for EF implicit result sets Steps 1. While in EF project, run stored procedure in Server Explorer 2. Check off Select for Config box(es) 3. Click Add to Config button Benefit Eliminates hand-coding metadata thereby increasing productivity 22

D E M O N S T R A T I O N EF: RC Metadata Auto Generation 23

New Entity Framework Features All DB versions Oracle DB Client 12c or higher Implicit RC automatic metadata generation PL/SQL Boolean ODAC 12c Release 2 or higher Entity Framework 6 compatibility Requires Oracle DB 12c or higher Identity column SQL APPLY keyword for lateral views 24

Optimizing ODP.NET Performance 25

Connections ODP.NET performance counters Monitor with Windows Performance Monitor New in ODAC 12c More granularity in monitoring Monitor at app domain, pool, or DB instance level DB instance level monitoring applies if load balancing or FCF enabled 26

Connection Management RAC and Data Guard RAC automatic connection load balancing Load Balancing = true Fast Connection Failover RAC and Data Guard automatic bad connection removal HA Events = true 27

Commands Statement Caching Retains previously parsed statement in shared pool Cursor stays open on the client side for faster re-use No additional lookup needed on server Metadata remains on the client Caches most recently used statements Works with SQL and PL/SQL statements Best with bind variables Self-tuned cache size on by default No code changes needed 28

Commands Data Retrieval Control how much data is retrieved per DB roundtrip Too much data retrieved excessive client-side memory used Too little data retrieved additional round trips Use OracleCommand.RowSize and OracleDataReader.FetchSize to control result size RowSize populated after statement execution Set dynamically at run-time FetchSize can be set as multiple of RowSize 29

D E M O N S T R A T I O N Fetch Size and Row Size 30

Commands Statement Batching Execute multiple commands in one DB roundtrip Use anonymous PL/SQL Useful for disparate or similar statements 31

Commands Mass Data Movement with Arrays PL/SQL associative arrays Pass large amounts of data between.net and DB of the same data type Use parameter array binding Useful if executing the same statement multiple times Bind variables are the same, variable values can be different One execution for each element in the bound array Remember: PL/SQL associative arrays and parameter array binding are two different concepts 32

SecureFiles and LOBs Data retrieval options Defer retrieval (default) with LOB locator Retrieve data immediately with OracleCommand.InitialLOBFetchSize Retrieve a chunk using Read method Use Search method to find data to be retrieved 33

SecureFiles and LOBs Update/Insert/Delete Modify LOB without retrieving the data to the client side Uses LOB locator Use SecureFile data type in Oracle Database 11g 34

Oracle.NET Caching Solutions Oracle.NET database caches Client Result Cache Continuous Query Notification (CQN) TimesTen In-Memory Database Automatically updates/alerts client cache upon server changes Each serves separate caching requirements 35

Oracle Client Result Cache Automatically updating cache of query result sets Benefits Easy to use No code changes required Snapshot consistent Cache refreshes without user intervention More scalability and performance Data retrieval from client, rather than server No additional round trips 36

Oracle Client Result Cache Updates 1. Upon data change, client receives change notification on subsequent round trip (or max lag) Invalidation notifications piggyback on existing client round trips No changes to the cache results yet 2. Cache waits for next execution to refresh results Does not initiate an independent round trip No unnecessary DB traffic Cache entries do not timeout Uses Least Recent Used algorithm 37

Oracle Continuous Query Notification (CQN) Programmatic control over cache notifications and updates Also known as Database Change Notification Benefits over Client Result Cache More control over how cache behavior What if multiple users access the same results? What if only a subset of the cached data is required? How long should a query be cached? Do I want additional logic executed when the cache is refreshed? 38

Data Change OracleCommand Notification Request Execute() TABLE Data Dictionary Add Dependency OnChange OracleDependency Application Listener Notification Queue 39

Oracle TimesTen In-Memory Database Memory-Optimized Relational Database Fully featured relational database Oracle compatible SQL and PL/SQL with ODP.NET Persistent and durable Transactions with ACID properties Flexible options for durability Exceptional performance Instantaneous response time, high throughput, embeddable 40

High Availability New in Oracle Database 12c 41

Global Data Services Extend RAC services to a global basis Access to FCF, load balancing, and affinity capabilities RAC, Active Data Guard, and GoldenGate can participate Benefit Optimizes utilization, HA, and performance No code changes Requires Oracle Database 12c and ODP.NET 12c 42

Global Data Services Concepts Sales Service Sales Service Sales Global Service GoldenGate GoldenGate Without GDS With GDS 43

Faster and More Graceful Planned Outage Offline DB alerts ODP.NET of impending downtime ODP.NET stops allocating and closes idle connections Connections returned to the pool are closed Benefit DB brought offline as quickly as possible without end user disruptions Set ODP.NET attribute HA Events = true Requires Oracle Database 12c and ODP.NET 12c 44

Transaction Guard ODP.NET can determine whether a transaction committed even upon a DB failure Benefit Ensures transaction commits at most once App can query transaction outcome OracleConnection properties return transaction ID and status OracleLogicalTransactionStatus class Requires Oracle Database 12c and ODP.NET 12c 45

Recoverable Error Detection and Recovery After DB error, ODP.NET determines if failed transaction is recoverable or not Returns error message if operation cannot be retried OracleException.IsRecoverable property indicates if transaction recoverable and can be retried Benefit Determine with certainty whether to rollback or resubmit Requires Oracle Database 12c and ODP.NET 12c 46

Transaction Guard Scenario 1. ODP.NET receives FAN down event or error. 2. IsRecoverable=false roll back. IsRecoverable=true re-submit. 3. To re-submit, retrieve LogicalTransactionId. 4. Obtain new session and retrieve txn status. 5. If committed and completed, done. If not committed nor completed, re-submit. 47

Conclusion and Q & A 48

ODTUG Kscope14 Coming to Seattle Independent user group s Oracle developer technology conference June 22-26, 2014 Microsoft is a sponsor Hosting a session Oracle will present two.net sessions for Oracle DB http://kscope14.com/ 49

Additional Oracle.NET Resources OTN otn.oracle.com/dotnet Twitter twitter.com/oracledotnet YouTube youtube.com/oracledotnetteam Email alex.keh@oracle.com 50

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle s products remains at the sole discretion of Oracle. 51

52

53