<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Analysing Statspack (11)</title>
	<atom:link href="http://jonathanlewis.wordpress.com/2009/01/18/analysing-statspack-11/feed/" rel="self" type="application/rss+xml" />
	<link>http://jonathanlewis.wordpress.com/2009/01/18/analysing-statspack-11/</link>
	<description>Just another Oracle weblog</description>
	<lastBuildDate>Fri, 24 May 2013 13:27:07 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2009/01/18/analysing-statspack-11/#comment-40151</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Sat, 26 Mar 2011 20:13:35 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=918#comment-40151</guid>
		<description><![CDATA[Lou,

If you have reasonably accurate statistics on the indexes I have some &lt;a href=&quot;http://jonathanlewis.wordpress.com/index-sizing/&quot; rel=&quot;nofollow&quot;&gt;&lt;em&gt;&lt;strong&gt;code that reports indexes that are larger than expected&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;. Since it&#039;s fairly cheap to run I&#039;d be inclined to use it to discover problem indexes on a system I didn&#039;t know, then think about why those indexes (a) exist and (b) are badly behaved. 

I&#039;ve been to many sites which have redundant indexes on tables because there has been no strategic analysis of how the table has to be queried - and sometimes this has resulted in many similar indexes with large numbers of columns.]]></description>
		<content:encoded><![CDATA[<p>Lou,</p>
<p>If you have reasonably accurate statistics on the indexes I have some <a href="http://jonathanlewis.wordpress.com/index-sizing/" rel="nofollow"><em><strong>code that reports indexes that are larger than expected</strong></em></a>. Since it&#8217;s fairly cheap to run I&#8217;d be inclined to use it to discover problem indexes on a system I didn&#8217;t know, then think about why those indexes (a) exist and (b) are badly behaved. </p>
<p>I&#8217;ve been to many sites which have redundant indexes on tables because there has been no strategic analysis of how the table has to be queried &#8211; and sometimes this has resulted in many similar indexes with large numbers of columns.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lou</title>
		<link>http://jonathanlewis.wordpress.com/2009/01/18/analysing-statspack-11/#comment-40111</link>
		<dc:creator><![CDATA[Lou]]></dc:creator>
		<pubDate>Wed, 23 Mar 2011 03:30:40 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=918#comment-40111</guid>
		<description><![CDATA[Jonathan,

Your thoughts about Indexes leaf nodes split? and how to capture
 indexes with a lot of columns in their definitions that grow even more rapidly than the table they index? 

Thanks,

Lu]]></description>
		<content:encoded><![CDATA[<p>Jonathan,</p>
<p>Your thoughts about Indexes leaf nodes split? and how to capture<br />
 indexes with a lot of columns in their definitions that grow even more rapidly than the table they index? </p>
<p>Thanks,</p>
<p>Lu</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2009/01/18/analysing-statspack-11/#comment-34053</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Thu, 06 Aug 2009 15:34:12 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=918#comment-34053</guid>
		<description><![CDATA[Daniel,

1:  I can&#039;t remember now why I chose to say 32KB rather than 40KB - but I&#039;d guess it&#039;s because it looks as if the extent size has been set deliberately low and 32KB is a more likely value for a computer-literate person to choose than 40KB (powers of two are prettier). Your comment does raise the question though: if the block size is 4KB and the extent size = 32KB (which is 8 blocks), does Oracle alternate bumping the high water mark by 5 then 3, or does it always bump by 5 even if it means pausing to add an extent for the final 2 blocks, or is there a special boundary case when the number of blocks left in the extent after a bump is less than 5.  (Easy to test a few cases, of course, but probably not worth the effort any more).

2A: Yes, one round-trip is one user call, and a user would be a parse, execute, or fetch.  (Possibly a commit would be counted as an execute - it might be worth checking that - bearing in mind there are two code paths for the commit.) Just to avoid any risk of confusion, it&#039;s worth mentioning that the converse is not true: a parse, execute or fetch need not be a user call, as it may have occurred within a pl/sql block which has been instigated by a user&#039;s &quot;execute&quot; call.

2B:  Bear in mind my comment starts with &lt;em&gt;&quot;perhaps&quot;&lt;/em&gt; - I was only making a tentative suggestion. In fact it was an oversight on my part (now corrected) that made me omit deletes.  (I note that you&#039;ve highlighted &lt;em&gt;&quot;single&quot;&lt;/em&gt; in both cases - the reason why I suggested single row, in case you were wondering, is that the &lt;em&gt;&lt;strong&gt;redo size&lt;/strong&gt;&lt;/em&gt; per execution was very small.]]></description>
		<content:encoded><![CDATA[<p>Daniel,</p>
<p>1:  I can&#8217;t remember now why I chose to say 32KB rather than 40KB &#8211; but I&#8217;d guess it&#8217;s because it looks as if the extent size has been set deliberately low and 32KB is a more likely value for a computer-literate person to choose than 40KB (powers of two are prettier). Your comment does raise the question though: if the block size is 4KB and the extent size = 32KB (which is 8 blocks), does Oracle alternate bumping the high water mark by 5 then 3, or does it always bump by 5 even if it means pausing to add an extent for the final 2 blocks, or is there a special boundary case when the number of blocks left in the extent after a bump is less than 5.  (Easy to test a few cases, of course, but probably not worth the effort any more).</p>
<p>2A: Yes, one round-trip is one user call, and a user would be a parse, execute, or fetch.  (Possibly a commit would be counted as an execute &#8211; it might be worth checking that &#8211; bearing in mind there are two code paths for the commit.) Just to avoid any risk of confusion, it&#8217;s worth mentioning that the converse is not true: a parse, execute or fetch need not be a user call, as it may have occurred within a pl/sql block which has been instigated by a user&#8217;s &#8220;execute&#8221; call.</p>
<p>2B:  Bear in mind my comment starts with <em>&#8220;perhaps&#8221;</em> &#8211; I was only making a tentative suggestion. In fact it was an oversight on my part (now corrected) that made me omit deletes.  (I note that you&#8217;ve highlighted <em>&#8220;single&#8221;</em> in both cases &#8211; the reason why I suggested single row, in case you were wondering, is that the <em><strong>redo size</strong></em> per execution was very small.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel</title>
		<link>http://jonathanlewis.wordpress.com/2009/01/18/analysing-statspack-11/#comment-33989</link>
		<dc:creator><![CDATA[Daniel]]></dc:creator>
		<pubDate>Tue, 28 Jul 2009 03:51:10 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=918#comment-33989</guid>
		<description><![CDATA[Two questions:

1: You said: HW and ST enqueues. The highwater mark jumps every five blocks: given the ratio of ST to HW enqueues (roughly 1 to 2), we might have a very large, and growing, object with an extent size of about 32KB.
Q1: ST/HW=1/2, so the size of one extent equals to the size allocated from two HWM jump, and one HWM jump is of size 5*4K=20K, so two HWM jump is of size 40K. Looks like the extent is of size 40K.

2:This one session did roughly 605,000 roundtrips – which accounts for a very large fraction of the 258.4 “user calls” in the Load Profile, and since we also had 244 Executes in the load profile, perhaps this one session was busy doing single row inserts or single row updates for the duration.
Q2A: Do you mean one roundtrip is one &quot;user calls&quot;? In my memory, user call is either of parse, fetch, exec or commit. 
Q2B: How are you sure it was doing ***single*** row inserts or ***single*** row updates?  How are you sure it was not doing delete operation.

Thanks,
Daniel]]></description>
		<content:encoded><![CDATA[<p>Two questions:</p>
<p>1: You said: HW and ST enqueues. The highwater mark jumps every five blocks: given the ratio of ST to HW enqueues (roughly 1 to 2), we might have a very large, and growing, object with an extent size of about 32KB.<br />
Q1: ST/HW=1/2, so the size of one extent equals to the size allocated from two HWM jump, and one HWM jump is of size 5*4K=20K, so two HWM jump is of size 40K. Looks like the extent is of size 40K.</p>
<p>2:This one session did roughly 605,000 roundtrips – which accounts for a very large fraction of the 258.4 “user calls” in the Load Profile, and since we also had 244 Executes in the load profile, perhaps this one session was busy doing single row inserts or single row updates for the duration.<br />
Q2A: Do you mean one roundtrip is one &#8220;user calls&#8221;? In my memory, user call is either of parse, fetch, exec or commit.<br />
Q2B: How are you sure it was doing ***single*** row inserts or ***single*** row updates?  How are you sure it was not doing delete operation.</p>
<p>Thanks,<br />
Daniel</p>
]]></content:encoded>
	</item>
</channel>
</rss>
