Table size

Joakim Schramm joakim at astrocalc.com
Fri Jun 2 01:03:44 CDT 2006


Hi Ruslan, 

> -----Original Message-----
> From: valentina-bounces at lists.macserve.net 
> [mailto:valentina-bounces at lists.macserve.net] On Behalf Of 
> Ruslan Zasukhin
> Sent: 01 June 2006 22:00
> To: valentina at lists.macserve.net
> Subject: Re: Table size
> 
> On 6/1/06 9:20 PM, "Joakim Schramm" <joakim at astrocalc.com> wrote:
> 
> Hi Joakim,
> 
> >> Please read WIKI , Vkernel manual about how Valentina keep 
> internal 
> >> files
> >> 
> > 
> 
> Here 
> 
>
http://www.valentina-db.com/dokuwiki/doku.php?id=paradigma:public:en:documen
tation:vkernel:table:storage
> 
Ahh missed that one, was blind looking on "database" level.

> Is shown that a field can have 1-4 associated logical files.
> Each logical file on start eat 1 segment, 32K on default.
> 
> So your 109 fields may have e.g. 200 logical files, And then 
> 200 * 32K = 6Mb
> 
Ok so what I "figured out" on my own is more or less correct then.

> 
> When new segment is created? When current if full.

Ok pretty logical, is this happen individually for each "logical" file? Like
if seg1 of f1 got filled up seg2 of f1 is allocated BUT seg1 of f2 may not
necessary expand to seg2 of f2 at this time but later when seg1 of f2 is
full?

> E.g. Ulong field, 4 bytes per record,
> 32K = 4 bytes = 8000 records to be added before file of ULONG 
> field will eat second segment.
> 
Yes but to clearify my note above, in this case if record also have Doubble
field, 8 bytes = 4000 records, will segment of Ulong expand at same time
"wasting" space for 4000 Ulong records? I think not? 

Also finally, can you explain this a bit:

* Smaller segment size will produce more segments in a logical file. So deep
of RB-Tree will be higher, what can reduce performance of random access
operation.

More specific, how to define a "random access operation", example (COM)? How
much performance loss are we talking about here?

If possible, I like to reduce initial size of db as I know some of my users
have small computer, but as I create this db on first run I can make it
optional like checking HD size/free space and set segment size on creation.

Regards,

Joakim



More information about the Valentina mailing list