SlideShare a Scribd company logo
1 of 53
Winning Performance Challenges in
Oracle 12c Multitenant
Pini Dibask, Product Manager for Database Solutions
March 9th, 2017
Confidential2
• Pini Dibask, Product Manager, Database Solutions (Quest)
• Oracle DBA since 2006
• Oracle Certified Professional DBA (OCP)
• My Blog: OracleDBPro.BlogSpot.com
Pini.Dibask@Quest.com
http://Linkedin.com/in/pinidibask
@pini_dibask
About Me
Confidential3
About
• Quest is now an independent company again!
• #1 independent software company for Database Tools
• Driven by innovation
“Spend less time on what you need to do, and more time on what you want to do!”
• Committed to providing great products and superior support
Confidential4
Agenda
• Introduction to Oracle Multitenant
• Ensuring QoS in Multitenant Environments
• RAC and Multitenant
• Performance Monitoring for Multitenant Environments
Introduction to
Oracle Multitenant Architecture
Confidential6
Database Consolidation - Prior to Oracle 12c
Server Consolidation
 Multiple databases reside on a single server
Confidential7
Database Consolidation - Prior to Oracle 12c (Cont’d)
Database Consolidation
 Single database with multiple schemas
Confidential8
Database Consolidation with Schema Separation - Challenges
 Name Collisions
 Same schema name or same public synonym name
 Security
 DBA can access data of both applications
 Upgrades
 You cannot patch/upgrade only one schema
 Point-In-Time Recovery
 Impossible to perform schema level point-in-time recovery
Confidential9
 Pluggable Database
 Self-contained Oracle database
 Root Container
 Oracle-supplied metadata
Oracle 12c – Multitenant Architecture
Confidential10
Oracle 12c – Multitenant Architecture
 One SGA
 One set of background processes
 One root container
 Multiple pluggable databases
 Up to 252 PDBs (12cR1)
 Up to 4096 PDBs (12cR2)
Confidential11
Oracle 12c – Multitenant Architecture (Cont’d)
 Pluggable Databases share the following files:
 Undo Tablespace (optional)
 Redo Logs
 Control Files
 (S)Pfile
Local undo
introduced in
12cR2
Confidential12
CDB Level vs. PDB-Level
CDB-Level
• Oracle Software
• SGA & Background Processes
• Data Guard
• Some Parameters
(IsPDB_Modifiable= 'FALSE')
• Control Files, Redo
• (S)Pfile, Password File
PDB-Level
• FLUSH SHARED_POOL
• FLUSH BUFFER_CACHE
• RMAN Backups/Restores
• Some Parameters
(IsPDB_Modifiable= 'TRUE')
• Undo Tablespace (12cR2)
• Character Set (12cR2)
• Flashback Database (12cR2)
Confidential13
Multitenant Advantages - Unplug/Plug
Moving PDB from one container to another is straightforward
s
Confidential14
Multitenant Advantages - Fast Cloning
 Clone PDB from another PDB within the same CDB
 Requires source PDB to be open read only (12cR1)
s
Hot Clone is
available in
12cR2
Confidential15
Multitenant Advantages - Fast Cloning (Cont’d)
 Clone PDB from another PDB in remote CDB
 Requires source PDB to be OPEN READ ONLY (12cR1)
Hot Clone is
available in
12cR2
s
Confidential16
Multitenant Advantages - Easy Replication (12c Release 2)
 Refreshable PDB – Allows manually/automatically refreshing
contents of a remotely cloned PDB
s
Confidential17
Oracle 12c – DBCA
Non-CDB Single Tenant / Multitenant
Confidential18
Oracle 12c – Deployment Options
Why use Single Tenant instead of Non-CDB?
 Unplug/Plug
 Fast Cloning
 but most importantly …
(source: Oracle 12c Release 2 Documentation)
Ensuring High Level of QoS
in Multitenant Environments
Confidential20
QoS Challenges – Multitenant Environments
 PDB-Level QoS challenge
 Allocation of resources among competing sessions
 Example: One session consumes too many resources
 CDB-Level QoS challenge
 Allocation of resources among competing PDBs
 Example: One PDB consumes too many resources
Confidential21
Oracle Resource Manager - The Basics (Pre 12c)
Resource Manager Elements
 Resource Plan
 Resource Plan Directive
 Consumer Group
Resource Plan
“WEEKEND”
Directive 1
70% of CPU
Directive 2
20% of CPU
Directive 3
10% of CPU
Consumer Group
“WAREHOUSE”
Consumer Group
“OLTP”
Consumer Group
“OTHERS_GROUPS”
Confidential22
The Solution - Oracle Resource Manager
 PDB-Level Resource Plan
 Specifies how resources are allocated to consumer groups
 Prioritize resources between competing sessions
 CDB-Level Resource Plan
 Specifies how resources are allocated to PDBs
 Prioritize resources between competing PDBs
Confidential23
Oracle Resource Manager - 12c Multitenant
CDB Resource Plan Directive
 CPU Shares
 CPU Utilization Limit
 Parallel Servers Limit
Example
Pluggable
Database
CPU
Shares
Guaranteed
CPU
CPU Limit Parallel Servers
Limit
OLTP 3 3/4 = 75% 100% 100%
DWH 1 1/4 = 25% 60% 100%
Confidential24
Oracle Resource Manager - 12c Multitenant
 Obtain information about default CDB resource plan
 Obtain information about default PDB directive
s
s
Confidential25
Example of CDB-Level Resource Plan
Resource Plan
“Daytime_CDB_PLAN”
PDB
“OLTP”
PDB
“DWH”
Directive 2
Guaranteed CPU: 25%
Maximum CPU: 60%
Directive 1
Guaranteed CPU: 75%
Maximum CPU: 100%
Pluggable
Database
CPU
Shares
Guaranteed
CPU
CPU Limit Parallel Servers
Limit
OLTP 3 3/4 = 75% 100% 100%
DWH 1 1/4 = 25% 60% 100%
Confidential26
s
Creating CDB Resource Plan
Pluggable
Database
CPU
Shares
Guaranteed
CPU
CPU
Limit
OLTP 3 3/4 = 75% 100%
DWH 1 1/4 = 25% 60%
Confidential27
s
Creating CDB Resource Plan (Cont’d)
Confidential28
Enabling/Disabling CDB Resource Plan
 Manually enabling resource plan
 Manually disabling resource plan
s
s
Confidential29
Enabling/Disabling CDB Resource Plan (Cont’d)
s
Automatically Enable/Disable CDB Resource Plan
Confidential30
PDB Level Memory Resource Management
 Not available in 12c Release 1
 12c Release 2 - Memory parameters can be set at PDB level
 SGA_TARGET
 DB_CACHE_SIZE
 DB_SHARED_POOL_SIZE
 PGA_AGGREGATE_LIMIT
 PGA_AGGREGATE_TARGET
 SGA_MIN_SIZE
New in 12c
Release 2
Confidential31
PDB Level I/O Resource Management
 Not available in 12c Release 1
 12c Release 2 Introduced the following new parameters:
 MAX_IOPS - limits number of I/O operations per second
 MAX_MBPS - limits megabytes for I/O operations per second
 Default : 0 (no limit)
 If Oracle waits due to I/O limit “resmgr: I/O rate limit” wait event will appear
 Cannot be set in a Non CDB
Confidential32
How Many Resources Actually Being Used by PDBs?
 Option #1 - DBA_HIST_RSRC_PDB_METRIC
 Displays historical resource manager metrics by PDB
 Option #2 - AWR_ROOT_RSRC_PDB_METRIC (underlying AWR table)
 Option #3 - AWR Reports
Confidential33
Maintenance Tasks in Oracle Multitenant
 ENABLE_AUTOMATIC_MAINTENANCE_PDB parameter
 Can be used to enable/disable running of maintenance tasks
 Default: true
 Can be set at either CDB or PDB levels
 AUTOTASK_MAX_ACTIVE_PDBS parameter
 Maximum number of PDBs that can schedule maintenance tasks concurrently
 Default: 2 (two PDBs and the CDB root can run tasks at the same time)
 Can be set at CDB level only
 Both parameters introduced in 12c Release 2
RAC & Multitenant
Confidential35
Why RAC & Multitenant?
 Single Instance & Multitenant challenges
 Not Scalable = Limited Consolidation Solution
 Instance Down Downtime for all PDBs
 RAC makes Multitenant better
 Scalable = True consolidation solution
 Available = Instance Down  PDBs continue running on other nodes
Confidential36
RAC & Multitenant
s
 Multitenant fully supports RAC
 PDBs can be opened on specific instances
Confidential37
RAC & Multitenant
PDBs workload distributed across RAC instances
Services
Single SGA per
CDB Instance
Node1
CDB Instance 1
Node2
CDB Instance 2
Multitenant Container Database (CDB)
Confidential38
RAC & Multitenant
PDBs workload distributed across RAC instances
Services
Single SGA per
CDB Instance
Node1
CDB Instance 1
Node2
CDB Instance 2
Node3
CDB Instance 3
Multitenant Container Database (CDB)
Confidential39
RAC & Multitenant
s
Preferred Instance Available Instance
PDB opened only in
Preferred instance
Performance Monitoring for
Multitenant Environments
Confidential41
Multitenant & AWR – Oracle 12c Release 1
 Snapshots taken only at CDB-Level
 AWR data reside in cdb$root container
Confidential42
Multitenant & AWR – Oracle 12c Release 1 (Cont’d)
s
Confidential43
 AWR reports are available only at CDB level
 AWR Management Operations only at CDB level
 AWR data retention
 Snapshot schedule
 Taking manual snapshots
 Purging snapshot data
 Unplugged PDB does not contain AWR information
Multitenant & AWR – Oracle 12c Release 1 (Cont’d)
Confidential44
Multitenant & AWR – Oracle 12c Release 1 (Cont’d)
Confidential45
Multitenant & AWR – Oracle 12c Release 2
 Snapshots can be taken either at CDB or PDB level
 Snapshot data reside in SYSAUX tablespace of each PDB
 It is possible to create a report at PDB-level AWR report
 AWR management operations at either CDB or PDB level
 New Parameter : AWR_PDB_AUTOFLUSH_ENABLED
 Specifies whether to enable automatic AWR snapshots for PDBs
 Default : false (automatic AWR snapshots are disabled for PDBs)
 Can be set at CDB or PDB level
Confidential46
Multitenant & AWR – Oracle 12c Release 2 (Cont’d)
Confidential47
Workload Analysis using OEM ASH Analytics
Confidential48
Workload Analysis using Foglight for Oracle
Confidential49
Workload Analysis using Foglight for Oracle
Confidential50
Workload Analysis using Foglight for Oracle
Confidential51
References
 Introduction to the Multitenant: Architecture (Documentation)
http://docs.oracle.com/database/122/CNCPT/introduction-to-the-multitenant-architecture.htm#CNCPT89234
 Oracle Multitenant (White Paper)
http://www.oracle.com/technetwork/database/multitenant-wp-12c-1949736.pdf
 Oracle Multitenant: New Features in Oracle Database 12c Release 12 (White Paper)
http://www.oracle.com/technetwork/database/multitenant/overview/multitenant-wp-12c-2078248.pdf
Note: All diagrams and illustrations are used by permission of Oracle
Q&A
Thank You!

More Related Content

What's hot

Database Consolidation using the Oracle Multitenant Architecture
Database Consolidation using the Oracle Multitenant ArchitectureDatabase Consolidation using the Oracle Multitenant Architecture
Database Consolidation using the Oracle Multitenant ArchitecturePini Dibask
 
Winning performance challenges in oracle standard editions
Winning performance challenges in oracle standard editionsWinning performance challenges in oracle standard editions
Winning performance challenges in oracle standard editionsPini Dibask
 
Database Consolidation using Oracle Multitenant
Database Consolidation using Oracle MultitenantDatabase Consolidation using Oracle Multitenant
Database Consolidation using Oracle MultitenantPini Dibask
 
Oracle 12c and its pluggable databases
Oracle 12c and its pluggable databasesOracle 12c and its pluggable databases
Oracle 12c and its pluggable databasesGustavo Rene Antunez
 
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...Pini Dibask
 
RAC - The Savior of DBA
RAC - The Savior of DBARAC - The Savior of DBA
RAC - The Savior of DBANikhil Kumar
 
IOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for BeginnersIOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for BeginnersPini Dibask
 
Oracle 12c Multitenant architecture
Oracle 12c Multitenant architectureOracle 12c Multitenant architecture
Oracle 12c Multitenant architecturenaderattia
 
IOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best PracticesIOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best PracticesPini Dibask
 
RMAN in 12c: The Next Generation (WP)
RMAN in 12c: The Next Generation (WP)RMAN in 12c: The Next Generation (WP)
RMAN in 12c: The Next Generation (WP)Gustavo Rene Antunez
 
How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14Bobby Curtis
 
12 Things about Oracle WebLogic Server 12c
12 Things	 about Oracle WebLogic Server 12c12 Things	 about Oracle WebLogic Server 12c
12 Things about Oracle WebLogic Server 12cGuatemala User Group
 
Time for Change: Migrate your Non-RAC Database to RAC
Time for Change: Migrate your Non-RAC Database to RACTime for Change: Migrate your Non-RAC Database to RAC
Time for Change: Migrate your Non-RAC Database to RACSatishbabu Gunukula
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACKristofferson A
 
DBA 101 : Calling all New Database Administrators (WP)
DBA 101 : Calling all New Database Administrators (WP)DBA 101 : Calling all New Database Administrators (WP)
DBA 101 : Calling all New Database Administrators (WP)Gustavo Rene Antunez
 
How DBAs can garner the power of the Oracle Public Cloud?
How DBAs can garner the  power of the Oracle Public  Cloud?How DBAs can garner the  power of the Oracle Public  Cloud?
How DBAs can garner the power of the Oracle Public Cloud?Gustavo Rene Antunez
 
Vijfhart thema-avond-oracle-12c-new-features
Vijfhart thema-avond-oracle-12c-new-featuresVijfhart thema-avond-oracle-12c-new-features
Vijfhart thema-avond-oracle-12c-new-featuresmkorremans
 
Oracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New FeaturesOracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New FeaturesDeiby Gómez
 

What's hot (20)

Database Consolidation using the Oracle Multitenant Architecture
Database Consolidation using the Oracle Multitenant ArchitectureDatabase Consolidation using the Oracle Multitenant Architecture
Database Consolidation using the Oracle Multitenant Architecture
 
Winning performance challenges in oracle standard editions
Winning performance challenges in oracle standard editionsWinning performance challenges in oracle standard editions
Winning performance challenges in oracle standard editions
 
Database Consolidation using Oracle Multitenant
Database Consolidation using Oracle MultitenantDatabase Consolidation using Oracle Multitenant
Database Consolidation using Oracle Multitenant
 
Oracle 12c and its pluggable databases
Oracle 12c and its pluggable databasesOracle 12c and its pluggable databases
Oracle 12c and its pluggable databases
 
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
IOUG Collaborate 18 - Get the Oracle Performance Diagnostics Capabilities You...
 
RAC - The Savior of DBA
RAC - The Savior of DBARAC - The Savior of DBA
RAC - The Savior of DBA
 
IOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for BeginnersIOUG Collaborate 18 - Data Guard for Beginners
IOUG Collaborate 18 - Data Guard for Beginners
 
Oracle Database 12c : Multitenant
Oracle Database 12c : MultitenantOracle Database 12c : Multitenant
Oracle Database 12c : Multitenant
 
Oracle 12c Multitenant architecture
Oracle 12c Multitenant architectureOracle 12c Multitenant architecture
Oracle 12c Multitenant architecture
 
IOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best PracticesIOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
IOUG Collaborate 18 - ASM Concepts, Architecture and Best Practices
 
RMAN in 12c: The Next Generation (WP)
RMAN in 12c: The Next Generation (WP)RMAN in 12c: The Next Generation (WP)
RMAN in 12c: The Next Generation (WP)
 
How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14
 
12 Things about Oracle WebLogic Server 12c
12 Things	 about Oracle WebLogic Server 12c12 Things	 about Oracle WebLogic Server 12c
12 Things about Oracle WebLogic Server 12c
 
Time for Change: Migrate your Non-RAC Database to RAC
Time for Change: Migrate your Non-RAC Database to RACTime for Change: Migrate your Non-RAC Database to RAC
Time for Change: Migrate your Non-RAC Database to RAC
 
Oracle 12c - Multitenant Feature
Oracle 12c - Multitenant FeatureOracle 12c - Multitenant Feature
Oracle 12c - Multitenant Feature
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
 
DBA 101 : Calling all New Database Administrators (WP)
DBA 101 : Calling all New Database Administrators (WP)DBA 101 : Calling all New Database Administrators (WP)
DBA 101 : Calling all New Database Administrators (WP)
 
How DBAs can garner the power of the Oracle Public Cloud?
How DBAs can garner the  power of the Oracle Public  Cloud?How DBAs can garner the  power of the Oracle Public  Cloud?
How DBAs can garner the power of the Oracle Public Cloud?
 
Vijfhart thema-avond-oracle-12c-new-features
Vijfhart thema-avond-oracle-12c-new-featuresVijfhart thema-avond-oracle-12c-new-features
Vijfhart thema-avond-oracle-12c-new-features
 
Oracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New FeaturesOracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New Features
 

Similar to OUGN winning performnace challenges in oracle Multitenant

Migration to Oracle Multitenant
Migration to Oracle MultitenantMigration to Oracle Multitenant
Migration to Oracle MultitenantJitendra Singh
 
Oracle database 12c intro
Oracle database 12c introOracle database 12c intro
Oracle database 12c intropasalapudi
 
Oracle 12c PDB insights
Oracle 12c PDB insightsOracle 12c PDB insights
Oracle 12c PDB insightsKirill Loifman
 
Taming the PDB: Resource Management and Lockdown Profiles
Taming the PDB: Resource Management and Lockdown ProfilesTaming the PDB: Resource Management and Lockdown Profiles
Taming the PDB: Resource Management and Lockdown ProfilesMarkus Flechtner
 
RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)
RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)
RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)Kristofferson A
 
Oracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra PasalapudiOracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra Pasalapudipasalapudi123
 
Exploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your CloudExploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your Clouddyahalom
 
Oracle Data Guard for Beginners
Oracle Data Guard for BeginnersOracle Data Guard for Beginners
Oracle Data Guard for BeginnersPini Dibask
 
Best New Features of Oracle Database 12c
Best New Features of Oracle Database 12cBest New Features of Oracle Database 12c
Best New Features of Oracle Database 12cPini Dibask
 
2-day-dba-oracle.pptx
2-day-dba-oracle.pptx2-day-dba-oracle.pptx
2-day-dba-oracle.pptxRocky572078
 
New Features for Multitenant in Oracle Database 21c
New Features for Multitenant in Oracle Database 21cNew Features for Multitenant in Oracle Database 21c
New Features for Multitenant in Oracle Database 21cMarkus Flechtner
 
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2Markus Flechtner
 
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2Markus Flechtner
 
Gloc gangler 2018._v4
Gloc gangler 2018._v4Gloc gangler 2018._v4
Gloc gangler 2018._v4Secure-24
 
What’s New in Oracle Database 19c - Part 1
What’s New in Oracle Database 19c - Part 1What’s New in Oracle Database 19c - Part 1
What’s New in Oracle Database 19c - Part 1Satishbabu Gunukula
 
Oracle 12c Multi Tenant
Oracle 12c Multi TenantOracle 12c Multi Tenant
Oracle 12c Multi TenantRed Stack Tech
 
Oracle Database 12c para la comunidad GeneXus - Engineered for clouds
Oracle Database 12c para la comunidad GeneXus - Engineered for cloudsOracle Database 12c para la comunidad GeneXus - Engineered for clouds
Oracle Database 12c para la comunidad GeneXus - Engineered for cloudsGeneXus
 
COUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesCOUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesAlfredo Abate
 
TechEvent 18c Multitenant New Features
TechEvent 18c Multitenant New FeaturesTechEvent 18c Multitenant New Features
TechEvent 18c Multitenant New FeaturesTrivadis
 
0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorial0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorialKlausePaulino
 

Similar to OUGN winning performnace challenges in oracle Multitenant (20)

Migration to Oracle Multitenant
Migration to Oracle MultitenantMigration to Oracle Multitenant
Migration to Oracle Multitenant
 
Oracle database 12c intro
Oracle database 12c introOracle database 12c intro
Oracle database 12c intro
 
Oracle 12c PDB insights
Oracle 12c PDB insightsOracle 12c PDB insights
Oracle 12c PDB insights
 
Taming the PDB: Resource Management and Lockdown Profiles
Taming the PDB: Resource Management and Lockdown ProfilesTaming the PDB: Resource Management and Lockdown Profiles
Taming the PDB: Resource Management and Lockdown Profiles
 
RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)
RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)
RMOUG2016 - Resource Management (the critical piece of the consolidation puzzle)
 
Oracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra PasalapudiOracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra Pasalapudi
 
Exploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your CloudExploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your Cloud
 
Oracle Data Guard for Beginners
Oracle Data Guard for BeginnersOracle Data Guard for Beginners
Oracle Data Guard for Beginners
 
Best New Features of Oracle Database 12c
Best New Features of Oracle Database 12cBest New Features of Oracle Database 12c
Best New Features of Oracle Database 12c
 
2-day-dba-oracle.pptx
2-day-dba-oracle.pptx2-day-dba-oracle.pptx
2-day-dba-oracle.pptx
 
New Features for Multitenant in Oracle Database 21c
New Features for Multitenant in Oracle Database 21cNew Features for Multitenant in Oracle Database 21c
New Features for Multitenant in Oracle Database 21c
 
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
 
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
Oracle Multitenant Database 2.0 - Improvements in Oracle Database 12c Release 2
 
Gloc gangler 2018._v4
Gloc gangler 2018._v4Gloc gangler 2018._v4
Gloc gangler 2018._v4
 
What’s New in Oracle Database 19c - Part 1
What’s New in Oracle Database 19c - Part 1What’s New in Oracle Database 19c - Part 1
What’s New in Oracle Database 19c - Part 1
 
Oracle 12c Multi Tenant
Oracle 12c Multi TenantOracle 12c Multi Tenant
Oracle 12c Multi Tenant
 
Oracle Database 12c para la comunidad GeneXus - Engineered for clouds
Oracle Database 12c para la comunidad GeneXus - Engineered for cloudsOracle Database 12c para la comunidad GeneXus - Engineered for clouds
Oracle Database 12c para la comunidad GeneXus - Engineered for clouds
 
COUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_FeaturesCOUG_AAbate_Oracle_Database_12c_New_Features
COUG_AAbate_Oracle_Database_12c_New_Features
 
TechEvent 18c Multitenant New Features
TechEvent 18c Multitenant New FeaturesTechEvent 18c Multitenant New Features
TechEvent 18c Multitenant New Features
 
0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorial0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorial
 

Recently uploaded

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Recently uploaded (20)

Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 

OUGN winning performnace challenges in oracle Multitenant

  • 1. Winning Performance Challenges in Oracle 12c Multitenant Pini Dibask, Product Manager for Database Solutions March 9th, 2017
  • 2. Confidential2 • Pini Dibask, Product Manager, Database Solutions (Quest) • Oracle DBA since 2006 • Oracle Certified Professional DBA (OCP) • My Blog: OracleDBPro.BlogSpot.com Pini.Dibask@Quest.com http://Linkedin.com/in/pinidibask @pini_dibask About Me
  • 3. Confidential3 About • Quest is now an independent company again! • #1 independent software company for Database Tools • Driven by innovation “Spend less time on what you need to do, and more time on what you want to do!” • Committed to providing great products and superior support
  • 4. Confidential4 Agenda • Introduction to Oracle Multitenant • Ensuring QoS in Multitenant Environments • RAC and Multitenant • Performance Monitoring for Multitenant Environments
  • 6. Confidential6 Database Consolidation - Prior to Oracle 12c Server Consolidation  Multiple databases reside on a single server
  • 7. Confidential7 Database Consolidation - Prior to Oracle 12c (Cont’d) Database Consolidation  Single database with multiple schemas
  • 8. Confidential8 Database Consolidation with Schema Separation - Challenges  Name Collisions  Same schema name or same public synonym name  Security  DBA can access data of both applications  Upgrades  You cannot patch/upgrade only one schema  Point-In-Time Recovery  Impossible to perform schema level point-in-time recovery
  • 9. Confidential9  Pluggable Database  Self-contained Oracle database  Root Container  Oracle-supplied metadata Oracle 12c – Multitenant Architecture
  • 10. Confidential10 Oracle 12c – Multitenant Architecture  One SGA  One set of background processes  One root container  Multiple pluggable databases  Up to 252 PDBs (12cR1)  Up to 4096 PDBs (12cR2)
  • 11. Confidential11 Oracle 12c – Multitenant Architecture (Cont’d)  Pluggable Databases share the following files:  Undo Tablespace (optional)  Redo Logs  Control Files  (S)Pfile Local undo introduced in 12cR2
  • 12. Confidential12 CDB Level vs. PDB-Level CDB-Level • Oracle Software • SGA & Background Processes • Data Guard • Some Parameters (IsPDB_Modifiable= 'FALSE') • Control Files, Redo • (S)Pfile, Password File PDB-Level • FLUSH SHARED_POOL • FLUSH BUFFER_CACHE • RMAN Backups/Restores • Some Parameters (IsPDB_Modifiable= 'TRUE') • Undo Tablespace (12cR2) • Character Set (12cR2) • Flashback Database (12cR2)
  • 13. Confidential13 Multitenant Advantages - Unplug/Plug Moving PDB from one container to another is straightforward s
  • 14. Confidential14 Multitenant Advantages - Fast Cloning  Clone PDB from another PDB within the same CDB  Requires source PDB to be open read only (12cR1) s Hot Clone is available in 12cR2
  • 15. Confidential15 Multitenant Advantages - Fast Cloning (Cont’d)  Clone PDB from another PDB in remote CDB  Requires source PDB to be OPEN READ ONLY (12cR1) Hot Clone is available in 12cR2 s
  • 16. Confidential16 Multitenant Advantages - Easy Replication (12c Release 2)  Refreshable PDB – Allows manually/automatically refreshing contents of a remotely cloned PDB s
  • 17. Confidential17 Oracle 12c – DBCA Non-CDB Single Tenant / Multitenant
  • 18. Confidential18 Oracle 12c – Deployment Options Why use Single Tenant instead of Non-CDB?  Unplug/Plug  Fast Cloning  but most importantly … (source: Oracle 12c Release 2 Documentation)
  • 19. Ensuring High Level of QoS in Multitenant Environments
  • 20. Confidential20 QoS Challenges – Multitenant Environments  PDB-Level QoS challenge  Allocation of resources among competing sessions  Example: One session consumes too many resources  CDB-Level QoS challenge  Allocation of resources among competing PDBs  Example: One PDB consumes too many resources
  • 21. Confidential21 Oracle Resource Manager - The Basics (Pre 12c) Resource Manager Elements  Resource Plan  Resource Plan Directive  Consumer Group Resource Plan “WEEKEND” Directive 1 70% of CPU Directive 2 20% of CPU Directive 3 10% of CPU Consumer Group “WAREHOUSE” Consumer Group “OLTP” Consumer Group “OTHERS_GROUPS”
  • 22. Confidential22 The Solution - Oracle Resource Manager  PDB-Level Resource Plan  Specifies how resources are allocated to consumer groups  Prioritize resources between competing sessions  CDB-Level Resource Plan  Specifies how resources are allocated to PDBs  Prioritize resources between competing PDBs
  • 23. Confidential23 Oracle Resource Manager - 12c Multitenant CDB Resource Plan Directive  CPU Shares  CPU Utilization Limit  Parallel Servers Limit Example Pluggable Database CPU Shares Guaranteed CPU CPU Limit Parallel Servers Limit OLTP 3 3/4 = 75% 100% 100% DWH 1 1/4 = 25% 60% 100%
  • 24. Confidential24 Oracle Resource Manager - 12c Multitenant  Obtain information about default CDB resource plan  Obtain information about default PDB directive s s
  • 25. Confidential25 Example of CDB-Level Resource Plan Resource Plan “Daytime_CDB_PLAN” PDB “OLTP” PDB “DWH” Directive 2 Guaranteed CPU: 25% Maximum CPU: 60% Directive 1 Guaranteed CPU: 75% Maximum CPU: 100% Pluggable Database CPU Shares Guaranteed CPU CPU Limit Parallel Servers Limit OLTP 3 3/4 = 75% 100% 100% DWH 1 1/4 = 25% 60% 100%
  • 26. Confidential26 s Creating CDB Resource Plan Pluggable Database CPU Shares Guaranteed CPU CPU Limit OLTP 3 3/4 = 75% 100% DWH 1 1/4 = 25% 60%
  • 28. Confidential28 Enabling/Disabling CDB Resource Plan  Manually enabling resource plan  Manually disabling resource plan s s
  • 29. Confidential29 Enabling/Disabling CDB Resource Plan (Cont’d) s Automatically Enable/Disable CDB Resource Plan
  • 30. Confidential30 PDB Level Memory Resource Management  Not available in 12c Release 1  12c Release 2 - Memory parameters can be set at PDB level  SGA_TARGET  DB_CACHE_SIZE  DB_SHARED_POOL_SIZE  PGA_AGGREGATE_LIMIT  PGA_AGGREGATE_TARGET  SGA_MIN_SIZE New in 12c Release 2
  • 31. Confidential31 PDB Level I/O Resource Management  Not available in 12c Release 1  12c Release 2 Introduced the following new parameters:  MAX_IOPS - limits number of I/O operations per second  MAX_MBPS - limits megabytes for I/O operations per second  Default : 0 (no limit)  If Oracle waits due to I/O limit “resmgr: I/O rate limit” wait event will appear  Cannot be set in a Non CDB
  • 32. Confidential32 How Many Resources Actually Being Used by PDBs?  Option #1 - DBA_HIST_RSRC_PDB_METRIC  Displays historical resource manager metrics by PDB  Option #2 - AWR_ROOT_RSRC_PDB_METRIC (underlying AWR table)  Option #3 - AWR Reports
  • 33. Confidential33 Maintenance Tasks in Oracle Multitenant  ENABLE_AUTOMATIC_MAINTENANCE_PDB parameter  Can be used to enable/disable running of maintenance tasks  Default: true  Can be set at either CDB or PDB levels  AUTOTASK_MAX_ACTIVE_PDBS parameter  Maximum number of PDBs that can schedule maintenance tasks concurrently  Default: 2 (two PDBs and the CDB root can run tasks at the same time)  Can be set at CDB level only  Both parameters introduced in 12c Release 2
  • 35. Confidential35 Why RAC & Multitenant?  Single Instance & Multitenant challenges  Not Scalable = Limited Consolidation Solution  Instance Down Downtime for all PDBs  RAC makes Multitenant better  Scalable = True consolidation solution  Available = Instance Down  PDBs continue running on other nodes
  • 36. Confidential36 RAC & Multitenant s  Multitenant fully supports RAC  PDBs can be opened on specific instances
  • 37. Confidential37 RAC & Multitenant PDBs workload distributed across RAC instances Services Single SGA per CDB Instance Node1 CDB Instance 1 Node2 CDB Instance 2 Multitenant Container Database (CDB)
  • 38. Confidential38 RAC & Multitenant PDBs workload distributed across RAC instances Services Single SGA per CDB Instance Node1 CDB Instance 1 Node2 CDB Instance 2 Node3 CDB Instance 3 Multitenant Container Database (CDB)
  • 39. Confidential39 RAC & Multitenant s Preferred Instance Available Instance PDB opened only in Preferred instance
  • 41. Confidential41 Multitenant & AWR – Oracle 12c Release 1  Snapshots taken only at CDB-Level  AWR data reside in cdb$root container
  • 42. Confidential42 Multitenant & AWR – Oracle 12c Release 1 (Cont’d) s
  • 43. Confidential43  AWR reports are available only at CDB level  AWR Management Operations only at CDB level  AWR data retention  Snapshot schedule  Taking manual snapshots  Purging snapshot data  Unplugged PDB does not contain AWR information Multitenant & AWR – Oracle 12c Release 1 (Cont’d)
  • 44. Confidential44 Multitenant & AWR – Oracle 12c Release 1 (Cont’d)
  • 45. Confidential45 Multitenant & AWR – Oracle 12c Release 2  Snapshots can be taken either at CDB or PDB level  Snapshot data reside in SYSAUX tablespace of each PDB  It is possible to create a report at PDB-level AWR report  AWR management operations at either CDB or PDB level  New Parameter : AWR_PDB_AUTOFLUSH_ENABLED  Specifies whether to enable automatic AWR snapshots for PDBs  Default : false (automatic AWR snapshots are disabled for PDBs)  Can be set at CDB or PDB level
  • 46. Confidential46 Multitenant & AWR – Oracle 12c Release 2 (Cont’d)
  • 51. Confidential51 References  Introduction to the Multitenant: Architecture (Documentation) http://docs.oracle.com/database/122/CNCPT/introduction-to-the-multitenant-architecture.htm#CNCPT89234  Oracle Multitenant (White Paper) http://www.oracle.com/technetwork/database/multitenant-wp-12c-1949736.pdf  Oracle Multitenant: New Features in Oracle Database 12c Release 12 (White Paper) http://www.oracle.com/technetwork/database/multitenant/overview/multitenant-wp-12c-2078248.pdf Note: All diagrams and illustrations are used by permission of Oracle
  • 52. Q&A

Editor's Notes

  1. Me, I’ve been an Oracle DBA since 2006, during these years I worked a DBA and DBA team leader and as mentioned currently I work as a Product Manager for Database Solutions at Quest. I’m based in Israel Tel Aviv where we have a development group for some of our Database monitoring solutions including Foglight and Spotlight that some of you are probably familiar with. I’m an Oracle Certified Professional. You can see here my blog where I write about my experience of working with Oracle Databases. You can also find below my email, LinkedIn and twitter addresses so if you’d like to contact me you’d be more than welcome.
  2. I assume that you probably all familiar with Quest, the company which develops some of the most popular Database tools in the industry like Toad. Quest was actually acquired by Dell a few years ago but now – actually 2 weeks ago Quest became an independent software company again so we are very excited about that. The new quest is driven by innovation probably more than ever before and focused on analytics, and SaaS solutions. Our goal is basically make DBAs spend less time on what they need to do and more time on what the want to do. Quest is committed to providing great products and superior support. So that’s about all on myself and Quest – let’s move on to the agenda for today’s session.
  3. I assume that you probably all familiar with Quest, the company which develops some of the most popular Database tools in the industry like Toad. Quest was actually acquired by Dell a few years ago but now – actually 2 weeks ago Quest became an independent software company again so we are very excited about that. The new quest is driven by innovation probably more than ever before and focused on analytics, and SaaS solutions. Our goal is basically make DBAs spend less time on what they need to do and more time on what the want to do. Quest is committed to providing great products and superior support. So that’s about all on myself and Quest – let’s move on to the agenda for today’s session.
  4. A common approach in the past was to take different databases from different machines, and consolidate them into one machine. In this example we can see separate 3 machines with a single database on each. We could have consolidate them into a single machine. This approach allows us to consolidate servers which is good from IT resources management, but we didn’t consolidate databases. We would still have to manage different databases. 3 different databases to backup, 3 different databases to upgrade, 3 databases to monitor, etc.
  5. A better approach would be to consolidate many different databases into a single database, where each database has its own schema for example. Now, we need to manage only one Oracle Database. The problem with this approach is that there are several challenges when doing database consolidation, let’s review some of them.
  6. A better approach would be to consolidate many different databases into a single database, where each database has its own schema for example. Now, we need to manage only one Oracle Database. The problem with this approach is that there are several challenges when doing database consolidation, let’s review some of them.
  7. In a multitenant architecture, these is one instance with many pluggable databases. Each Pluggable Database is a self-contained, independent Database with its own schemas, data, etc. Pluggable Database is a “regular” Database from the application standpoint. In addition, there is one root container which stores Oracle-metadata that is shared across all the PDBs like PL/SQL packages, for example, the DBMS_SYSTEM package. All the PDBs can be plugged into the root container.
  8. You can configure a CDB to use local undo in every container or to use shared undo for the entire CDB. A CDB can run in local undo mode or shared undo mode. You can specify the undo mode of a CDB during CDB creation in the ENABLE PLUGGABLE DATABASE clause of the CREATE DATABASEstatement. You can change the undo mode of a CDB after it is created by issuing an ALTER DATABASE statement and restarting the CDB. The undo mode applies to the entire CDB. Therefore, every container either uses shared undo or local undo.
  9. Some parameter are modifiable at CDB level and some at PDB level. CDB-Level example: SGA_TARGET UNDO_RETENTION and UNDO_TABLESPACE PDB-LEVEL example: STATISTICS_LEVEL
  10. This new feature allows to have a cloned PDB that can be refreshed from another PDB either manually (on-demand) or automatically (scheduled refresh). The way this works is by creating a full clone at first stage (which can be taken with no downtime now with the new 12cR2 hot clone feature), and then there is no need to perform a full clone again because this feature allows applying incremental redo since the last clone or the last refresh time. This could be very useful in scenarios that the source PDB is very large and we would like to avoid creating a full clone to the entire PDB from scratch every time, because this process takes a long time when the PDB is very large. By having to apply only the incremental redo since last refresh or last clone, the process of having up to date cloned PDB for dev/test purposes becomes much faster and easier.
  11. Oracle 12c introduced new QoS challenges when it comes to the new Multitenant architecture. For example, One or more PDBs consume too many resources. Another example is that a single PDB has an inconsistent performance because the other PDBs are competing for system resources at various times
  12. The Resource Plan Specifies how resources are allocated to the different consumer groups by using plan directives. Consumer group is a collection of user sessions grouped together by a common attribute, such as username, program, service, and so on. In this example we can see that: The 1st plan directive allocates 70% of CPU to the WAREHOUSE consumer group The 2nd plan directive allocates 20% of CPU to the OLTP consumer group The last plan directive allocates 10% of CPU to all the other sessions
  13. Oracle 12c introduced new QoS challenges when it comes to the new Multitenant architecture. For example, One or more PDBs consume too many resources. Another example is that a single PDB has an inconsistent performance because the other PDBs are competing for system resources at various times
  14. CPU Shares – The proportion of the CPU resources guaranteed to the PDB CPU Utilization Limit – % of the CDB available CPU that is available for the PDB Parallel Servers Limit – % of the CDB available parallel servers that are available for the PDB
  15. The Resource Plan Specifies how resources are allocated to the different consumer groups by using plan directives. Consumer group is a collection of user sessions grouped together by a common attribute, such as username, program, service, and so on. In this example we can see that: The 1st plan directive allocates 70% of CPU to the WAREHOUSE consumer group The 2nd plan directive allocates 20% of CPU to the OLTP consumer group The last plan directive allocates 10% of CPU to all the other sessions
  16. The Resource Plan Specifies how resources are allocated to the different consumer groups by using plan directives. Consumer group is a collection of user sessions grouped together by a common attribute, such as username, program, service, and so on. In this example we can see that: The 1st plan directive allocates 70% of CPU to the WAREHOUSE consumer group The 2nd plan directive allocates 20% of CPU to the OLTP consumer group The last plan directive allocates 10% of CPU to all the other sessions
  17. The first step in creating the Resource plan is to create a Pending Area, which is a temporary work area for Resource Management configuration. changes in the pending area are not visible until the pending area is submitted. Click Now we create the 1st CDB Plan directive which allocates 3 CPU shares, and allows maximum 100% CPU resources to the OLTP pluggable database Click The next step is to create the 2nd CDB Plan directive which allocates 1 CPU share, and allows maximum 60% CPU resources to the DWH pluggable database Click In the last step we will validate the pending area and submit it
  18. The first step in creating the Resource plan is to create a Pending Area, which is a temporary work area for Resource Management configuration. changes in the pending area are not visible until the pending area is submitted. Click Now we create the 1st CDB Plan directive which allocates 3 CPU shares, and allows maximum 100% CPU resources to the OLTP pluggable database Click The next step is to create the 2nd CDB Plan directive which allocates 1 CPU share, and allows maximum 60% CPU resources to the DWH pluggable database Click In the last step we will validate the pending area and submit it
  19. The first step in creating the Resource plan is to create a Pending Area, which is a temporary work area for Resource Management configuration. changes in the pending area are not visible until the pending area is submitted. Click Now we create the 1st CDB Plan directive which allocates 3 CPU shares, and allows maximum 100% CPU resources to the OLTP pluggable database Click The next step is to create the 2nd CDB Plan directive which allocates 1 CPU share, and allows maximum 60% CPU resources to the DWH pluggable database Click In the last step we will validate the pending area and submit it
  20. The first step in creating the Resource plan is to create a Pending Area, which is a temporary work area for Resource Management configuration. changes in the pending area are not visible until the pending area is submitted. Click Now we create the 1st CDB Plan directive which allocates 3 CPU shares, and allows maximum 100% CPU resources to the OLTP pluggable database Click The next step is to create the 2nd CDB Plan directive which allocates 1 CPU share, and allows maximum 60% CPU resources to the DWH pluggable database Click In the last step we will validate the pending area and submit it
  21. We’ve covered CPU level resource management – now let’s see how we can manage to address memory resource management challenges
  22. A large amount of disk I/O can cause poor performance. Several factors can result in excess disk I/O, such as poorly designed SQL or index and table scans in high-volume transactions. If one PDB is generating a large amount of disk I/O, then it can degrade the performance of other PDBs in the same CDB. DBWR I/Os, control file I/Os, password file I/Os and other critical I/Os are exempted from the rate limit set by these parameters, but their I/Os are accounted for while throttling. Because of these exemptions, the PDB's actual I/O rate may sometimes exceed the limit. Use one or both of the following initialization parameters to limit the I/O generated by a particular PDB: The MAX_IOPS initialization parameter limits the number of I/O operations for each second. The MAX_MBPS initialization parameter limits the megabytes for I/O operations for each second. Both limits are enforced if you set both initialization parameters for a single PDB. If these initialization parameters are set with the CDB root as the current container, then the values become the default values for all of the containers in the CDB. If they are set with an application root as the current container, then the values become the default values for all of the application PDBs in the application container. When they are set with a PDB or application PDB as the current container, then the settings take precedence over the default settings in the CDB root or the application root. These parameters cannot be set in a non-CDB. The default for both of these initialization parameters is 0 (zero). If these initialization parameters are set to 0 (zero) in a PDB, and the CDB root is set to 0, then there is no I/O limit for the PDB. If these initialization parameters are set to 0 (zero) in an application PDB, and its application root is set to 0, then there is no I/O limit for the application PDB. Critical I/O operations, such as ones for the control file and password file are exempted from the limit and continue to run even if the limit is reached. However, all I/O operations, including critical I/O operations, are counted when the number of I/O operations and the megabytes for I/O operations are calculated.
  23. We’ve covered to define various resource limits to pluggable databases such as memory, cpu, and disk I/O limits. One question you may ask is how would you even know how many resources are actually being used today in order to define limits? DBA_HIST_RSRC_PDB_METRIC displays information about historical Resource Manager metrics for the past hour by PDB.
  24. Automated maintenance tasks are tasks that are started automatically at regular intervals to perform maintenance operations on the database. An example is a task that gathers statistics on schema objects for the query optimizer. Automated maintenance tasks run in maintenance windows, which are predefined time intervals that are intended to occur during a period of low system load. You can customize maintenance windows based on the resource usage patterns of your database, or disable certain default windows from running. You can also create your own maintenance windows. Oracle Database has these predefined automated maintenance tasks: Automatic Optimizer Statistics Collection—Collects optimizer statistics for all schema objects in the database for which there are no statistics or only stale statistics. The statistics gathered by this task are used by the SQL query optimizer to improve the performance of SQL execution. Optimizer Statistics Advisor—Analyzes how statistics are being gathered and suggests changes that can be made to fine tune statistics collection. Automatic Segment Advisor— Identifies segments that have space available for reclamation, and makes recommendations on how to defragment those segments. You can also run the Segment Advisor manually to obtain more up-to-the-minute recommendations or to obtain recommendations on segments that the Automatic Segment Advisor did not examine for possible space reclamation. Automatic SQL Tuning Advisor—Examines the performance of high-load SQL statements, and makes recommendations on how to tune those statements. You can configure this advisor to automatically implement SQL profile recommendations.
  25. Now we create a new Administrator-managed service named “svc_pdbtest” that has instance O121RAC2 as preferred and O121RAC1 as available
  26. In Oracle Database 12c Release 1 (12.1.01), a centralized Automatic Workload Repository (AWR) stores the performance data related to CDB and PDBs in a multitenant environment. You can take an AWR snapshot only at a CDB-level, that is, on the CDB root. This AWR snapshot is for the whole database system, that is, it contains the statistical information about the CDB as well as all the PDBs in a multitenant environment. +++++++ In Oracle Database 12c Release 2 (12.2), CDB root as well as individual PDBs store, view, and manage AWR data. You can take an AWR snapshot at a CDB-level, that is, on the CDB root, as well as at a PDB-level, that is, on the individual PDBs.
  27. In Oracle Database 12c Release 1 (12.1.01), a centralized Automatic Workload Repository (AWR) stores the performance data related to CDB and PDBs in a multitenant environment. You can take an AWR snapshot only at a CDB-level, that is, on the CDB root. This AWR snapshot is for the whole database system, that is, it contains the statistical information about the CDB as well as all the PDBs in a multitenant environment. +++++++ In Oracle Database 12c Release 2 (12.2), CDB root as well as individual PDBs store, view, and manage AWR data. You can take an AWR snapshot at a CDB-level, that is, on the CDB root, as well as at a PDB-level, that is, on the individual PDBs.
  28. Here you can see the implications of the way AWR works in Oracle 12cR1 AWR Management Operations only at CDB level AWR data retention Snapshot schedule Taking manual snapshots Purging snapshot data
  29. In Oracle Database 12c Release 1 (12.1.01), a centralized Automatic Workload Repository (AWR) stores the performance data related to CDB and PDBs in a multitenant environment. You can take an AWR snapshot only at a CDB-level, that is, on the CDB root. This AWR snapshot is for the whole database system, that is, it contains the statistical information about the CDB as well as all the PDBs in a multitenant environment. +++++++ In Oracle Database 12c Release 2 (12.2), CDB root as well as individual PDBs store, view, and manage AWR data. You can take an AWR snapshot at a CDB-level, that is, on the CDB root, as well as at a PDB-level, that is, on the individual PDBs.
  30. The default value of AWR_PDB_AUTOFLUSH_ENABLED is false. Thus, by default, automatic AWR snapshots are disabled for all the PDBs in a CDB. When you change the value of AWR_PDB_AUTOFLUSH_ENABLED in the CDB root, the new value takes effect in all the PDBs in the CDB. Therefore, if you change the value of AWR_PDB_AUTOFLUSH_ENABLED in the CDB root to true, the value of AWR_PDB_AUTOFLUSH_ENABLED is also changed to true in all of the PDBs, so that automatic AWR snapshots are enabled for all the PDBs. You can also change the value of AWR_PDB_AUTOFLUSH_ENABLED in any of the individual PDBs in a CDB, and the value that is set for each individual PDB will be honored. This enables you to enable or disable automatic AWR snapshots for individual PDBs. When a new PDB is created, or a PDB from a previous database release is upgraded to the current database release, automatic AWR snapshots are enabled or disabled for the PDB based on the current value of AWR_PDB_AUTOFLUSH_ENABLED in the root.
  31. The default value of AWR_PDB_AUTOFLUSH_ENABLED is false. Thus, by default, automatic AWR snapshots are disabled for all the PDBs in a CDB. When you change the value of AWR_PDB_AUTOFLUSH_ENABLED in the CDB root, the new value takes effect in all the PDBs in the CDB. Therefore, if you change the value of AWR_PDB_AUTOFLUSH_ENABLED in the CDB root to true, the value of AWR_PDB_AUTOFLUSH_ENABLED is also changed to true in all of the PDBs, so that automatic AWR snapshots are enabled for all the PDBs. You can also change the value of AWR_PDB_AUTOFLUSH_ENABLED in any of the individual PDBs in a CDB, and the value that is set for each individual PDB will be honored. This enables you to enable or disable automatic AWR snapshots for individual PDBs. When a new PDB is created, or a PDB from a previous database release is upgraded to the current database release, automatic AWR snapshots are enabled or disabled for the PDB based on the current value of AWR_PDB_AUTOFLUSH_ENABLED in the root.