Performance Testing Progress and Oracle Environment Variables and Installation DLC Progress Oracle /usr/dlc102B ORACLE_HOME /app/oracle/product/11.2.0 ORACLE_BASE /app/oracle inventory.xml PATH $DLC/bin PATH $ORACLE_HOME/bin To install proinst To install runInstaller Location /etc/oraInst.loc PUG Challenge Americas 2012 Performance Testing Progress and Oracle Physical Structure (data files) Database File sports.db Control File(s) control01.ctl System Area sports.d1 System Tablespace system.dbf D Files area.d Datafiles tablespace.dbf Before-Image File + After-Image File sports.b1 + sports.a1 Undo tablespace + Redo Log undotbs.dbf + redo01.log Copy of AfterImage File sports.date _time_etc Archive Log sports.date_time_ etc Structure file sports.st Backup of control file to trace file Log File sports.lg Alert Log alert_sports.log Parameter File sports.pf pfile (or spfile) initsports.ora PUG Challenge Americas 2012 Performance Testing Progress and Oracle Physical Structure sports.db sports.d1 control01.ctl cre_controlfile.sql sports.lic sports.b1 sports.st redo01.log redo02.log redo03.log sports_7.d1 sports_8.d1 sports_9.d1 sports.lg system01.dbf sysaux01.dbf temp01.dbf undotbs01.dbf sports.pf ORACLE_HOME users01.dbf PUG Challenge Americas 2012 Performance Testing Progress and Oracle .srt, .DBI Logical Structure Area Tablespace System Tablespace Area consists of Objects are objects Tables or Indexes Tablespace consists of segments Segments: Tables, Indexes, Undo, etc Each Object has Clusters size one or more could be 8,64 or Clusters 512 blocks Each Segment has one or more Extents An extent is a series of blocks that are consecutively numbered within a datafile Clusters consist of blocks Schema Area blocks 1,2,4 or 8K Extents consist of blocks PUG Challenge Americas 2012 Performance Testing Progress and Oracle blocks 2,4,8,16,32 or 64K Background Processes Asynchronous Page Writer APW Database Writer DBWn Before/After Image Writer BIW, AIW Log Writer LGWR AI Management AIMGT Archive Process ARCn Watch Dog WDOG Process Monitor PMON Database Broker _mproserv System Monitor SMON Checkpoint process CKPT Many other …. 20 at least Login Broker _mproserv Listener PUG Challenge Americas 2012 Performance Testing Progress and Oracle lsnrctl Connecting to a database Client Server -db db_name -H host -S service Shared memory -db /full_path/db-name Listener Login Broker lsnrctl [start/stop/status] N/A $ORACLE_HOME/bin PUG Challenge Americas 2012 Performance Testing Progress and Oracle Connecting to a database -H host –S service1 SID Host:port:SID -H host –S service2 S SID2 Host:port:SID2 Listener Port 1521 PUG Challenge Americas 2012 Performance Testing Progress and Oracle Meta-schema and VST Progress Meta-schema tables -80 < _file-number < 0 Progress VST _file-number < -16384 Progress Table Field Oracle View Column _Area _Area-name DBA_TABLESPACES TABLESPACE_NAME _AreaExtent _Extent-Path DBA_DATA_FILES FILE_NAME _StorageObject _Object-type (1,2 or 3) DBA_OBJECTS object_type (38 types) _File _File-name DBA_TABLES TABLE_NAME _Field _Field-name DBA_TAB_COLUMNS COLUMN_NAME _Index _Index-name DBA_INDEXES INDEX_NAME _Sequence _Seq-name DBA_SEQUENCES SEQUENCE_NAME PUG Challenge Americas 2012 Performance Testing Progress and Oracle Meta-schema and VST Virtual System Tables V$ (Vee dollar) Views _Connect v$session, v$process _DbStatus v$instance, v$sysstat _Trans v$transaction _Lock v$lock _Latch v$latch _AreaStatus v$tablespace _Filelist v$datafile _Startup (some) v$parameter PUG Challenge Americas 2012 Performance Testing Progress and Oracle Data Types character format "x(100)" varchar2 varchar2(100) decimal format ">>>>9.99" number number(7,2) integer format ">>>>9" number number(5) date format 99/99/9999 date 'MMDDYY HH24:MI:SS' logical format yes/no N/A N/A datetime HH:MM:SS.SSS+HH:MM timestamp 'HH24:MI:SS.FF5' int64 format ">>>>9" number number(38) rowid rowid recid N/A blob, clob,raw blob, clob,raw PUG Challenge Americas 2012 Performance Testing Progress and Oracle N/A 10 -5 Create Database PUG Challenge Americas 2012 Performance Testing Progress and Oracle PUG Challenge Americas 2012 Performance Testing Progress and Oracle PUG Challenge Americas 2012 Performance Testing Progress and Oracle Create Database • prodb mydb • procopy empty8 mydb • A set of .sql scripts • create database mydb; • Min size 5 MB • Min size 512 MB • Min memory 160KB • Min memory 512MB • Time to create 1 second • Time from 20 min to 1.5 hr PUG Challenge Americas 2012 Performance Testing Progress and Oracle Shutdown • Unconditional Shutdown • Emergency Shutdown • • • • Shutdown Normal Shutdown Transactional Shutdown Immediate Shutdown Abort Progress 10.2B -shutdownTimeout [ immed, 10m, 1h, maximum ] PUG Challenge Americas 2012 Performance Testing Progress and Oracle Startup Shared Memory Background Proc Closed Prorest Closed init*.ora Nomount mode Restore .ctl Mount mode Open Open PUG Challenge Americas 2012 Performance Testing Progress and Oracle Backup Progress backup – simple Oracle RMAN – More complicated probkup db_name file_name Progress and Oracle : Online and Offline (Hot and Cold) Progress and Oracle : Complete and Incremental Oracle: could be Full and Partial PUG Challenge Americas 2012 Performance Testing Progress and Oracle Compressed Backup 700 GB Progress DB makes about 600 GB probkup 1.4 TB Oracle DB makes either 1.2 TB regular backup or 250 GB RMAN compressed backup (BZIP2 is default). PUG Challenge Americas 2012 Performance Testing Progress and Oracle Dump and Load Dictionary Dump and Load in ASCII format (.d) or 4GL export/import SQL select/insert “SQL Loader” or External Tables 10g Binary Dump (proutil –C dump) Oracle export (exp tables=tbl_name) Binary Load (proutil –C load) Oracle import (imp file=file_name) Binary Dump multithreaded V10 Oracle Data Pump Export (expdp) 10g Oracle Data Pump Import (impdp) 10g Dump/Load .df Export/Import (exp full=y rows=n) PUG Challenge Americas 2012 Performance Testing Progress and Oracle ATM Database Tests Hardware: IBM POWER 6 p570, RAM 24GB, 2 CPUs 4704 MHz Software: AIX 6.1, OpenEdge 11.0, Oracle 11gR2 Database: ATM database = 7GB Tables Branches Tellers Accounts # records 5,000 50,000 50,000,000 PUG Challenge Americas 2012 Performance Testing Progress and Oracle Database Size Progress DB/area size 7,442,137,088 Oracle DB/tablespace size 7,688,953,856 Oracle db appear to be 3% more in bytes PUG Challenge Americas 2012 Performance Testing Progress and Oracle Backup Size and Speed Progress time 94 sec size 7GB Oracle 140 sec 7.8GB Oracle ( compressed ) 240 seconds 735MB PUG Challenge Americas 2012 Performance Testing Progress and Oracle ASCII Dump (in seconds) # records 10,000 100,000 1,000,000 8,000,000 Progress 0.31 1.56 15 115 Oracle 0.43 3.32 32 259 for each account where account.id < "condition“ no-lock: export account. select * from account where account.id < "condition" PUG Challenge Americas 2012 Performance Testing Progress and Oracle ASCII Load (in seconds) # records 100,000 1,000,000 10,000,000 Progress 3.75 53 413 Oracle 0.8 12 139 repeat: create account. import account. insert into account select * from stg_account; -- External table PUG Challenge Americas 2012 Performance Testing Progress and Oracle Binary Dump (in seconds) # records 50,000,000 Progress 80.38 Oracle 55.46 proutil atm -C dump PUB.account /dir -index 0 –RO expdp user/passwd TABLES=ACCOUNT directory=DATA_DIR dumpfile=expdp.dmp parallel=2 -- Data Pump PUG Challenge Americas 2012 Performance Testing Progress and Oracle Binary Load with integrity # records 50,000,000 Progress 920.38 Oracle 60.43 proutil atm -C load account.bd -B 50000 -TB 31 -TM 32 -T /tmp impdp user/passwd directory=DATA_DIR dumpfile=expdp.dmp -- Data Pump PUG Challenge Americas 2012 Performance Testing Progress and Oracle Binary Load no integrity (-i) # records 50,000,000 Progress 216.28 Oracle 60.43 proutil atm -C load account.bd -i -B 50000 -TB 31 -TM 32 -T /tmp impdp user/passwd directory=DATA_DIR dumpfile=expdp.dmp -- Data Pump PUG Challenge Americas 2012 Performance Testing Progress and Oracle Binary Load Empty Empty Empty RM Block Free RM Block Full RM Block HWM PUG Challenge Americas 2012 Performance Testing Progress and Oracle Binary Load Empty Empty Empty RM Block Full RM Block Full RM Block HWM PUG Challenge Americas 2012 Performance Testing Progress and Oracle Binary Load Empty Empty Full RM Block Full RM Block Full RM Block HWM PUG Challenge Americas 2012 Performance Testing Progress and Oracle Oracle Load HWM Empty Empty Empty PUG Challenge Americas 2012 Performance Testing Progress and Oracle Oracle Load HWM Full Full Full PUG Challenge Americas 2012 Performance Testing Progress and Oracle Oracle Load HWM Full Full Full PUG Challenge Americas 2012 Performance Testing Progress and Oracle Build a brand new index # records 50,000,000 Progress 148.96 Oracle 118.31 proutil atm -C idxbuild area "Account Index" -thread 1 -threadnum 2 -TF 80 -TB 64 -TM 32 -B 256 -T /tmp -SG 64 CREATE UNIQUE INDEX account_pk ON account (id); PUG Challenge Americas 2012 Performance Testing Progress and Oracle Rebuild existing index # records 50,000,000 Progress 153.95 Oracle 81.88 proutil atm -C idxbuild area "Account Index" -thread 1 -threadnum 2 -TF 80 -TB 64 -TM 32 -B 256 -T /tmp -SG 64 ALTER INDEX account_pk REBUILD PARALLEL 2; PUG Challenge Americas 2012 Performance Testing Progress and Oracle ATM Test PUG Challenge Americas 2012 Performance Testing Progress and Oracle atm1.sql PUG Challenge Americas 2012 Performance Testing Progress and Oracle Progress ATM Results All tests run for 300 seconds CL Trans 1 TPS Conc AvgR MinR 50%R 90%R 95%R MaxR Prog 329961 1100.0 0.8 0.00 0.0 0.0 0.0 0.0 99.1 atm1.p 5 341090 1137.0 3.9 0.00 0.0 0.0 0.0 0.0 93.0 atm1.p 15 358355 1194.5 13.9 0.00 0.0 0.0 0.0 0.0 95.0 atm1.p 25 360396 1201.3 22.4 0.02 0.0 0.0 0.0 0.0 97.6 atm1.p 50 367093 1223.6 49.8 0.04 0.0 0.0 0.0 0.1 88.4 atm1.p 100 348467 1161.6 99.6 0.09 0.0 0.0 0.0 0.2 88.2 atm1.p 250 341653 1138.8 248.9 0.23 0.0 0.0 0.1 0.6 98.6 atm1.p 500 315142 1050.5 495.6 0.47 0.0 0.0 0.3 1.2 82.8 atm1.p 1000 310793 1036.0 872.2 0.95 0.0 0.0 1.0 2.3 117.6 atm1.p PUG Challenge Americas 2012 Performance Testing Progress and Oracle Oracle ATM Results All tests run for 300 seconds CL Time Trans TPS Conc AvgR 1 300 35589 118.6 1.0 0.01 atm1.sql 5 300 160492 535.0 4.8 0.01 atm1.sql 15 300 480898 1603.0 14.4 0.01 atm1.sql 25 300 803263 2677.5 23.7 0.01 atm1.sql 50 300 953962 3179.9 47.4 0.01 atm1.sql 100 300 1023948 3413.2 69.4 0.01 atm1.sql 250 300 1063454 3544.9 226.4 0.02 atm1.sql 500 300 1092404 3641.4 472.3 0.06 atm1.sql 1000 300 1113454 3711.5 861.3 0.13 atm1.sql PUG Challenge Americas 2012 Performance Testing Progress and Oracle Prog PUG Challenge Americas 2012 Performance Testing Progress and Oracle Big box Test IBM Power 7 Model p750 16 3.4 GHz CPUs x 4 SMTs RAM 124 GB SAN V7000 PUG Challenge Americas 2012 Performance Testing Progress and Oracle PUG Challenge Americas 2012 Performance Testing Progress and Oracle Startup parameters Type: DBS and CC Only DBS Any -pf file anywhere init*ora In $ORACLE_HOME/dbs Promon R&D / 1 / 12 or _Startup select * from V$PARAMETER PUG Challenge Americas 2012 Performance Testing Progress and Oracle PUG Challenge Americas 2012 Performance Testing Progress and Oracle OEM parameters PUG Challenge Americas 2012 Performance Testing Progress and Oracle Startup parameters -db db_name -B -bibufs -n -spin memory_target log_buffer processes spin_count -L -Ma 1 -Ma 2 or more dml_locks Dedicated connections Shared connections -cp* (I18N) NLS* National Language Support PUG Challenge Americas 2012 Performance Testing Progress and Oracle Questions Web page Email www.proora.com d_levin@hotmail.com PUG Challenge Americas 2012 Performance Testing Progress and Oracle