RE: DB TIME in AWR

  • From: Iggy Fernandez <iggy_fernandez@xxxxxxxxxxx>
  • To: sumit Tyagi <dba.tyagisumit@xxxxxxxxx>
  • Date: Sun, 22 May 2016 04:22:23 -0700

I believe that sessions does not include parallel processes which also 
contribute to DB time.
However, the processes setting includes some processes that do not contribute 
to DB time.
So sessions * elapsed time may be an underestimate whereas processes * elapsed 
time is an overestimate.
re: CPU cores. You may be confusing "CPU time" and "DB time". DB Time is the 
"sum of the elapsed times of database calls by foreground sessions" (definition 
in the webinar) and is more than just CPU time. Therefore it is no related to 
cores or threads. 

From: dba.tyagisumit@xxxxxxxxx
Date: Sun, 22 May 2016 16:30:43 +0530
Subject: Re: DB TIME in AWR
To: iggy_fernandez@xxxxxxxxxxx
CC: oracle-l@xxxxxxxxxxxxx

Not an interview question :) I was going through the attached webinar Who Ate 
My DB Time? Advanced Techniques For Database Performance Analysis,  got this 
question from one of the slide  :
As per the doc answer is Number of ‘sessions’ * elapsed time . but want to know 
why cpu cores are not considered ?
DB Time: Quiz
Question: On a four CPU system, for one hour elapsed time, what is the maximum 
amount of DB Time that can be accumulated? Hint: How many sessions can wait in 
a queue?
Answer: Number of ‘sessions’ * elapsed time.
The maximum number of sessions that are on CPU or in a non-idlewait is the 
init.ora parameter ‘sessions’. If ‘sessions’ is 300 then:300 * 1 hour = 300 
hours of DB Time
Copyright © 2011, Oracle and/or its affiliates. All rights reserved

On Sun, May 22, 2016 at 4:06 PM, Iggy Fernandez <iggy_fernandez@xxxxxxxxxxx> 
wrote:



There are many processes than there are sessions.
My answer is processes * elapsed time

From the documentation: "PROCESSES specifies the maximum number of operating 
system user processes that can simultaneously connect to Oracle. Its value 
should allow for all background processes such as locks, job queue processes, 
and parallel execution processes." 
(https://docs.oracle.com/cd/B19306_01/server.102/b14237/initparams169.htm#REFRN10175)
Your system will choke before it gets anywhere close to this theoretical 
maximum. A rule of thumb is that you should be concerned if your db time 
exceeds elapsed time * CPU threads; that is, if average active sessions (AAS) 
is greater than the number of CPU threads (threads not cores).
P.S. I hope that is not an interview question. I usually fail DBA interviews 
because of questions like that.
https://iggyfernandez.wordpress.com/2010/10/31/the-worst-interview-of-my-life/


https://iggyfernandez.wordpress.com/2012/07/16/how-not-to-interview-a-database-administrator-part-i-the-google-way/








From: dba.tyagisumit@xxxxxxxxx
Date: Sun, 22 May 2016 15:21:58 +0530
Subject: DB TIME in AWR
To: oracle-l@xxxxxxxxxxxxx

On a four CPU system ( 4 CPU CORE ) , for one hour elapsed time, what
is the maximum amount of DB Time that can be accumulated? 
Answer:  Number of ‘sessions’ in int.ora  * elapsed time = 300 * 1 hours = 300 
Hours
OR 
Answer  : Number of ‘sessions’ in int.ora  * elapsed time * CPU Cores =  300 * 
1 * 4 = 1200 Hours

Which one is correct any why . Little confusion here . 


-- 

--BRSumit Tyagi+91-7829543355
                                          


-- 

--BRSumit Tyagi+91-7829543355
                                          

Other related posts: