Subject | Re: [Firebird-Architect] Index structures |
---|---|
Author | Jim Starkey |
Post date | 2003-06-08T14:01:03Z |
At 03:08 PM 6/8/2003 +0200, Arno Brinkman wrote:
lower level index pages controlled by a single intermediate or top level page.
It's an n-squared problem. Your indexes are generally going to be deeper.
That's a serious problem.
size is probably faster. But a completely memory resident database organized
around hash tables would be even faster, much faster. But, like your
scheme, it
doesn't scale in the real world.
Jim Starkey
> > I don't think it scales. The bigger the index the more you're hurt by theThe problem is a fluffy index significantly decreases fanout -- the number of
> > fluffier
> > index. If your index goes an extra level, you lose big time. As the
>index
> > size
> > increases relative to cache size, your cpu advantage is lost to increased
> > disk i/o.
>
>The extra-levels aren't there that much if they even are.
lower level index pages controlled by a single intermediate or top level page.
It's an n-squared problem. Your indexes are generally going to be deeper.
That's a serious problem.
> > CPU double in speed every 18 months. Disks double in speed every 25If you have a toy database that fits in memory, nothing matters. A small page
>years.
> > Trading increased disk traffic for lower CPU utilization isn't, to my old
> > foggie thinking, a win.
>
>Ofcourse i've to agree with that, but the index-lookup seems to be a very
>expensive task on larger page sizes. While i always read (and thus adopt)
>that a bigger page size should give a better performance? See for example
>http://community.borland.com/article/interbase/makeibscream.pdf chapter 8,
>but this seems to be not true at all. For faster index-lookups it seems a
>small page size is the best.
size is probably faster. But a completely memory resident database organized
around hash tables would be even faster, much faster. But, like your
scheme, it
doesn't scale in the real world.
Jim Starkey