Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 6 of 6 total
Thread Index Size Issue
Tue, Feb 7 2006 6:31 PMPermanent Link

"Adam H."
Hi,

I have a small table with the following structure:

Serial    (Autoinc)
Type    (String 10)
Name    (String 100)
Filter    (BLOB 0)
Settings (BLOB 0)

I have one index - the primary index, being the field SERIAL.

I have two records currently in the table.

The tables .DAT file is 4,688 bytes
The tables .BLB file is 10,752 bytes

However, the tables IDX is 33,280 bytes. I'm a little confused on why the
tables IDX field would be more than twice the size of the entire data (.dat
and blob fields combined) when their is only one index, on the Autoinc
field.

Can someone please cure my curiosity?   Smile

Thanks & Regards

Adam.

Tue, Feb 7 2006 8:55 PMPermanent Link

Herb (Kraft)
That is indeed what you get. It is not an error or problem. The smallest IDX I've seen is appx 29kb.
Until tables get a bit larger, the idx can be larger than the rest of the table.
Advantages of index compression etc. occur as the tables get larger.

If you have a number of indicies and a small number of records, there can be similar size issues.
However, the multi-file architecture is preferable (at least to me) to putting things in a single file.
Nevertheless, operations on the tables are blindingly fast.

There been a number of threads on multi-file vs. single file architecture.
I usually have more installations of programs I'm involved in than most, due to the fact that I work in ultra low cost mass market software.

As I have said before, I've tried everything and to date this engine is the best and most stable performer.
Believe me, I have tried EVERYTHING on the market ranging from A to Z.

Herb
Wed, Feb 8 2006 1:22 AMPermanent Link

"Adam H."
Hi Herb,

Thanks for your reply. I'm not overly worried about the size, now that I
understand that it's normal because of the way DBISam stores all it's
indexes in one file.

Cheers

Adam.

Wed, Feb 8 2006 1:39 AMPermanent Link

Herb (Kraft)
"Adam H." <ahairsub4@rREMOVEMEspamSTOPPER.jvxp.com> wrote:

Hi Herb,

Thanks for your reply. I'm not overly worried about the size, now that I
understand that it's normal because of the way DBISam stores all it's
indexes in one file.

Cheers

Adam.

Indeed- if you do a full text index, the file can be larger- but again, performance is fine
Herb (Kraft)
Wed, Feb 8 2006 3:22 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Adam


Not only does it store all the indices in one file but it also stores the index definitions and any performance stats in there as well.

Roy Lambert
Wed, Feb 8 2006 7:55 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Adam,

<< However, the tables IDX is 33,280 bytes. I'm a little confused on why the
tables IDX field would be more than twice the size of the entire data (.dat
and blob fields combined) when their is only one index, on the Autoinc
field.

Can someone please cure my curiosity?   Smile>>

It's the fixed-size index definitions in the index file header that are
consuming the space.  ElevateDB doesn't have this issue since it uses a
catalog for the metadata.  However, it does use a 16kb header for the row,
index, and BLOB files.

--
Tim Young
Elevate Software
www.elevatesoft.com

Image