RE: Queueing Theory in Oracle

  • From: Jonathan Lewis <jonathan@xxxxxxxxxxxxxxxxxx>
  • To: Ls Cheng <exriscer@xxxxxxxxx>
  • Date: Tue, 11 Mar 2014 15:42:12 +0000

It's an intuitive, and totally informal, assumption based on optimistic analogy.

I believe queueing theory started life in lengths of telephone calls and 
migrated to bank tellers.  The image from those environments has been 
randomised arrival with a large number of small interactions, with longer 
interactions appearing at less frequent intervals.  The same is probably 
approximately true of an OLTP system, which we hope tends to deal with large 
number of small updates and queries, with a smaller number of larger queries 
(screen full), and fewer longer reports.



Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
@jloracle
________________________________
From: Ls Cheng [exriscer@xxxxxxxxx]
Sent: 11 March 2014 14:46
To: Jonathan Lewis
Cc: Oracle Mailinglist
Subject: Re: Queueing Theory in Oracle

Hi

I have been reading Craig's book and Cary's book (chapter 9) for the last 2 
weeks, the theory in the books look great but when I tried to start using in 
the real world it the questions started to appear.

For example, arrival rate, what arrival rate in Oracle is exponentially 
distributed......? Cary says logical reads in his book but I just dont see how 
can that be possible by using the database metric (for example system metric 
such as Logical Reads Per Sec or Logical Reads Per User Call). Craig's book I 
dont even mention a useful database metric (I havent finished the book yet so I 
might have missed if he has said so), the book just uses all the time the work 
unit transaction per second.

Both book provide a queueing theory workbook but they are useless from database 
metric point of view since no metric is poisson or exponential distributed 
(again I am not able to see it, if someone can please advice).

But Jonathan you just mention "buffer gets per user call" which is similar to 
Logical Reads Per User Call from v$sysmetric, why do you think that is 
exponentially distributed :-?


Thanks




On Tue, Mar 11, 2014 at 3:30 PM, Jonathan Lewis 
<jonathan@xxxxxxxxxxxxxxxxxx<mailto:jonathan@xxxxxxxxxxxxxxxxxx>> wrote:

It's an interesting question - and I don't think you can find a current metric 
that would help unless you started doing something a little clever with ASH.

In an OLTP system something like 'buffer gets per user call" would probably be 
a reasonable fit - but there's no capture at that granularity. Similarly disc 
I/O requests per call might be appropriate.  Then there are things like disk 
I/O requests per disc per second.  But every possibility I think of requires 
too fine a level of granularity unless you can find a way to construct a valid 
model from the samples in v$active_session_history.



Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
@jloracle
________________________________
From: oracle-l-bounce@xxxxxxxxxxxxx<mailto:oracle-l-bounce@xxxxxxxxxxxxx> 
[oracle-l-bounce@xxxxxxxxxxxxx<mailto:oracle-l-bounce@xxxxxxxxxxxxx>] on behalf 
of Ls Cheng [exriscer@xxxxxxxxx<mailto:exriscer@xxxxxxxxx>]
Sent: 11 March 2014 14:20
To: Paul Houghton
Cc: Oracle Mailinglist
Subject: Re: Queueing Theory in Oracle

Hi

I have had a quick read, I think the link you posted talks about queue time but 
not about queueing theory such as a M/M/n model. The problem is I am not able 
to find a database metric that is exponential distributed which allows us to 
use the M/M/n queueing theory.

Thanks



On Tue, Mar 11, 2014 at 3:16 PM, Paul Houghton 
<Paul.Houghton@xxxxxxxxxxxxxxx<mailto:Paul.Houghton@xxxxxxxxxxxxxxx>> wrote:
Craig Shallahamer talks about queuing theory in the following blog post.

http://shallahamer-orapub.blogspot.co.uk/2011/08/why-tuning-oracle-works-and-modeling-it.html

I hope this is helpful

PaulH



Other related posts: