Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Index rebuilding
Doesn't it come down to making sure you've defined your terms? A lot of =
the
argument seems to be an implicit disagreement over what the word =
"balanced"
means. In Knuth and other computer science texts that discuss indexes, I
believe the definition of "balanced" is "an index is balanced iff (if =
and
only if) all leaf nodes have the same distance to the root." By this
definition, Oracle B*-tree indexes are ALWAYS balanced, and NEVER
un-balanced. This point is not in contention, correct?
I think what's happening is that people who are complaining about un-balanced-ness are redefining the word "balance" to mean something completely different.
In general, I think it's sloppy to take change the meaning of a =
scientific
word in a discussion or "white paper." When I say "scientific word," I =
mean
one that has been carefully defined and used in a specific context =
for--in
this case--decades. It's one of the things that drives me nuts about the
Oracle culture, this bastardization of carefully defined, =
well-established
terms for the convenience of some Oracle author who writes more than he
reads. :)
I guess the problem is analogous to the one being solved in the XML =
world by
the implementation of XML namespaces. Maybe instead of the term =
"balanced",
we should use the term "knuth:balanced" or "choose-an-author:balanced". =
In
this case, I would suggest that the default namespace should be set to
"knuth".
Cary Millsap
Hotsos Enterprises, Ltd.
http://www.hotsos.com
* Nullius in verba *
Upcoming events:
- Performance Diagnosis 101: 1/4 Calgary, 2/2 Sydney - SQL Optimization 101: 11/8 Dallas, 12/13 Atlanta, 2/7 Sydney - Hotsos Symposium 2005: March 6-10 Dallas - Visit www.hotsos.com for schedule details...
-----Original Message-----
From: oracle-l-bounce_at_freelists.org =
[mailto:oracle-l-bounce_at_freelists.org]
On Behalf Of Alex
Sent: Friday, November 12, 2004 5:44 PM
To: DGoulet_at_vicr.com; oraclel_at_weikop.com; oracle-l_at_freelists.org
Subject: RE: Index rebuilding
I agree with Dick! Always and never are to be used in cases like "the sun always rises in the east: or "I've never enjoyed working with Oracle more than I do now" :)
Regards!
> Looked at Richard Foote's paper. Don't know about
> that. I did prove to
> OTS several years ago that a block could get "lost"
> in an index due to
> deletion/updates that left it empty. I believe that
> got finally fixed
> in Oracle 8i. I've still seen cases of index's
> becoming unbalanced, I
> know the docs day it's impossible, but it does
> happen without the index
> height increasing. And I still believe that index
> deletes don't get
> flushed so efficiently, as Richard suggests. If
> that was the case then
> I can't explain why an index rebuild can cause an
> index to shrink by 30%
> or more. And recent experience still shows that a
> rebuild can cause
> significant performance improvement. And Oracle has
> provided the
> capability to rebuild indexes which is not trivial.=20
> Therefore, NEVER
> use the word "never" unless your absolutely certain
> that under all
> circumstances it will be absolutely true. And in
> the current context,
> that is the truth, that is, never can never be an
> absolute.
>=20
>=20 >=20
>=20
>=20
>=20
>=20
=09
__________________________________=20
-- http://www.freelists.org/webpage/oracle-l -- http://www.freelists.org/webpage/oracle-lReceived on Sun Nov 14 2004 - 10:46:58 CST
![]() |
![]() |