The Top 5 Reasons to Deploy �Your Applications on Oracle RAC

MarkusMichalewicz 868 views 38 slides Sep 06, 2021
Slide 1
Slide 1 of 38
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38

About This Presentation

A presentation for developers, DBAs, and managers. This presentation was first presented in course of the AIOUG Maximum Availability Architecture (MAA)-focus month August 2021. The first reason might surprise you!


Slide Content

The Top 5 Reasons to Deploy
Your Applications on Oracle RAC
A presentation for developers, DBAs, and managers
Markus Michalewicz
Vice President of Product Management
Oracle Database High Availability | Scalability | MAA
@KnownAsMarkus
www.linkedin.com/in/markusmichalewicz
www.slideshare.net/MarkusMichalewicz
Anil Nair
Sr. Principal Product Manager
Oracle Real Application Clusters (RAC) & ASM
@RACMasterPM
http://www.linkedin.com/in/anil-nair-01960b6
http://www.slideshare.net/AnilNair27/

Oracle Database –more ideas: https://blogs.oracle.com/exadata/horizontal-scaling-with-oracle-databaseScalability and High Availability Choices –Simplified Overview
Copyright © 2021, Oracle and/or its affiliates2
Standbys
Native Sharding (Active) Data Guard /
Read ReplicasReal Application Clusters (RAC) /
RAC One Node

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates3

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates4

For connectivity, scalability, and seamless high availability starting with Oracle DB 12c Rel. 2
ALIAS =(DESCRIPTION =
(CONNECT_TIMEOUT=90) (RETRY_COUNT=20)(RETRY_DELAY=3) (TRANSPORT_CONNECT_TIMEOUT=3)
(ADDRESS_LIST =
(LOAD_BALANCE=on)
( ADDRESS = (PROTOCOL = TCP)(HOST=primary-scan)(PORT=1521)))
(ADDRESS_LIST =
(LOAD_BALANCE=on)
( ADDRESS = (PROTOCOL = TCP)(HOST=secondary-scan)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME = MyService)))
It starts with TheTNS Connector String
Copyright © 2021, Oracle and/or its affiliates5
Replication
For Single
Instance DBs
use single
host name
Use second
entry only if Data
Guard is used
Empirically determined
recommended values
https://www.slideshare.net/MarkusMichalewicz/asktom-how-to-make-and-test-your-application-oracle-rac-ready

Using Oracle RAC, developers don’t need to worry about:
•Connecting against the “right instance”
•Database services guide connections to the right database / instance.
•Client-side and server-side load balancing distribute workload.
•Scaling
•Nodes can transparently be removed from or added to the cluster.
•Nodes can have different CPU / memory capacity (in ranges).
•Parallelism –Parallel Execution can be set application independently.
•Availability
•No coding for failures, retries or failed “in-flight” / uncommitted transactions (optional with AC).
Once Connected, Developers can go Straight to Work
Copyright © 2021, Oracle and/or its affiliates6

Example: Hang Manager
•Available since Oracle Database 11g (11.1.0.7)
•Enabled by default
•Reliably detects database hangs
•Including cross-layer hangs between ASM & DB
•Automatically resolves hangs with
•“normal” (default) sensitivity
•“high” sensitivity –more alert to sessions waiting
•Supports QoS Performance Classes,
Ranks and Policies to maintain SLAs
•Logs all detected deadlocks (*18c), hangs & their resolution
•Hang Manager 12.2+auto-tunes itselfby periodically
collecting instance-and cluster-wide hang statistics
Automatically Benefit from inherent Oracle Database Features
Copyright © 2021, Oracle and/or its affiliates7
Session
EVALUATE
DETECT
ANALYZE
Hung?
QoSPolicy
VERIFY
Victim

Use Advanced Queuing (AQ)
•DBMS_PIPE can be used with
Oracle RAC, but application
changes required to make it
work outweigh benefits.
•Use Advanced Queuing (AQ)
instead, especially starting
with Oracle Database 19c.
Use Scalable Sequences
•Use non-ordered & cached
sequences if sequences are
used to generate primary
key. (Alternatives possible).
•Use Scalable Sequences
(new in 18c)
Avoid write contention
•Frequent transactional
changes to the same / small
data set in all instances may
result in “write hot spots”.
•Some derivation of this
occurrence is likely the
reason for a less than
expected scaling results.
•SQL optimization yields the
highest improvement rate,
especially for new workloads
and newly developed apps.
Optimize for New Applications
Copyright © 2021, Oracle and/or its affiliates8
NUM
INC1()
Sequence
https://www.oracle.com/technetwork/database/options/clustering/overview/racappdevbp-3124851.pdf

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates9

Due to its market leading Cache Fusion algorithm, Oracle RAC scales
1.any feature–e.g. Pluggable Databases, Oracle In-Memory and Oracle Data Guard
2.most enterprise applications–e.g. EbusinessSuite, SAP, Oracle Hospitality
3.nearly all custom applicationsas used by many of Oracle’s >18000RAC customers
•Without the need for significant application changes
•Especially on Oracle Exadata Database Machines
RAC Scales the Most Complex Enterprise Workloads Nearly Linearly
Copyright © 2021, Oracle and/or its affiliates10
0
5000
10000
15000
20000
25000
30000
35000
40000
4832486480
2035
4010
15520
22416
30016
37040
# of Cores across Oracle RAC Nodes
Users
2 Nodes
3 Nodes
4 Nodes
5 NodesSAP certified SD Benchmark results

Oracle RAC scales OLTP, DWH, and hybrid (transactional & analytical processing) workloads
Customer-Proven Scalability for all Types of Workloads
List is selective
Copyright © 2021, Oracle and/or its affiliates11

PayPal Database Requirements
ScalabilityPerformance
Availability
Oracle RAC
•Scalewithin an
RAC Instance
•Scaleby adding
RAC Instances
•Rolling Upgrades
with
Zero Downtime
WebCastreplay: https://youtu.be/g-xz9C2IEvU

•Real Application
Clusters (RAC)
•Cache Fusion
9i
•Connection Load Balancing
•Load Balancing Advisory
•Cluster Managed Services
•Automatic Storage
Management (ASM)
10g
•Universal Connection Pool (UCP)
•Distributed Transactions (XA)
•Affinity Locking and Read-Mostly Objects
•Parallel Execution Optimizations
•Reader Bypass locking
11g
•Session Affinity
•PDB & Services Isolation
•Leaf Block Split Optimizations
•Multithreaded Cache Fusion
•Self-Tuning LMS
•Service-Oriented
Buffer Cache
12c
•Co-Location Tag for client routing
•RAC Runtime Resource Management
•Threaded Cache Fusion Processes
•Right-Growing Index
Performance improvements
•In-Memory Transaction Table
•Undo Block RDMA Reads
19c
•RAC Sharding
•Scalable Sequences
•Undo RDMA-Read
•Commit Cache
18c
•Optimized Broadcast on Commit
•RDMA for Current Read Blocks
21c
For best scalability (so far)
Use Oracle RAC 19c and later
Copyright © 2021, Oracle and/or its affiliates13

Example: out of the box scalable and dynamic data access
•RAC scales to 100+ instances although in practice a
much smaller number of instances is sufficient
•Cache Fusion: Highly optimized data shipping for OLTP
•Dynamically chooses the optimal path for data access:
Local cache access in Nanoseconds
Block shipping from remote cache in Microseconds
Storage IO in Microseconds (Flash) or Milliseconds (Disk)
•Data access latency does not grow with size of cluster
•Function shipping via Parallel Execution (described next)
for complex analytics or batch operations
Oracle RAC with Cache Fusion –Always Ahead of its Time
Copyright © 2021, Oracle and/or its affiliates14
1
3
2
Buffer Cache
RAC Instance 2
Consolidated
pool of storage
RAC Instance 1
Buffer Cache
132

Oracle Parallel Execution Optimizations
•Parallel (query) execution maximizes utilization of all available CPU cores (in the RAC cluster)
•A coordinator process allocates a background server processes that execute the statement in parallel
•Completely transparent to the application
Parallel Execution for Scaling-Out Processing
Scale-Up
Parallel servers can run within the same instance
to maximize host CPU utilization
Scale-Out
Parallel servers can also run across across multiple Oracle
RAC instances to utilize CPUs across multiple hosts
Parallel Server Processes(same instance)Parallel Server Processes(local instance)Parallel Server Processes(local instance)
Copyright © 2021, Oracle and/or its affiliates15

Example: utilize RDMA for
•Propagating BoC(Broadcast on Commit)
•Reduce messages
•Reduce CPU usage on LMS
•Current read blocks
•Very common access pattern in various workloads
•Commit Cache messaging
•Results in reduced load on LMS from remote node
•Undo block RDMA reads
•https://www.slideshare.net/AnilNair27/oracle-rac-features-on-exadata
Oracle RAC Integration and Optimization on Exadata
Copyright © 2021, Oracle and/or its affiliates16

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates17

Upgrading to Oracle RAC 19c and later Improves Availability
Multiple projects and features contribute to Zero Brownout Reconfiguration
18c
19c
11.212c
4x
faster
7x
faster
Oracle RAC reconfiguration times reduced by
•4x between Oracle RAC 11.2.0.4 and 12 Rel. 2
•7x between Oracle RAC 11.2.0.4 and 19c
Selection of contributing features:
•Remastering Slaves (*12.1)
•Support for 100 LMS’s (*12.2)
•More Dynamic Remastering (*19c)
•More ReconfigOptimizations (*19c)
•Fault Tolerant Cache Fusion (*20c)
•Near Zero Brownout for
Planned Maintenance (*20c)
•Automatic PDB Placement of PDB
Resources (*20c)
Copyright © 2021, Oracle and/or its affiliates18

ORACLE RAC –Zero Downtime
Zero Downtime with RAC Rolling Patches
Out of Box <10 sec
Optimized DRM
Reconfiguration Brownout times

Developers: protect your applications from any interruption
Application outage protection
•For planned maintenance & unplanned outages
•System outage protection alone does not ensure applications are uninterrupted
•Application Continuity preserves session state &replays in-flight database transactions and reads
•100% transparent to the users and applications –fully automatic
•Unique to Oracle!
•Available with Oracle RAC and Active Data Guard
•Default on Oracle Autonomous Database
Application Continuity
Copyright © 2021, Oracle and/or its affiliates20

Choose the right flavor for your application
Application Continuity
Copyright © 2021, Oracle and/or its affiliates21
Transparent Application
Continuity
works with & without Oracle pools,
some decisions are made for you
Application Continuity
uses Oracle pools, customizable
https://www.oracle.com/technetwork/database/options/clustering/applicationcontinuity/learnmore/cvc-application-continuity-5393298.pdf

Reports the Protection Provided by Application Continuity
ACchk
Copyright © 2021, Oracle and/or its affiliates22
Disable Reason
ORA-41429: side effect detected
Disable Reason
ORA-41412: REPLAY_FAILED
Action Required
Disable Reason
ORA-41409: commit

Oracle Clusterware protects all kinds of applications
Oracle Clusterware –the Foundation for Oracle RAC and More
Copyright © 2021, Oracle and/or its affiliates23

Database Reliability Framework| Autonomous Health Framework Adaptive Protection
Copyright © 2021, Oracle and/or its affiliates24
http://oracle.com/goto/ahf
https://www.slideshare.net/MarkusMichalewicz/best-practices-for-the-most-impactful-oracle-database-18c-and-19c-features

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates25

Converged Database
Use Cases are Converging
26Copyright © 2021, Oracle and/or its affiliates
Phone calls, messaging, photos, etc.
originally required separate products
•Now they are featuresof Smartphones
Similarly, ML, JSON, Blockchain, etc.
originally required separate databases
•Now they are featuresof a Converged Database

Use Cases are Converging for Good Reasons
Developersinnovate faster on a converged database
It is dramatically simplerfor developers to invoke extended SQLto execute ML, graph, spatial,
blockchain, IoT, etc. in one convergeddatabase
Instead of implementing distributed executionanddata movementacross multiple
fragmented databases
27
EVENT
RPC
ETL
REPLICATION
DB LINKS
EVENT
RPC
ETL
REPLICATION
DB LINKS
EVENT
RPC
ETL
REPLICATION
DB LINKS
EVENT
RPC
ETL
REPLICATION
DB LINKS
GraphMLDocSpatialReporting
Copyright © 2021, Oracle and/or its affiliates

Protect and scale converged workloadsOracle Multitenant & Oracle RAC
Copyright © 2021, Oracle and/or its affiliates28
DOCReporting
Spatial
https://www.slideshare.net/MarkusMichalewicz/oracle-database-mission-critical

Available since Oracle RAC 12.2 and constantly improved ever since
•Prevents “noisy neighbors” from affecting others with unnecessary chatter
•Prevents instance failures hosting singleton-only PDBs from affecting other instances
PDB Isolation in Oracle RAC
Copyright © 2021, Oracle and/or its affiliates
NodeA
Oracle Grid Infrastructure
Oracle RAC
NodeB
Oracle Grid Infrastructure
Oracle RAC
cons_1 cons_2
MSG
NodeA
Oracle Grid Infrastructure
Oracle RAC
NodeB
Oracle Grid Infrastructure
Oracle RAC
cons_1 cons_2✔
29

Manageconsolidation costs
Flexible & Cost-Effective Consolidation with Oracle Multitenant
Copyright © 2021, Oracle and/or its affiliates30
9 PDBs in one CDB –
requires Multitenant Option
3 PDBs (per CDB)
free of charge
with Oracle Database EE
3 Container Databases (CDB)
with 3 PDBs each on 1 server

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates31

32
Sound foundationIncrease HA & ScalabilityProtect from Disasters
time
sales / growth
Improve HA as Demand Requires it
Copyright © 2021, Oracle and/or its affiliates

Managers: Oracle Database + Oracle RAC Option provide endless possibilitiesCombine as Needed
Copyright © 2021, Oracle and/or its affiliates33
Replication
Real Application Clusters (RAC)RAC ShardingRAC + Data Guard
https://blogs.oracle.com/exadata/horizontal-scaling-with-oracle-database

Deploy the Same SolutionsOn-Premises and in the Cloud
Oracle Cloud Infrastructure is the only cloud certified and support for Oracle RAC
34 time
sales / growth
C@C
Copyright © 2021, Oracle and/or its affiliates

1.Developer Productivity (due to transparency)
2.Integrated Scalability (for applications and features)
3.Seamless High Availability (for the stack)
4.Isolated Consolidation (for converged use cases)
5.Full Flexibility (choose ”when”, “where”, and “how”)
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates35
S
u
m
m
a
r
y

Oracle RAC is a proven, highly available, scalable, Oracle Cloud-native database solutionSummary –TheReason to Deploy Your Applications on Oracle RAC
Copyright © 2021, Oracle and/or its affiliates36
ORACLEAUTONOMOUSDATABASE“If you have not looked into the New
Generation Oracle RAC 19c yet, you
have not experienced what Oracle
RAC can do for you.”
https://www.oracle.com/technetwork/database
/options/clustering/overview/new-generation-
oracle-rac-5975370.pdf

37Copyright © 2021, Oracle and/or its affiliates
Thank you
Markus Michalewicz([email protected])
Vice President of Database Product Management
@KnownAsMarkus
www.linkedin.com/in/markusmichalewicz
www.slideshare.net/MarkusMichalewicz

Our mission is to help people see
data in new ways, discover insights,
unlock endless possibilities.