Inderpal S. JohalInderpal S. JohalInderpal S. JohalInderpal S. JohalInderpal S. JohalInderpal S. JohalInderpal S. JohalInderpal S. JohalPrincipal Consultant
ORACLE 11g Database ReplayORACLE 11g Database ReplayORACLE 11g Database ReplayORACLE 11g Database ReplayOctober 2nd, 2007
2Oracle 11g Database ReplayOracle 11g Database Replay
AgendaAgendaAgendaAgendaAgendaAgendaAgendaAgenda
� Why DB Replay
� DB Replay Overview
� System Architecture
� Supported Workloads
� Capture the Workload
� Pre-Processing the Capture Workload
� Replay the Workload
� Analyze the Data
� Replay Setup using Enterprise Manager
� Replay Setup using API’s
� Q&A
3Oracle 11g Database ReplayOracle 11g Database Replay
Why Database ReplayWhy Database ReplayWhy Database ReplayWhy Database ReplayWhy Database ReplayWhy Database ReplayWhy Database ReplayWhy Database Replay
� System changes
� Need Hardware Upgrade like CPU, Memory� Need Database/Operating System Upgrades� Storage Changes like filesystem to ASM or vice-versa� Microsoft to Linux or OS migrations
� Configuration changes
� Single Instance to Multi-node RAC� Schema/Parameters� Patches
� Identify, analyze and fix potential instabilities before making changes to production
� Save Time and Money
� More thorough testing which is missed in most of the testing
� Provide Real world testing without real-life testers
4Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay OverviewDB Replay OverviewDB Replay OverviewDB Replay OverviewDB Replay OverviewDB Replay OverviewDB Replay OverviewDB Replay Overview� Recreate actual production database workload in QA
environment
� DB Replay components or Phases
- Backup the Production/Source Database
-> User RMAN or other Backup Approach
- Configure EM Console as it is recommended option
-> emca -config dbcontrol db -repos recreate
- Capturing Phase
-> Start the Capture process
-> Apply/start the Load/Apps
-> Stop the Capture Process
- Move the Captured Workload on OS to Test Server
- Pre-processing Phase
- Restore the backup on Test Database
- Replay Phase
- Analysis
-> Error or Data Divergence
5Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture ………………………………………………………………........Contd.Contd.
Prerequisites for Capturing Database Workload
� Backup the Database-> RMAN-> Imp/exp-> Snapshot Standby-> Point-in-time recovery using a target SCN
� Allocate physical space for Recording
$ mkdir -p /home/capture_dir
SQL> CREATE DIRECTORY “captdir” AS ‘/home/capture_dir’
-> Make sure you have enough space to store the Captured Workload files
� Configure Enterprise Manager DB Console
Points of Consideration before Capturing Database Workload
� Disk Storage based on time of Recoding� Performance Overhead� Memory Overhead : 64K per session
6Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture ………………………………………………………………........Contd.Contd.
Capture the Workload in Production
� Start the Capturing process
-> Using Enterprise Manager
-> Using APIs
DBMS_WORKLOAD_CAPTURE.START_CAPTURE
� Start the Application to apply real Load on the System
� Stop the Capturing process
-> Using Enterprise Manager
-> Using APIs
DBMS_WORKLOAD_CAPTURE.FINISH_CAPTURE
� Transfer the Data for processing to test system
7Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture ………………………………………………………………........Contd.Contd.
8Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture Flow……………………........Contd.Contd.
Capture file Location
$ cd /home/c_dir
$ ls –lr
Total 0
Capture file LocationCapture file Location
$ cd /home/c_dir
$ ls –lr
Total 0
$ mkdir -p /home/c_dir
SQL> create directory “cdir” AS ‘/home/c_dir
$ mkdir -p /home/c_dir
SQL> create directory “cdir” AS ‘/home/c_dir
Shadow Process
Client Client
Shadow Process
Client
……….
Shadow Process
Background Process/Jobs
Shadow ProcessShadow ProcessShadow Process…Shadow Process
Shadow ProcessShadow Process
Shadow ProcessShadow Process
Shadow ProcessShadow Process
……Shadow ProcessShadow Process
11g RDBMS built-in Recording Infrastructure
11g RDBMS built-in Recording Infrastructure
9Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture ………………………………………………………………........Contd.Contd.
What is supported for Workload
� All DDL,DML and PL/SQL statements along with binds
� Lobs
� Login and Logoffs
� Local Transactions
What is supported for Workload
� Direct Path Load using Sql*Loader
� Export and Import
� Oracle Streams
� Flashback
� Distributed Transactions( these transactions are replayed as Local transaction)
10Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload Capture--------EM..EM..EM..EM..EM..EM..EM..EM..……………………........Contd.Contd.
11Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload Capture--------EMEMEMEMEMEMEMEM……………………........................Contd.Contd.
12Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload CaptureWorkload Capture--------EMEMEMEMEMEMEMEM…………………………………………........Contd.Contd.
SGA
13Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture ––––––––APIAPIAPIAPIAPIAPIAPIAPI……………………........Contd.Contd.
14Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture Workload Capture ………………………………………………………………........Contd.Contd.
15Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Workload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture FlowWorkload Capture Flow……………………........Contd.Contd.
Client
Middle
TierMiddle
Tier
……….
Client Client……….
STORAGE
PRE- PROCESSING the
WORKLOAD
STORAGE
16Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– PreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessing WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload
� It transforms the captured workload data into Replay files
� It will create all necessary metadata for Replay
� Only required once for every captured workload
� This is resource intensive process and so avoid it in production system
� It should be done on system running same DB version as of Replay system
� Make sure Files are moved to the Instance directory where it is processed.
� For RAC – Move captured workload from all instances to single place for preprocessing
� Use single instance for Preprocessing in RAC environment
� It is recommended to use Replay system for preProcessingelse you need to move all processed files to Replay system
� EM is recommended tool for preProcessing or use APIs
17Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– PreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessing Workload.Workload.Workload.Workload.Workload.Workload.Workload.Workload.……………………........Contd.Contd.
18Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay ––––––––PreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessing Workload.Workload.Workload.Workload.Workload.Workload.Workload.Workload.……………………........Contd.Contd.
19Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– PreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessing WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload……………………................Contd.Contd.
20Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– PreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessing WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload……………………................Contd.Contd.
21Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay PhasesDB Replay PhasesDB Replay PhasesDB Replay PhasesDB Replay PhasesDB Replay PhasesDB Replay PhasesDB Replay Phases
� DB Replay components or Phases
- Backup the Production/Source Database
- Configure EM Console as it is recommended option
- Capturing Phase
- Move the Captured Workload on OS to Test Server
- Pre-processing Phase
- Restore the backup on Test Database
- Replay Phase
- Analysis
22Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload� When the captured workload is processed, it can be
replayed in any database running the same or higher Oracle version
Replay Process Steps
� Set up the Test System
� Restore the Database taken before the start of Capture process
� Reset the System time as it was at the start of Capture process
� Perform the change that prompted the replay usage
� Upgrade OS or Database
� Apply Patches
� Make OS change
� Move to RAC or vice-versa
� Replay the Processed Capture Workload
� Using EM / APIs
23Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload
STORAGE
Shadow ProcessShadow ProcessShadow Process…Shadow Process
Shadow ProcessShadow Process
Shadow ProcessShadow Process
Shadow ProcessShadow Process
……Shadow ProcessShadow Process
Restore Copy of Production DatabaseSet the System Time
Restore Copy of Production DatabaseSet the System Time
Shadow ProcessShadow ProcessShadow Process
Client……….
Shadow ProcessShadow ProcessShadow Process
Client
Shadow Process
Client
Shadow ProcessShadow Process
wrc system/welcome1 mode=calibrate replaydir=/home/replay
mode=list_hosts
24Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------EM..EM..EM..EM..EM..EM..EM..EM..……………………........Contd.Contd.
25Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------EMEMEMEMEMEMEMEM……………………................ContdContd
26Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------EMEMEMEMEMEMEMEM……………………................ContdContd
27Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------EMEMEMEMEMEMEMEM……………………................ContdContd
28Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------EMEMEMEMEMEMEMEM…………………………………………........Contd.Contd.
29Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------EMEMEMEMEMEMEMEM…………………………………………........Contd.Contd.
30Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– ReplayReplayReplayReplayReplayReplayReplayReplay WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload--------APIAPIAPIAPIAPIAPIAPIAPI
31Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– PreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessingPreProcessing WorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkloadWorkload……………………................Contd.Contd.
32Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Analyze WorkloadAnalyze WorkloadAnalyze WorkloadAnalyze WorkloadAnalyze WorkloadAnalyze WorkloadAnalyze WorkloadAnalyze Workload--------EM..EM..EM..EM..EM..EM..EM..EM..……………………........Contd.Contd.
33Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload ………………………………………………………………................Contd.Contd.
34Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload ………………………………………………………………................Contd.Contd.
35Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload Analyze Workload -------- ReportReportReportReportReportReportReportReport
36Oracle 11g Database ReplayOracle 11g Database Replay
DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay DB Replay –––––––– Analyze Workload ReportAnalyze Workload ReportAnalyze Workload ReportAnalyze Workload ReportAnalyze Workload ReportAnalyze Workload ReportAnalyze Workload ReportAnalyze Workload Report
Q U E S T I O N S
A N S W E R S
38Oracle 11g Database ReplayOracle 11g Database Replay
THANKSTHANKSTHANKSTHANKSTHANKSTHANKSTHANKSTHANKSindy.johal@[email protected]@[email protected]@[email protected]@[email protected]
Top Related