OracleDB12 Integration With OracleWL12c
-
Upload
raghu-shyam -
Category
Documents
-
view
11 -
download
3
Transcript of OracleDB12 Integration With OracleWL12c
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 1
CUSTOMER LOGO
This slide format serves to call attention to a quote from a prominent customer, executive, or thought leader in regards to a particular topic.
Name
Title, Company Name
blogs.oracle.com/IMC
-
Oracle WebLogic Server 12c & Oracle Database 12c Integration
Emin Askerov,
Valery Yourinsky
Oracle ISV Migration Center
blogs.oracle.com/imc
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 3
The following 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 Oracles products remains at the sole discretion of Oracle.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 4
Program Agenda
Oracle WebLogic Server and Oracle Database 12c
Database 12c: New Key Features For Business
Applications
WebLogic 12c (12.1.2) Integration: Together We Stronger
Demo: Application Continuity
Summary - Q & A
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 5
Program Agenda
Oracle WebLogic Server and Oracle Database 12c
Database 12c: New Key Features For Business
Applications
WebLogic 12c (12.1.2) Integration: Together We Stronger
Demo: Application Continuity
Summary - Q & A
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 6
#1 Across Conventional and Cloud Environments Oracle WebLogic Server
Optimized for Engineered Systems
Foundation for Fusion Middleware & Applications
Market-leading Products
Oracle Business Applications
Cloud Application Foundation
Fusion Middleware
High Availability, Density, Performance
#1 HIGH PRODUCTIVITY
Java EE
Java SE
HTML5
Mobile, Developer
Productivity
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 7
Complete
Open
Integrated
Best in Class
On Premise and Cloud
User Engagement
Identity Management
Business Process
Management
Content Management
Business Intelligence
Service Integration Data Integration
Development Tools
Cloud Application Foundation
Enterprise Management
Web Social Mobile
Next Generation, Mission-Critical Cloud Platform Oracle Cloud Application Foundation
Cloud Application Foundation
Traffic Director/Web Tier
WebLogic Server
Coherence Tuxedo
Virtual Assembly Builder
Oracle Cloud
Exalogic Elastic Cloud
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 8
WebLogic Server 12c (12.1.2) Feature Snapshot!
Development with
WebLogic Server 12c
Maven Repository
HTML5 and WebSockets
TopLink Data Services
JDeveloper 12c
ADF 12c
Enterprise Pack for Eclipse 12c
Java EE/Java SE
Java SE 7
JSP 2.1, JSF 2.0, EJB 3.1, JPA 2.0
Restful Web Services
JRockit/Hotspot Convergence
Database 12c
Active GridLink for RAC
Web and Transaction Affinity
Multitenant Database Integration
Application Continuity with Transaction Guard
Fast Connection Failover
Database Resident Connection Pools
Global Data Services
WebLogic 12c Performance
SPECjEnterprise World Records EjOPS Overall, EjOPS/Processor
Enterprise Scale with
WebLogic Server 12c
Dynamic Clusters
Elastic JMS
Database Tlogs
Enterprise Manager 12c R3
Cloud Management
JVM Diagnostics
Incident and Problem Management
Patch Automation
Coherence 12c
Managed Coherence Servers
Goldengate Hotcache
Live Events
Cloud
Optimized WebLogic Virtual Appliances
Coherence Exalogic Exabus
WebLogic Elastic Messaging
Coherence Elastic Data
Exalogic HTTP, JMS and Web Service
Performance
TopLink Multi-Tenancy
WebLogic 12c Security
New Certification Validation
SPNEGO Update
RSA Update
JSSE Support
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 9
Security & Compliance
Big Data & Data Warehousing
Consolidation
Database as a Service
Application Development
High Availability
In-Memory
Performance & Scalability
Data Optimization
Released on June 25th 2013
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 10
Program Agenda
Oracle WebLogic Server and Oracle Database 12c
Database 12c: New Key Features For Business
Applications
WebLogic 12c (12.1.2) Integration: Together We Stronger
Demo: Application Continuity
Summary - Q & A
-
Database 12c: New Key Features For Business Applications
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 12
Real Application Clusters (RAC)
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 13
The New Oracle RAC 12c Overview of Oracle RAC
Noncluster Oracle databases have a
one-to-one relationship between the
Oracle database and the instance.
Oracle RAC environments have a one-
to-many relationship between the
database and instances.
An Oracle RAC database can have up
to 100 instances, all of which access
one database.
All database instances must use the
same interconnect, which can also
be used by Oracle Clusterware. Utility Computer
Oracle EM 12
Cloud Control
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 14
The New Oracle RAC 12c Oracle RAC provides:
- a single system image for multiple servers to
access one Oracle database. In Oracle
RAC, each Oracle instance must run on a
separate server.
Oracle RAC 12c provides: - Better Business Continuity
and High Availability (HA)
- Agility and Scalability
- Cost-effective Workload Management
Using:
A standardized and improved
deployment and management
A familiar and matured high availability
(HA) stack
Utility Computer
Oracle EM 12
Cloud Control
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 15
ASM Overview Oracle Database 11.2 or earlier
ASM Cluster Pool of Storage
Node2
Disk Group B Disk Group A
Node3 Node5 Node4
Shared Disk
Groups
Wide File Striping
One to One
Mapping of ASM
Instances to
Servers
Node1
ASM Instance
Database Instance
ASM Disk
RAC Cluster
DBA DBA DBB DBB DBC DBB
ASM ASM ASM ASM ASM
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 16
Oracle ASM 12c Overview Oracle ASM 12c Standard Deployment
ASM Cluster Pool of Storage
Disk Group B Disk Group A Shared Disk
Groups
Wide File Striping
One to One
Mapping of ASM
Instances to
Servers
ASM Instance
Database Instance
ASM Disk
RAC Cluster
Node4 Node3 Node2 Node1 Node5 ASM ASM ASM ASM ASM
ASM Instance
Database Instance
DBA DBA DBC DBB DBB DBB
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 17
Introducing Oracle Flex ASM Removal of One to One Mapping and HA
ASM Cluster Pool of Storage
Disk Group B Disk Group A Shared Disk
Groups
Wide File Striping
Databases share
ASM instances ASM Instance
Database Instance
ASM Disk
RAC Cluster
Node5 Node4 Node3 Node2 Node1
Node5
runs as
ASM
Client to
Node4
Node1
runs as
ASM
Client to
Node2
Node1
runs as
ASM
Client to
Node4
Node2
runs as
ASM
Client to
Node3
ASM ASM ASM
ASM Instance
DBA DBA DBC DBB DBB DBB
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 18
Flex ASM
In previous versions, ASM clients use OS-authentication to connect to ASM
This works because ASM clients and servers are always on the same server
With Oracle Database 12c,
ASM clients and ASM servers can be on different servers
A default configuration is created when the ASM cluster is configured
Benefits of providing a shared password file in ASM Disk Group
Remote Access
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 19
Supporting Pre-Oracle 12c Databases Pre-Oracle 12c Databases require a local ASM instance
ASM Cluster Pool of Storage
Disk Group B Disk Group A Shared Disk
Groups
Wide File Striping
Databases share
ASM instances ASM Instance
Database Instance
ASM Disk
RAC Cluster
Node5 Node4 Node3 Node2 Node1 ASM ASM ASM
DBA DBA DBC
ASM ASM
11g
DB
11g
DB DBB DBB DBB
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 20
Global Data Services
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 21
Global Data Services Cluster Services in a Global Scale
Cluster services (introduced in Oracle Database 10g) enables
dynamic load balancing and workload management in a clustered
environment
HR SALES ERP
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 22
Global Data Services (GDS) Next-generation Architecture
A Global Data Services configuration looks like a
virtual multi-instance database to database clients.
It provides client access through global services,
which are functionally similar to the local database
services provided by single-instance or Oracle Real
Application Clusters (Oracle RAC) databases.
Local and global services both provide load
balancing, high availability, resource management.
The essential difference between global services
and local services is that global services span the
instances of multiple databases, whereas local
services span the instances of a single database.
Active Data Guard
Reporting Service
Call Center Service
GoldenGate
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 23
Global Data Services (GDS) Next-generation Architecture
Global Data Services (GDS) enables
administrators to automatically and transparently
manage client workloads across replicated
databases that offer common services.
A database service is a named representation of
one or more database instances. Services enable
you to group database workloads and route a
particular work request to an appropriate instance.
A global service is a service provided by multiple
databases synchronized through data replication
Active Data Guard
Reporting Service
Call Center Service
GoldenGate
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 24
Global Data Services Built on Active Data Guard
Active Data Guard (introduced in Oracle Database 11g) enables high-
performance reader farms
Active Data Guard Standby Databases
Real-time query with no data type limitations
Production
Database
Updates
Queries
Queries
Queries
Queries
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 25
Global Data Services Built on GoldenGate
GoldenGate enables data replication in an active-active multi-master
environment
Database A
Database B Database C
GoldenGate
Multi-Master Configuration
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 26
Global Data Services (GDS) Next-generation Architecture
Global Data Services (GDS) is an Oracle Database 12c component
Provides load balancing in a global scale
Extends RAC-like connect time & run time load balancing globally
Enables optimal resource utilization
Dynamically migrates services based on load and availability
Provides global scalability and availability
Supports seamless failover
Supports dynamic addition of databases
Provides capability to centrally manage global resources
Easier management for globally distributed multi-database configurations
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 27
GDS Configuration
Global Service: Database Service provided by multiple
databases with replicated data
Local service + {region affinity, replication lag, database
cardinality, load balancing goals}
Global Service Manager (GSM): Provides main GDS
functionality: service management and load balancing
Regional listener to the incoming database connections
At least one GSM per region or multiple GSMs for High
Availability
All databases/services register to all GSM Listeners
GDS Catalog: stores all metadata, enables centralized
global monitoring & management
Global service configuration stored in GDS Catalog
GDS Region: Group of databases and clients in close
network proximity, e.g., East, West
GDS Pool: Databases that offer a common set of global
services, e.g., HR, Sales
GDSCTL: Command-line Interface to administer GDS
*GUI support of GDS in EMCC12.1.0.5
GDS Framework
Data Center #2
EMEA Region Data Center #1
APAC Region
Clients (Users) Clients (Users)
App/Middleware App/Middleware
Replication
GDSCTL
and EMCC
GDS
Catalog
Primary
GDS
Catalog
Standby
Global Service
Managers
Global Service
Managers
SALES POOL (sales_report_srvc, sales_entry_srvc)
SALES Databases HR POOL(hr_apac_srvc, hr_emea_srvc)
Replication
HR Databases
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 28
Multitenant Database Architecture
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 29
Oracle Database Architecture Requires memory, processes and database files
System Resources
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 30
New Multitenant Architecture Memory and processes required at container level only
System Resources
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 31
New Multitenant Architecture Memory and processes required at container level only
System Resources
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 32
OLTP benchmark comparison
Only 3GB of memory vs. 20GB memory used for 50 databases
Pluggable databases scaled to
over 250 while separate
database instances maxed at 50
Pluggable vs Separate Databases Highly Efficient: 6x Less H/W Resource, 5x more Scalable
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 33
Managing Shared Resources Resource management for consolidated databases
High Priority
Medium Priority
Low Priority
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 34
Simplified Patching Apply changes once, all pluggable databases updated
Upgrade
in-place
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 35
Simplified Upgrades Flexible choice when patching & upgrading databases
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 36
Manage Many Databases as One Backup databases as one; recover at pluggable database Level
One Backup
Point-in-time recovery
at pluggable database level
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 37
Manage Many Databases as One One standby database covers all pluggable databases
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 38
GOLD
SILVER
BRONZE
RAC, Data Guard, Daily Incrementals
Data Guard, Daily Incrementals
Weekly Full Backups
Managing Database Service Level Tiers Change tiers as databases become more mission critical
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 39
Fast Provisioning Pluggable databases can be quickly provisioned from seed
0
5
10
15
20
25
Non CDB PDB Clone PDB using Copy-on-Write File
System
Time Taken to Provision New Database
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 40
Creating Databases for Test and Development Fast, flexible copy and snapshot of pluggable databases
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 41
Perfect for ISVs. Packaged apps and reference data are easily distributed
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 42
Consolidating Databases Step1: Upgrade databases in-place
Upgrade in Place
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 43
Consolidating Databases Step2: Plug-in upgraded databases
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 44
Getting to Multitenant Real Application Testing with Consolidated Replay
Capture workload
Capture workload
Capture workload
Transport
captured
workload
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 45
ERP
CRM
DW
Time
Consolidated Database Replays For manually consolidated and Pluggable Databases
Pro
cessor
Utiliz
ation
Replay Consolidated Workloads
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 46
Oracle Multitenant
Feature Customer Benefit
Simplified, dense consolidation Reduce capital expenditures
Manage many databases as one Reduce operational expenses
Rapid provisioning Reduce operational expenses
Rapid unplug/plug Reduce operational expenses
Security Isolation Secure multitenancy
Resource Isolation Tenants get fair share of computing resources
RAC compatibility Greater scalability & resource utilization
No application changes Easy to adopt for customers and ISVs
Customer Benefits
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 47
Application Continuity and Transaction Guard
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 48
Dealing with Unknown Transaction State Pre-Oracle Database 12c
Database outages can cause
in-flight work to be lost, leaving
users and applications in doubt
Often leads to
User pains
Duplicate submissions
Rebooting mid-tiers
Developer pains
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 49
Tackling In-Flight Work for Unplanned Outages
Transaction Guard
A Reliable protocol and API that returns the outcome of the last transaction
Application Continuity
Safely attempts to replay in-flight work following outages and planned
operations.
Two New Features
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 50
Tackling In-Flight Work for Unplanned Outages Transaction Guard
a protocol and developer API supported for JDBC Type 4 (Oracle Thin),
OCI, OCCI, and ODP.Net drivers.
introduces the concept of at-most once transaction semantics, also
referred to as transaction idempotence. When an application opens a
connection to the database using this service, the logical transaction ID
(LTXID) is generated at authentication and stored in the session handle at
the database and a copy at the client driver. This is a globally unique ID
that identifies the database transaction from the application perspective.
When there is an outage, an application using Transaction Guard can
retrieve the LTXID from the previous failed session's handle and use it to
determine the outcome of the transaction that was active prior to the
session failure.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 51
Tackling In-Flight Work for Unplanned Outages Transaction Guard
When there is an outage, an application using Transaction Guard can
retrieve the LTXID from the previous failed session's handle and use it to
determine the outcome of the transaction that was active prior to the
session failure.
The only procedure in package DBMS_APP_CONT
DBMS_APP_CONT.GET_LTXID_OUTCOME (
client_ltxid IN RAW,
committed OUT BOOLEAN,
user_call_completed OUT BOOLEAN)
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 52
Tackling In-Flight Work for Unplanned Outages Application Continuity for Java
Masks planned or unplanned outages (that cause database session
unavailability) by attempting to rebuild the database session transactional
and nontransactional states, so the outage appears to the user as no more
than a delayed execution.
Application Continuity for Java works with the Oracle Database Release
12c Release 1 (12.1) server to determine if the database session can be
replayed.
Prepares replay by using Transaction Guard to determine the outcome of
the last operation submitted by the session that received the error.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 53
Application Continuity Masks Unplanned & Planned Outages
Replays in-flight (DML)
work on recoverable errors
Masks many hardware, software,
network, storage errors and
outages when successful
Improves end-user experience and
productivity without requiring
custom application development
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 54
Application Continuity Example
Application Servers
Database Servers
End User
A reliable replay of in flight work
Network Switches
User selects product from
application and purchases it
from the web checkout
User transaction arrives at
application infrastructure. It
makes its way through the application tiers and results in a
database transaction being
created
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 55
Application Continuity Example
Application Servers
Database Servers
End User
A reliable replay of in flight work
Network Switches The infrastructure hosting the
database fails just before the
transaction is committed to the
database.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 56
Application Continuity Example
Application Servers
Database Servers
End User
A reliable replay of in flight work
Network Switches
The jdbc driver detects the
failure and checks with an
available node in the cluster,
using Transaction Guard, whether the transaction
committed or needs to be
replayed
If the transaction needs to be
replayed, Application Continuity will submit all of the inflight work to a surviving node
in the cluster and perform a
commit. This all happens
transparently to the application
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 57
Application Continuity Example
Application Servers
Database Servers
End User
A reliable replay of in flight work
Network Switches
The user receives confirmation
that his order has been
successfully completed.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 58
When is Application Continuity for Java transparent
If the Application
Uses J2EE or JPA that uses the standard JDBC API
Uses UCP or WebLogic Server and return connections to
pool
Does not have external actions that cannot be replayed.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 59
Database Resident Connection Pooling
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 60
Database Resident Connection Pooling
Database Resident Connection Pooling (DRCP) provides a connection
pool of dedicated servers for typical Web application scenarios. A Web
application typically makes a database connection, uses the
connection briefly, and then releases it. Through DRCP, the database
can scale to tens of thousands of simultaneous connections.
DRCP uses a pooled server, which is the equivalent of a dedicated
server process (not a shared server process) and a database session
combined. The pooled server model avoids the overhead of dedicating
a server for every connection that requires the server for a short
period.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 61
Database Resident Connection Pooling
A database instance is communicating
with middle-tier processes running in a
middle-tier client.
A middle-tier process requests a
connection from the connection broker.
The broker hands off the request to the
server process, which communicates
directly with the middle-tier process.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 62
Database Resident Connection Pooling
DRCP provides the following advantages:
Complements middle-tier connection pools that share connections between
threads in a middle-tier process.
Enables database connections to be shared across multiple middle-tier
processes. These middle-tier processes may belong to the same or different
middle-tier host.
Enables a significant reduction in key database resources required to support
many client connections. For example, DRCP reduces the memory required for
the database and boosts the scalability of the database and middle tier. The
pool of available servers also reduces the cost of re-creating client
connections.
Provides pooling for architectures with multi-process, single-threaded
application servers, such as PHP and Apache, that cannot do middle-tier
connection pooling.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 63
Database Resident Connection Pooling
To enable database resident connection pooling:
Start the database resident connection pool
EXECUTE DBMS_CONNECTION_POOL.START_POOL();
Route the client connection requests to a database resident connection pool
Using Easy Connect string:
dbserver.company.com:1521/sales_db:POOLED
Using TNS connect descriptor:
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbserver.company.com)
(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=sales_db)(SERVER=POOLED)))
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 64
Database Resident Connection Pooling
Dedicated Server Shared Server Database Resident Connection
Pooling
When a client request
is received, a new
server process and a
session are created
for the client.
When the first request is
received from a client, the
Dispatcher process places this
request on a common queue.
The request is picked up by an
available shared server
process. The Dispatcher
process then manages the
communication between the
client and the shared server
process.
When the first request is received
from a client, the Connection Broker
picks an available pooled server and
hands off the client connection to the
pooled server.
If no pooled servers are available, the
Connection Broker creates one. If the
pool has reached its maximum size,
the client request is placed on the
wait queue until a pooled server is
available.
Comparison
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 65
Database Resident Connection Pooling
Dedicated Server Shared Server Database Resident
Connection Pooling
Releasing database resources
involves terminating the session
and server process.
Releasing database
resources involves
terminating the session.
Releasing database
resources involves releasing
the pooled server to the pool.
Memory requirement is
proportional to the number of
server processes and sessions.
There is one server and one
session for each client.
Memory requirement is
proportional to the sum of the
shared servers and sessions.
There is one session for each
client.
Memory requirement is
proportional to the number of
pooled servers and their
sessions. There is one
session for each pooled
server.
Session memory is allocated
from the PGA
Session memory is allocated
from the SGA.
Session memory is allocated
from the PGA.
Comparison with others
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 66
Database Resident Connection Pooling
Dedicated Server Shared Server Database Resident Connection
Pooling
Memory used
= 5000 X (400 KB + 4 MB)
= 22 GB
Memory used
= 5000 X 400 KB + 100 X 4 MB
= 2.5 GB
Memory used
= 100 X (400 KB + 4 MB) + (5000 X
35KB) = 615 MB
Out of the 2.5 GB, 2 GB is
allocated from the SGA.
The cost of each connection to the
broker is approximately 35 KB.
Example of Memory Usage
Consider an application in which the memory required for each session is 400 KB
for each server process is 4 MB.
The pool size is 100 and the number of shared servers used is 100.
If there are 5000 client connections, the memory used by each configuration is as follows:
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 67
Program Agenda
Oracle WebLogic Server and Oracle Database 12c
Database 12c: New Key Features For Business
Applications
WebLogic 12c (12.1.2) Integration: Together We Stronger
Demo: Application Continuity
Summary - Q & A
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. Oracle Confidential 68
Oracle WebLogic Server 12c
Oracle Database 12c Integration
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 69
GridLink
WebLogic
GridLink
WebLogic
WebLogic Integration with Oracle RAC Up to 3X Better Performance with Active GridLink for RAC
Integrated WebLogic and Database RAC clusters
Dynamic load balancing of requests to RAC nodes
RAC node transaction affinity for data locality
Continuous connection availability regardless of RAC changes
80% 20%
RAC Node Load Aware Connection Requests
GridLink
WebLogic
GridLink
WebLogic
RAC Node Affinity For Transactions
XA
GridLink
WebLogic
GridLink
WebLogic
Continuous Connections Regardless of RAC Changes
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 70
Active GridLink For RAC - Configurability Old: Multi Data Source
Enables load balancing with XA
on old RAC versions but.
Data source (DS) per RAC
node
Map DS to RAC nodes
Grouped DS into MDS
Configuration scaling issues
New: GridLink Data Source Leverages RAC technology
Single data source per cluster
SCAN address
Simpler
More scalable
Machine 1
RAC
Node 1
RAC Cluster
Oracle Database Service
GridLink Data Source
Local
Listener
ONS
Machine 2
RAC
Node 2
Local
Listener
ONS
WebLogic Cluster
Machine 2
Managed
Server 2
RAC SCAN
Machine 1
Managed
Server 1
Machine 1
RAC
Node 1
RAC Cluster
Oracle Database Service
Multi Data Source
Local
Listener
ONS
Machine 2
RAC
Node 2
Local
Listener
ONS
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Data
Source 1
Data
Source 2
Single
Data Source
Multiple
Data Sources
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 71
Active GridLink For RAC - Manageability
GridLink isolates WebLogic
from RAC changes
Consider adding RAC node
1. Multi Data Source (MDS) Undeploy MDS
Add data source 3 on all servers
Update MDS list
Redeploy MDS
Coordinate across servers
2. GridLink Automatically detects RAC node
No WebLogic config changes
Simpler
More reliable, no downtime RAC Cluster
Oracle Database Service
GridLink Data Source
WebLogic Cluster
Machine 2
Managed
Server 2
RAC SCAN
Machine 1
Managed
Server 1
Machine 1
RAC
Node 1
RAC Cluster
Oracle Database Service
Multi Data Source
Listener
ONS
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Data
Source 1
Data
Source 2
Machine 3
RAC
Node 3
Listener
ONS
Machine 2
RAC
Node 2
Listener
ONS
Data
Source 3
Machine 1
RAC
Node 1
Listener
ONS
Machine 3
RAC
Node 3
Listener
ONS
Machine 2
RAC
Node 2
Listener
ONS
Configuration
changes
No
changes
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 72
Active GridLink For RAC - Performance Runtime Connection Load
Balancing (RCLB) RAC workload aware Avoid busy RAC nodes
Multiple apps, backups
Multi Data Source (MDS) Round-robin load balancing
New connections to busy node
Bottlenecks, performance impact
GridLink RCLB distributes runtime
connections to least busy nodes
Up to 2-3x performance
More predictable performance
RAC Cluster
GridLink Data Source
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Machine 1
RAC
Node 1
RAC Cluster
Multi Data Source
Listener
ONS
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Data
Source 1
Data
Source 2
Machine 3
BUSY
RAC
Node 3
Listener
ONS
Machine 2
RAC
Node 2
Listener
ONS
Data
Source 3
Machine 1
RAC
Node 1
Listener
ONS
Machine 3
BUSY
RAC
Node 3
Listener
ONS
Machine 2
RAC
Node 2
Listener
ONS
Uneven
workload
Balanced
workload
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 73
Active GridLink For RAC - Availability Fast Connection Failover
Faster failure detection and
failover
Multi Data Source (MDS) Periodic polling for node failure
Latency in failure detection
No awareness of planned
shutdown
GridLink Failure notification via ONS
New connections to surviving
nodes (no WebLogic polling)
Recovery notifications
Graceful RAC node shutdown
RAC Cluster
GridLink Data Source
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Machine 1
RAC
Node 1
RAC Cluster
Multi Data Source
Listener
ONS
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Data
Source 1
Data
Source 2
Machine 3
DOWN
RAC
Node 3
Listener
ONS
Machine 2
RAC
Node 2
Listener
ONS
Data
Source 3
Machine 1
RAC
Node 1
Listener
ONS
Machine 3
Down
RAC
Node 3
Listener
ONS
Machine 2
RAC
Node 2
Listener
ONS
Polling and
delayed
detection
Rapid
notification
via ONS
Available? Available? Available?
Node 3
Down
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 74
Application Continuity JDBC Replay Improved Resiliency for Better User Experience
RAC Cluster
GridLink Data Source
WebLogic Cluster
Machine 2
Managed
Server 2
Machine 1
Managed
Server 1
Machine 1 RAC
Node 1
Listener
ONS
Machine
3 Down
RAC
Node 3
Listener
ONS
Machine 2 RAC
Node 2
Listener
ONS
1. FAN Down Event:
Node 3 Down
2. Create Connection to
Surviving Node;
Replay if safe
Leverage feature supported in DB 12c
Generic and GridLink datasources
DB exceptions captured at datasource layer
Examples: RAC node failure, transient DB
problem
Automatically replay requests
Transparent to application
Read and write requests supported
No XA Transaction support
Benefit: Better end user experience
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 75
Application Continuity Notes Active Gridlink and Generic datasources, 12c driver
only
Leverages JDBC replay, re-implemented in 12c DB
Enabled with use of oracle.jdbc.replay.OracleDataSourceImpl driver class
When connection is taken from pool, begin is called
JDBC calls are remembered through commit
When connection is put back in pool, end is called
On failure, new connection is automatically created
Transparent to application!
Replay is already complete when connection is given to
app
How it Works in WebLogic
Limitations :cannot use with XA, PLSQL, proxy
authentication, DRCP
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 76
Database Resident Connection Pooling
Database Resident Connection
Pooling
Database connections/sessions are
pooled at the database
Enables better sharing of DB
resources, DB and application
scalability
WebLogic Integration with DRCP
Active GridLink and Generic Data
Sources
Data sources pool connection
placeholders and attach/detach
connections internally
Virtualization of DB Connections for Improved System Scalability
DRCP
WebLogic WebLogic
WebLogic WebLogic
12c Database
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 77
Scaling Without DRCP
DB Sessions (fixed capacity)
12c Database
WebLogic WebLogic
DB Sessions (fixed capacity)
12c Database
WebLogic WebLogic
DB Sessions (fixed capacity)
12c Database
WebLogic WebLogic
Scaling at the middle tier can
require additional scaling at
the database tier
Application servers hold connections, even if not in use.
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 78
Scaling With DRCP
12c Database
DRCP
WebLogic WebLogic
WebLogic WebLogic
WebLogic
WebLogic
WebLogic
DRCP enables sharing of
connections for more
efficient use of resources
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 79
DRCP Integration Notes
DRCP must be enabled on the database
Generic and Gridlink datasources, requires
12c DB and driver
Enabled with a datasource connection
property and URL
DRCPConnectionClass group/subgroup of connections
jdbc:oracle:thin:@//:/[:POOLED]
Pooled connections in WebLogic are
unattached When connection is given to app,
attachConnection() is called
When connection is returned to the pool,
detachConnection() is called
How it Works in WebLogic
DRCP
WebLogic
12c Database
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 80
WebLogic Integration with Pluggable Database
Pluggable Database One of multiple virtual databases hosted in a
single Container Database
Provides tenant isolation, while leveraging the benefits of a single unified Container Database
Better efficiency (CPU, Disk) Unified security management Simplified upgrade
WebLogic Server Integration with Pluggable Databases
Seamless integration
Support of MultiTenancy by automatically connecting to PDB (tenant) using Set
Container
Requires Oracle 12c Database
Increased Density and Scalability, Multi-Tenancy
Get Connection
Tenant1
Set Container
PDB1
Set Container
PDB2
Data Source
WebLogic Cluster
Mgd Svr 2 Mgd Svr 1
App 1
App 2
App 1
App 2 Get Connection
Tenant2
Container Database
PDB1
Tenant
1
PDB2
Tenant
2
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 81
WebLogic Domain 2 WebLogic Domain 1
Container Database
PDB
1
PDB
2
PDB
3
PDB
6
PDB
4
PDB
5
DS1 DS2 DS3 DS6 DS4 DS5
WebLogic Integration with PDB 1 Datasource per PDB/Tenant
Pluggable databases appear as
regular databases to WebLogic
In WebLogic, configure a
datasource per PDB/Tenant
Most benefits recognized at the
data tier
Increased Density and Scalability at the Data Tier
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 82
WebLogic Domain 1
Container Database
PDB
1
PDB
2
PDB
3
PDB
6
PDB
4
PDB
5
Datasource
WebLogic Integration with PDB Connection Switching Across PDBs
In WebLogic, configure a single data
source to pool connections to all tenant
database
Create a connection label callback
handler to call setContainer on
connections
Enables multi-tenancy at the middle and
data tiers
Enables density and scalability at middle
and data tiers
Better resource utilization
Increased Density and Scalability,
Support for Multi-tenancy Application 1: getConnection(Tenant5)
1
1
1
2
2 2
4 4 5
Connection
Label
Callback
Handler
setContainer()
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 83
WebLogic Integration with Global Data Services
Global Data Services in Database 12c Central management of database services
across distributed database cloud
Dynamic migration of services based on load and availability
Scalability by adding RAC clusters
Restart failed services on an available DB
WebLogic Server Integration with DB Cloud
GridLink datasources support GDS
GridLink datasource configuration specifies a primary region to access a global service
(locally), and the addresses to each region.
Reconnection to migrated services based on FAN events RAC-like failover for the DB cloud
Improved Performance, Scalability, Availability for WebLogic and Database Cloud
GridLink Data Source
WebLogic Cluster
Machine 2 Machine 1
Managed
Server 1
RAC
Cluster
DataGuard,
GoldenGate
Region: MADRID
RAC
Cluster
RAC
Cluster
RAC
Cluster
Service1
Service2
FAN Events
Service2
Service1
Service2 under heavy load
GDS
Region: BARCELONA
Managed
Server 2
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 84
Feature
WLS 10.3.6/12.1.1/12.1.2 WLS 10.3.6/12.1.1 WLS 12.1.2 WLS 10.3.6/12.1.1 WLS 12.1.2
with 11g
drivers
with 11gR2 DB
with 11g drivers
with 12c DB with 12c drivers
with 11gR2 DB
with 12c
drivers
with 11gR2
DB
with 12c drivers
with 12c DB with 12c drivers
with 12c DB
JDBC replay (read/write) No No No No
Yes ; (RW with
Active GridLink
only, no XA
transactions)
Yes; (RW with Active
GridLink and Generic
Data source, no XA)
Pluggable Database
(PDB) No
Yes (Except Set
Container) No No Yes Yes
Dynamic switching
between PDBs No No No No No Yes
Database Resident
Connection pooling
(DRCP)
No No No Yes No Yes
Oracle Notification
Service (ONS) auto
configuration
No No No No No Yes; (Active
GridLink only)
Global Database
Services (GDS) No
Yes; (Active
GridLink only) No No
Yes; (Active
GridLink only)
Yes ; (Active
GridLink only)
JDBC 4.1 (using
ojdbc7.jar files & JDK 7) No No Yes Yes Yes Yes
WebLogic Oracle DB features matrix
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 85
Application Continuity with WebLogic Server Integration Demonstration
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 86
WEBLOGIC, DATABASE INTEGRATION
Integration with Oracle RAC
Application Continuity & Transaction Guard out of the box
Support for Multi-Tenant Database
Scalability with Connection Pooling
Support for Global Data Services
Application
Continuity
Database
Resident
Connection
Pool
Global
Data
Services
Multi-
Tenant
Database
WebLogic Server
Recap: Availability, Multi-Tenancy, Scalability Oracle WebLogic Server 12c, Oracle Database 12c
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 87
Next steps
White Papers
Maximize Availability with Oracle Database 12c
Oracle WebLogic Server Integration with Oracle Database 12c
Oracle WebLogic Server 12c Active GridLink for Oracle Real Application
Clusters
Oracle WebLogic Server 12c on Microsoft Windows Azure
Oracle WebLogic Server Multi-Data Sources & Oracle RAC
Presentations
Maximum Application Availability with Oracle Database 12c
Demos
Application Continuity Standalone
Application Continuity with WebLogic Server Integration
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 88
Next steps
Learn more on Oracle Learning Library
http://apex.oracle.com/pls/apex/f?p=44785:24:0::NO:24:P24_CONTENT_ID,P2
4_PREV_PAGE:8429,29
Blogs
https://blogs.oracle.com/WebLogicServer
https://blogs.oracle.com/databaseinsider/entry/oracle_database_12c
Podcasts
https://blogs.oracle.com/WebLogicServer/entry/part_i_weblogic_database_inte
gration
https://blogs.oracle.com/WebLogicServer/entry/part_ii_weblogic_database_inte
gration
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 89
Adopt & Implement the latest by Oracle
JOIN US
CONTACT US
blogs.oracle.com/imc
twitter.com/oracleimc
youtube.com/OracleIMCTeam
facebook.com/oracleimc
ORACLE.COM/PARTNERS/GOTO/HUB-ECEMEA
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 90
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 91
-
Copyright 2013, Oracle and/or its affiliates. All rights reserved. 92
CUSTOMER LOGO
This slide format serves to call attention to a quote from a prominent customer, executive, or thought leader in regards to a particular topic.
Name
Title, Company Name
blogs.oracle.com/imc
twitter.com/oracleimc
youtube.com/OracleIMCTeam
facebook.com/OracleIMC