35
Performance Testing and OBIEE Robin Moffatt, WM Morrisons plc http://rnm1978.wordpress.com

Robin Moffatt, WM Morrisons plc

Embed Size (px)

Citation preview

Page 1: Robin Moffatt, WM Morrisons plc

Performance Testing and OBIEE

Robin Moffatt, WM Morrisons plc http://rnm1978.wordpress.com

Page 2: Robin Moffatt, WM Morrisons plc

Introduction

Oracle BI specialist at Morrisons plc

Big IT development programme at its early stages implementing OBIEE, OBIA, ORDM, all on Oracle 11g & HP-UX

Page 3: Robin Moffatt, WM Morrisons plc

The aim of this presentation

A Performance Tuning Methodology

OBIEE techie stuff

Learn from my mistakes!

Page 4: Robin Moffatt, WM Morrisons plc

What is performance testing all about?

Response times Report ETL batch OLTP transaction

System impact Resource usage Scalability

Page 5: Robin Moffatt, WM Morrisons plc

Why performance test?(Isn’t testing just for wimps?)

Check that your system performs Are the users going to be happy?

Baseline How fast is fast? ▪ How slow is slow?

Validate system design Do it right, first time

Capacity planning

Page 6: Robin Moffatt, WM Morrisons plc

Why performance test?

It’s never too late “You’ll never catch all your

problems in pre-production testing. That’s why you need a reliable and efficient method for solving the problems that leak through your pre-production testing processes.”

— Cary Millsap - Thinking Clearly About Performance

Page 7: Robin Moffatt, WM Morrisons plc

Why performance test?

Because it makes you better at your job

“At the very least, your performance test plan will make you a more competent diagnostician (and clearer thinker) when it comes time to fix the performance problems that will inevitably occur during production operation.”

— Cary Millsap - Thinking Clearly About Performance

Page 8: Robin Moffatt, WM Morrisons plc

Performance Testing – What & Why

Quantifying response times System impact

User expectations Problem diagnosis Design validation

Page 9: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Timebox!

Performance Testing - How?

Evaluate design / config options

Do it rightDon’t “fudge it”

Do more testing

Iterative

approach

Be Methodical

Redefine test Do more

testing

Page 10: Robin Moffatt, WM Morrisons plc

Define & build your test

Define – what are you going to test• Aim of the test• Scope• Assumptions• Specifics• Data, environment, etc

Build – how are you going to test it OBIEE specific

Define

Measure

Analyse

Review

Implement

•E.g. :• Check that the system

performs• Baseline performance• Prove system capacity• Validate system design

Page 11: Robin Moffatt, WM Morrisons plc

Consider your test scopeMore components = more complex = more variables =

larger margin of errorFewer components = easier to manage = more precise =

more efficient

Define

Measure

Analyse

Review

Implement

Page 12: Robin Moffatt, WM Morrisons plc

OBIEE stack

Database

Presentation Services

BI Server

Report / Dashboard

Logical SQL

Physical SQL

statement(s)

Data set(s)

Data set

Rendered report

Excludes App/Web server & presentation services plug-in

Define

Measure

Analyse

Review

Implement

Page 13: Robin Moffatt, WM Morrisons plc

OBIEE testing options

Database

Presentation Services

BI Server

nqcmd

SQL Client

LSQL

Physical

SQL

Data set(s)

Data set

Rendered

report

LSQL

PhysicalSQL

User & Stopwatc

h

Load Testing tool(eg.

LoadRunner, OATS)

Define

Measure

Analyse

Review

Implement

Report /

Dashboard

Page 14: Robin Moffatt, WM Morrisons plc

OBIEE testing options

Database

BI Server

nqcmd

Physical

SQL

Data set(s)

LSQL

Define

Measure

Analyse

Review

Implement

Page 15: Robin Moffatt, WM Morrisons plc

nqcmd

Define

Measure

Analyse

Review

Implement

Usage Tracking or

NQQuery.log

Test

sc

ript

BI Serve

r

Data

nqcmd

Logical SQL

Logical SQL Logical

SQL

Page 16: Robin Moffatt, WM Morrisons plc

Mast

er

test

scr

ipt

nqcmd

Define

Measure

Analyse

Review

Implement

Test

sc

ript

BI Serve

r

Data

nqcmd

Logical SQL

Test

sc

ript nqcmd

Test

sc

ript nqcmd

Test

sc

ript nqcmd

Page 17: Robin Moffatt, WM Morrisons plc

LoadRunnera.k.a. HP Performance Centre

Simulates user interaction – HTTP traffic

Powerful, but can be difficult to set up Ajax complicates things

Do you really need to use it?

Tools Fiddler2 FireBug

Reference: My Oracle Support – Doc ID 496417.1 http://rnm1978.wordpress.com/category/loadrunner

Define

Measure

Analyse

Review

Implement

Page 18: Robin Moffatt, WM Morrisons plc

Defining your test - summary

Be very clear what the aim of your test is

You probably need to define multiple tests

Different points on the OBIEE stack to interface Pick the most appropriate one

Write everything down!

Define

Measure

Analyse

Review

Implement

Page 19: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Page 20: Robin Moffatt, WM Morrisons plc

OBIEE measuring & monitoring

Database

Presentation Services

BI Server

Presentation Services plug-

in

App Server

Web Server

Apache log

OAS log

Analytics log

sawserver.log

NQServer.log

NQQuery.log

systems management

Enterprise Manager

BI Management Pack

Usage Trackin

g

PerfMon(windows

only)

jConsole etc

Presentation

services

Enterprise Manager

ASH, AWR, SQL

Monitor

Define

Measure

Analyse

Review

Implement

Server metricse.g. : IO, CPU,

Memory

PerfMon (Windows)

Oracle OS Watcher (unix)

Enterprise Manager (Oracle)

Page 21: Robin Moffatt, WM Morrisons plc

Oracle SQL Monitor

Define

Measure

Analyse

Review

Implement

Page 22: Robin Moffatt, WM Morrisons plc

Measure - summary

Lots of different ways to measure

Build measurement into your test plan Automate where possible▪ Easier▪ Less error

Define

Measure

Analyse

Review

Implement

Page 23: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Page 24: Robin Moffatt, WM Morrisons plc

Analysing the data

Define

Measure

Analyse

Review

Implement

Page 25: Robin Moffatt, WM Morrisons plc

Analysing the data

Define

Measure

Analyse

Review

Implement

Page 26: Robin Moffatt, WM Morrisons plc

Analysing the data

Response time

1

1

9

3

2

10

2

1

2

3

Response time

1

1

1

2

2

2

3

3

9

10

Average (mean)

3.4

50th percentile (Median)

290th percentile

9.1

Define

Measure

Analyse

Review

Implement

Page 27: Robin Moffatt, WM Morrisons plc

Recording data about the test

Define

Measure

Analyse

Review

Implement

Dashboard

Requests

Logical SQL

Physical SQL

Execution plan

Page 28: Robin Moffatt, WM Morrisons plc

Extending Usage Tracking

S_NQ_ACCTSTART_TS ROW_COUNT TOTAL_TIME_SEC NUM_DB_QUERY QUERY_TEXT QUERY_SRC_CD SAW_SRC_PATH SAW_DASHBOARD

OBIEE_REPLAY_STATEMENTSqt_ora_hashquery_textsaw_pathdashboard

OBIEE_REPLAY_STATStestidtestenvqt_ora_hashstart_ts response_time row_count db_query_cnt

Define

Measure

Analyse

Review

Implement

Page 29: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Analyse

Evaluate design / config options

Do it rightDon’t “fudge it”

Iterative

approach

Timebox!

Page 30: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Review

Iterative

approach

Redefine test

Continue testing

Implement

Page 31: Robin Moffatt, WM Morrisons plc

Review

Define

Measure

Analyse

Review

Implement

Page 32: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Implement

Iterative

approach

Page 33: Robin Moffatt, WM Morrisons plc

Lessons Learnt

You won’t get your testing right first time There’s no shame in that Don’t cook the books ▪ Better to redefine your test than invalidate its results

Stick to the methodology Don’t move the goalposts Very tempting to pick off the “low-hanging fruit” ▪ If you do, make sure you don’t get indigestion…

Timebox

Test your implementation!

Page 34: Robin Moffatt, WM Morrisons plc

Define

Measure

Analyse

Review

Implement

Performance Testing OBIEE

Evaluate design / config options

Do it rightDon’t “fudge it”

Do more testing

Iterative

approach

Be Methodical

Redefine test Do more

testing

[email protected] · http://rnm1978.wordpress.com · http://twitter.com/rnm1978

Page 35: Robin Moffatt, WM Morrisons plc

#EOF