<?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: Quiz Night</title>
	<atom:link href="http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/feed/" rel="self" type="application/rss+xml" />
	<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/</link>
	<description>Just another Oracle weblog</description>
	<lastBuildDate>Wed, 22 May 2013 12:40:08 +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/10/23/quiz-night-4/#comment-34748</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Tue, 27 Oct 2009 11:03:31 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34748</guid>
		<description><![CDATA[Balaji,

The bigger block-size without changing the pctfree is a good answer and easy to demonstrate.

The &quot;automatic compute&quot; for 10g is, of course, the correct answer for the redudant line.

As a side-note, it&#039;s also possible to get significant changes in the clustering_factor of bitmap indexes by rebuilding it without changing the pctfree or block size. In 10g, the best I&#039;ve managed so far is a drop of 33% rather then 50%. It&#039;s a side effect of marking index entries for deletion, combined with delayed cleanout after commit.]]></description>
		<content:encoded><![CDATA[<p>Balaji,</p>
<p>The bigger block-size without changing the pctfree is a good answer and easy to demonstrate.</p>
<p>The &#8220;automatic compute&#8221; for 10g is, of course, the correct answer for the redudant line.</p>
<p>As a side-note, it&#8217;s also possible to get significant changes in the clustering_factor of bitmap indexes by rebuilding it without changing the pctfree or block size. In 10g, the best I&#8217;ve managed so far is a drop of 33% rather then 50%. It&#8217;s a side effect of marking index entries for deletion, combined with delayed cleanout after commit.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34747</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Tue, 27 Oct 2009 10:57:19 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34747</guid>
		<description><![CDATA[hpdba,

Correct.
I was carefuly to include the stats gathering so that the statistics were current before doing the rest of the demonstration.  

Taken to an extreme, of course, I could &quot;demonstrate&quot; any change in statistics that I wanted to by creating some data, collecting stats on that data, then changing the data again. If I published just the code from that point onwards eveyone ought to point out the error in my methodology.

Creating the correct model of the thing you&#039;re trying to emulate can be very difficult - and it&#039;s very easy to miss critical steps.]]></description>
		<content:encoded><![CDATA[<p>hpdba,</p>
<p>Correct.<br />
I was carefuly to include the stats gathering so that the statistics were current before doing the rest of the demonstration.  </p>
<p>Taken to an extreme, of course, I could &#8220;demonstrate&#8221; any change in statistics that I wanted to by creating some data, collecting stats on that data, then changing the data again. If I published just the code from that point onwards eveyone ought to point out the error in my methodology.</p>
<p>Creating the correct model of the thing you&#8217;re trying to emulate can be very difficult &#8211; and it&#8217;s very easy to miss critical steps.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Lewis</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34746</link>
		<dc:creator><![CDATA[Jonathan Lewis]]></dc:creator>
		<pubDate>Tue, 27 Oct 2009 10:51:51 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34746</guid>
		<description><![CDATA[Martin,
The bitmap index on an IOT depends on an intermediate table being created - and I haven&#039;t looked at the side effects of this particular change in that case.

From memory, you are really building a bitmap index on a heap table, so (with a change in the data, possibly) you should be able to see the same effect.]]></description>
		<content:encoded><![CDATA[<p>Martin,<br />
The bitmap index on an IOT depends on an intermediate table being created &#8211; and I haven&#8217;t looked at the side effects of this particular change in that case.</p>
<p>From memory, you are really building a bitmap index on a heap table, so (with a change in the data, possibly) you should be able to see the same effect.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: lascoltodelvenerdi</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34744</link>
		<dc:creator><![CDATA[lascoltodelvenerdi]]></dc:creator>
		<pubDate>Tue, 27 Oct 2009 10:03:24 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34744</guid>
		<description><![CDATA[I&#039;m thinking about this and the previous post about Bitmap Updates.

I was taught that a high clustering factor is a measure of how much rows are addressed by a single entry in the index: so the lower the &quot;closer&quot; is the index to the table (i.e. a primary key is &quot;1-to-1&quot; to the table).

In this example the change in the clustering factor from 396 to 198 would suggest that the rows in the table are &quot;not so packed&quot;. Probably idea this is wrong.

Keeping in mind the previous post, where Jonathan suggest that we &quot;must&quot; use bigger bitmap index to solve concurrency problem, the change in the clustering factor can be seen as a grow of the bitmap index.
Probably right as the change of the pctfree suggest.

Now, how all this impact performance? And how the optimizer reacts to this change?

I think that performance can be worst as the index is bigger. On the other hand the optimizer can ignore this index because of is &quot;low&quot; clustering factor (for example if we need to do a range scan).

How many errors I made? ^_^

Bye,
Antonio]]></description>
		<content:encoded><![CDATA[<p>I&#8217;m thinking about this and the previous post about Bitmap Updates.</p>
<p>I was taught that a high clustering factor is a measure of how much rows are addressed by a single entry in the index: so the lower the &#8220;closer&#8221; is the index to the table (i.e. a primary key is &#8220;1-to-1&#8243; to the table).</p>
<p>In this example the change in the clustering factor from 396 to 198 would suggest that the rows in the table are &#8220;not so packed&#8221;. Probably idea this is wrong.</p>
<p>Keeping in mind the previous post, where Jonathan suggest that we &#8220;must&#8221; use bigger bitmap index to solve concurrency problem, the change in the clustering factor can be seen as a grow of the bitmap index.<br />
Probably right as the change of the pctfree suggest.</p>
<p>Now, how all this impact performance? And how the optimizer reacts to this change?</p>
<p>I think that performance can be worst as the index is bigger. On the other hand the optimizer can ignore this index because of is &#8220;low&#8221; clustering factor (for example if we need to do a range scan).</p>
<p>How many errors I made? ^_^</p>
<p>Bye,<br />
Antonio</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Balaji Ramachandran</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34728</link>
		<dc:creator><![CDATA[Balaji Ramachandran]]></dc:creator>
		<pubDate>Mon, 26 Oct 2009 07:26:19 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34728</guid>
		<description><![CDATA[Why is the change in clustering_factor irrelevant in this scenario ?

   Since its a bitmap index
   
   &quot;The clustering_factor has no direct connection with the scattering of data in the table&quot;
   &quot;clustering_factor in bitmap indexes does not describe the table&quot; 

     - Cost based oracle fundamentals,Jonathan lewis

  And also PCTFREE of 10 is going to give more trouble for the DML.

What’s the flaw in the suggestions put forward by Chen and Wolfgang ?

   The possible flaw in Wolfgang and chang is they show wrong statistics in the first place, they should have recollected the statistics after the delete statement or the shrink commands before selecting the clustering factor for thhe first time.
   
Which line of code in my example is redundant ?

  The redundant line is the statisticss collection as the rebuild would have automatically collected the statistics.

Could I have produced the same effect without changing the pctfree 

  One possible option would be to rebuild the index on a  bigger block sized tablespace without change in the pctfree.]]></description>
		<content:encoded><![CDATA[<p>Why is the change in clustering_factor irrelevant in this scenario ?</p>
<p>   Since its a bitmap index</p>
<p>   &#8220;The clustering_factor has no direct connection with the scattering of data in the table&#8221;<br />
   &#8220;clustering_factor in bitmap indexes does not describe the table&#8221; </p>
<p>     &#8211; Cost based oracle fundamentals,Jonathan lewis</p>
<p>  And also PCTFREE of 10 is going to give more trouble for the DML.</p>
<p>What’s the flaw in the suggestions put forward by Chen and Wolfgang ?</p>
<p>   The possible flaw in Wolfgang and chang is they show wrong statistics in the first place, they should have recollected the statistics after the delete statement or the shrink commands before selecting the clustering factor for thhe first time.</p>
<p>Which line of code in my example is redundant ?</p>
<p>  The redundant line is the statisticss collection as the rebuild would have automatically collected the statistics.</p>
<p>Could I have produced the same effect without changing the pctfree </p>
<p>  One possible option would be to rebuild the index on a  bigger block sized tablespace without change in the pctfree.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mwidlake</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34724</link>
		<dc:creator><![CDATA[mwidlake]]></dc:creator>
		<pubDate>Sun, 25 Oct 2009 01:58:01 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34724</guid>
		<description><![CDATA[Question Jonathan - If the table had been an Index Organized Table how would the senario play out? (I have no idea, no where near a test system I can try, thus the question).]]></description>
		<content:encoded><![CDATA[<p>Question Jonathan &#8211; If the table had been an Index Organized Table how would the senario play out? (I have no idea, no where near a test system I can try, thus the question).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hpdba</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34722</link>
		<dc:creator><![CDATA[hpdba]]></dc:creator>
		<pubDate>Sat, 24 Oct 2009 19:30:19 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34722</guid>
		<description><![CDATA[Just to add a little:
In regards to CLUSTERING_FACTOR, the Oracle Reference Manual for 10gR2 says: &quot;For bitmap indexes, this column is not applicable and is not used&quot;.
The value for this column appears to be the same as NUM_ROWS, (after sampling a few bitmap indexes).]]></description>
		<content:encoded><![CDATA[<p>Just to add a little:<br />
In regards to CLUSTERING_FACTOR, the Oracle Reference Manual for 10gR2 says: &#8220;For bitmap indexes, this column is not applicable and is not used&#8221;.<br />
The value for this column appears to be the same as NUM_ROWS, (after sampling a few bitmap indexes).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hpdba</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34721</link>
		<dc:creator><![CDATA[hpdba]]></dc:creator>
		<pubDate>Sat, 24 Oct 2009 18:22:32 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34721</guid>
		<description><![CDATA[The flaw with comments 1 &amp; 3 is that the index statistics are not gathered immediately before checking the cluster factor.  (Changes to the table are made in between).]]></description>
		<content:encoded><![CDATA[<p>The flaw with comments 1 &amp; 3 is that the index statistics are not gathered immediately before checking the cluster factor.  (Changes to the table are made in between).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dombrooks</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34719</link>
		<dc:creator><![CDATA[dombrooks]]></dc:creator>
		<pubDate>Sat, 24 Oct 2009 08:33:07 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34719</guid>
		<description><![CDATA[&gt; With a bitmap index, each entry identifies a range of rows
Which is why they are renowned for concurrency issues.]]></description>
		<content:encoded><![CDATA[<p>&gt; With a bitmap index, each entry identifies a range of rows<br />
Which is why they are renowned for concurrency issues.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dombrooks</title>
		<link>http://jonathanlewis.wordpress.com/2009/10/23/quiz-night-4/#comment-34718</link>
		<dc:creator><![CDATA[dombrooks]]></dc:creator>
		<pubDate>Sat, 24 Oct 2009 08:28:36 +0000</pubDate>
		<guid isPermaLink="false">http://jonathanlewis.wordpress.com/?p=2421#comment-34718</guid>
		<description><![CDATA[Clustering factor does not have the same meaning for a bitmap.
In a b*tree index, each entry represents a row in the table.
With a bitmap index, each entry identifies a range of rows.
By changing the pctfree, do we change the number of entries?
In example above, changing pctfree changes num_rows and clustering_factor for a bitmap.]]></description>
		<content:encoded><![CDATA[<p>Clustering factor does not have the same meaning for a bitmap.<br />
In a b*tree index, each entry represents a row in the table.<br />
With a bitmap index, each entry identifies a range of rows.<br />
By changing the pctfree, do we change the number of entries?<br />
In example above, changing pctfree changes num_rows and clustering_factor for a bitmap.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
