0% found this document useful (0 votes)
149 views33 pages

OBIEE Performance

OBIEE Performance
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
149 views33 pages

OBIEE Performance

OBIEE Performance
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

No Silver Bullets : OBIEE Performance

in the Real World


Robin Moffatt, Principal Consultant
May 2014
T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or
+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

The Requirement

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

The Problem
Lots of moving parts and complexity

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

Overall solution crosses disciplines and job roles


OBIEE developer
Database developer
DBA
Server Admin
Network
SAN
LDAP
etc

E : [email protected]
W : www.rittmanmead.com

The Additional Problem

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

The Only Answer

Evidence-based DESIGN and DIAGNOSTICS

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Performance Beyond the Best Practices

Tear down the reliance on


Best Practice, but with a
viable, better, alternative
instead.

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Two-pronged approach
Do It Right, First Time
What Makes A Performant OBIEE System?
!

If Its Not Done Right, Know How To Figure Out What Is Broke
Practical elements of diagnosing the causes of performance issues
Methodical analysis - nose to tail

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Is your problem Performance or Capacity?

Response time

Performance: Response time is slow for one user


Capacity: Response time degrades as user concurrency increases

Number of concurrent users

Adding Capacity alone will not fix your performance problems


Performance improvements can alleviate Capacity problems

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Nose to Tail Diagnostics


Request
DWH
Managed Server
Web Browser

BI Plug-in

Presentation
Services

[ ... ]

BI Server

WebLogic Server

OBIEE system components

Managed Server
Web Browser

BI Plug-in

Network

User

Network

[ ... ]
Data Source(s)
DWH
Presentation
Services

JavaHost

BI Server
[ ... ]

[ ... ]

Response
Not all components listed, eg cluster controller

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Time Profile
To understand why is it slow, we first must understand where is it slow
!

Approach championed by Cary Millsap / Method-R


Thinking Clearly About Performance (2010)

Performance improvement is proportional to how much a


program uses the thing you improved.
Amdahls Law

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

End-user reports a response time of 40 seconds.


How can we make it faster?

DB Query 1
25 seconds

Where did the time get spent?


Data
Processing
Page Generation

10 seconds

5 seconds

DB Query 2
5 seconds

Component
User

WebLogic Server

OBIEE system components

Managed Server
Web Browser

BI Plug-in

Presentation
Services

BI Server

Response

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Data Source(s)
DWH

DWH

Time, seconds

Time Profile in Action

Time Profile in Action

DB Query 1

DB Query 2
Data Processing

Page Generation

Step

Action

Response
Time (s)

Physical SQL 1 execute on DB

25.00

62.5

Physical SQL 2 execute on DB

[5.00]

BI Server combines dataset from DB results

10.00

25.0

Presentation Services generates page

5.00

12.5

Time profile shows clearly :


1.Improve performance of Query 1
2.Push work into single query

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Total 40.00

100.0

Deep Dive into BI Server Time from nqquery.log


Elapsed

Logical Query Summary Stats: Elapsed time e

Response

Logical Query Summary Stats: [...] Response time r


Physical

DB Connect

Compilation

Physical Query 1

Logical Query Summary


Stats: [...] Compilation
time c (seconds)

Physical query response


time p1 (seconds)
Physical Query x

BI Server
processing
(federation,
calculation,
aggregation)

Send to client, wait for


acknowledgement

Eg. Presentation Services


generating pivot tables,
table scrolling/paging, etc.

Physical query response


time px (seconds)
Physical Query Summary Stats:
[...] DB-connect time d (seconds)

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

r - d - c - max(p)

e - r

nqquery.log or Usage Tracking?

Step
Logical Query Compilation
Database connection
Physical Query 1 response
Physical Query 2 response
Physical Query n response
Logical Query Response
Logical Query Elapsed
BI Server processing (federation,
calculation, aggregation)
Send to client, wait for
acknowledgement (eg sawserver
generating pivot tables etc)

nqquery.log source

Usage Tracking

c
d
p
p
p
r
e
r-d-c-max(p)

Logical Query Summary Stats: [...] Compilation time

S_NQ_ACCT.COMPILE_TIME_SEC

Physical Query Summary Stats: [...] DB-connect time

n/a

Physical query response time

S_NQ_DB_ACCT.TIME_SEC

Physical query response time

S_NQ_DB_ACCT.TIME_SEC

Physical query response time

S_NQ_DB_ACCT.TIME_SEC

Logical Query Summary Stats: [...] Response time

S_NQ_ACCT.TOTAL_TIME_SEC

Logical Query Summary Stats: Elapsed time

n/a

[derived]

[derived]

e-r

[derived]

n/a

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Usage Trackings blind spot


Usage Tracking is good, but it omits the Total Elapsed Time
!
!
!
!
!
!
!

Elapsed
nqquery.log:
Logical Query Summary Stats: Elapsed time e
Usage Tracking: [Not Available]
Response
nqquery.log:
Logical Query Summary Stats: [...] Response time r
Usage Tracking: S_NQ_ACCT.TOTAL_TIME_SEC

uh oh!

This can hide problems:

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

Send to client, wait for


acknowledgement

E : [email protected]
W : www.rittmanmead.com

Iterative Approach
Be sure to account for all time, end-to-end (nose to tail)
Expand time profile to focus on where the time is going in particular
In reality, time profile based on BI Server alone will help in a lot of cases

Browser tools

WLS logs

nqquery.log

sawlog.log

DB Explain plans, V$SQL, etc

Request
OBIEE system components

Managed Server
BI Plug-in

Presentation
Services

BI Server

Response

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Data Source(s)
Network

Web Browser

WebLogic Server
Network

User

DWH

DWH

Iterative Approach
Most components have extended logging
levels
Presentation Services
WebLogic Server
Browser Tools

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Digging Deeper with DMS Metrics


OBIEE supports Dynamic Monitoring System (DMS)
!

Hundreds of low-level metrics


!

Ranging from the obvious


(BI Server Total Sessions)
to the less obvious
(Peak_DXEParameterizedImpl_Count)
!

Once we have found WHERE the time has gone,


DMS metrics are one way to help us find out WHY

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Accessing DMS Metrics


DMS Spy
opmn
EM
obi-metrics-agent
+ graphite
+ grafana

http://ritt.md/oma-intro
T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or
+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

DMS Case Study


Query is running slowly, but its not clear why

Step
nqquery.log source
Logical Query Summary Stats: Elapsed time

Logical Query Elapsed


e
Logical Query Summary Stats: [...] Response time
Logical Query Response
r

Logical Query Summary Stats: [...] Compilation time


Logical Query Compilation
c

Physical Query Summary Stats: [...] DB-connect time


Database connection
d
Physical query response time
Physical Query 1 response
p

BI Server processing
r-d-c-max(p) [derived]

[derived]
Send to client, wait for cursor close
e-r
1

CPU is only at 50% utilisation


Only a handful of rows returned from the DB

What is the BI Server up to for this time?

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Time %
14
13
0
0%
0
0%
4
29%
9
64%
1
7%

DMS Provides the Proof


The Connection Pool has a fixed Capacity
Connections will start to Queue once Capacity is reached

Physical connections limit is reached for


connection pool "Star_orcl_Connection Pool 01".
Start delaying the queries

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Performance Diagnostics Approach


Capacity
Examine capacity metrics (OS, DMS) over time
Correlate with reported problems

Performance
Build a time profile
Dont know where to start? Try Usage Tracking or nqquery.log
- Long running queries
- Logical queries returning lots of data to the client
- Logical queries returning lots of data from the DB but small % to the client
- Logical queries requiring lots of physical queries

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

So What Does Good Look Like?

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

This Is Not Best Practice


There is no one right way : It

Depends

c.f. ExtremeBI

The only best practice you should be using all the


time is Use Your Brain.
Steven Robbins / Tom Kyte

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

The Bucket List of Performance Gains

Dont Do It
Do It Only Once
Do It Less Often
Do It More Efficiently
T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or
+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

(h/t Greg Rahn)

Database Pushdown (Do It More Efficiently)


Reduce the amount of work/data handled further up the stack
Federation across sources can be a challenge
c.f. BI Server caching

BI Plug-in

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

OBIEE system components

Presentation Services

E : [email protected]
W : www.rittmanmead.com

BI Server

Data Source(s)
Network

Web Browser

WebLogic Server
Managed Server
Network

User

DWH

[ ... ]

Do You Need Database Pushdown?


BI Servers temp directory shows lots of work being done by BI Server
Long time in BI Server processing phase
Usage Tracking / Query logs :
How much data the BI Server pulls back from the database as a percentage of rows
returned to the user (low % is bad).
How many database queries one report triggers - higher is generally less efficient
Step
Logical Query Elapsed
Logical Query Response
Logical Query Compilation
Database connection
Physical Query 1 response
BI Server processing
Send to client, wait for cursor close

nqquery.log source
Logical Query Summary Stats: Elapsed time
e
Logical Query Summary Stats: [...] Response time
r
Logical Query Summary Stats: [...] Compilation time
c
Physical Query Summary Stats: [...] DB-connect time
d
Physical query response time
p1
r-d-c-max(p) [derived]
[derived]
e-r

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Feeding the Excel Monster (Do It More Efficiently / Dont Do it)


Whats being done with the data once its in Excel?
Could it be done in OBIEE instead?
!

Alternatives to Export from Analysis/Dashboard:


Dump direct from the database
Use Logical SQL against BI Servers ODBC/JDBC
interface directly
Oracle have specific recommendations (DocID
1558070.1 p.13)
- Favour CSV export over Excel
- Favour BI Publisher export over OBIEE Analysis Export

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Dont Do It / Do It Less Often


Filter Early
Table Prompt != Filter
Report by Exception
!

Make sure Dashboards have


default/mandatory prompts
(http://ritt.md/obi-prompts)

Yes, please
do.

Be smart about Dashboard and Analysis design - dont cram everything into one page
Less clutter : Better user experience & Better performance

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

Not forgetting
Do It More Efficiently
Aggregation
Do It Less Often
BI Server caching
!

Database optimisation (partitioning, indexing, parallelism, statistics, etc)


Balanced Hardware configuration

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

OBIEE Performance in the Real World


Evidence-based DESIGN and DIAGNOSTICS
!

Do It Right, First Time


!

If Its Not Done Right, Know How To Figure Out What Is Broke
Methodical analysis - nose to tail

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

#EOF
email:
[email protected]
web:
http://www.rittmanmead.com/author/robin-moffatt/
twitter: @rmoff

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

References & Further Reading


Cary Millsap - Thinking Clearly About Performance
http://queue.acm.org/detail.cfm?id=1854041
Blog series: OBIEE and Performance
http://ritt.md/obiee-performance
obi-metrics-agent
http://ritt.md/oma-intro
Greg Rahn - The Core Performance Fundamentals Of Oracle Data Warehousing Balanced
Hardware Configuration
http://wp.me/p3cJT-by
Oracle documentation - Oracle Database 2 Day + Data Warehousing Guide - Balanced Hardware Configuration
E25555-03

T : +44 (0) 1273 911 268 (UK) or (888) 631-1410 (USA) or


+61 3 9596 7186 (Australia & New Zealand) or +91 997 256 7970 (India)

E : [email protected]
W : www.rittmanmead.com

You might also like