Table size

Ruslan Zasukhin sunshine at public.kherson.ua
Thu Jun 1 23:00:16 CDT 2006


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
>> 
> 
> Well I had read both pdf and wiki, but it didn't give answer I looked for. I
> was after a more not too deep "technical" description, giving a bit more
> details of what causes a new segment to be created. The only thing I find on
> the subject is as below which basically says that "V can create big empty
> DB's based on segment size" but noting about what causes a segment to be
> created to start with and how each segment is related to specific parts of
> my on db's structure.

Here 

http://www.valentina-db.com/dokuwiki/doku.php?id=paradigma:public:en:documen
tation:vkernel:table:storage

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


When new segment is created? When current if 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.


> I can Guess "RB-Tree" may contain the answer or part
> of it, but I am not a database techie and have no clue what RB-Tree is
> although I can think of it being some "db specification" used inside of
> Valentina. 

No need to know this
 
> Basically I just wanted to know if my "assumptions" was correct or in what
> way they wasn't?
> 
>> From kernel.pdf:
> 
> Choosing a database segment size on creation* Each database volume contains
> the map of internal files (based on RB-Tree). Each internal file has one or
> several segments.* This parameter also specifies how many disk space will
> allocate each logical file when it must be expanded. * On default Valentina
> create database volumes with segment size 32Kb. This parameter should not be
> smaller of 4K and not big sense set it bigger of 32Kb or may be 64Kb.*
> 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. * Note that empty Valentina database can allocate many disk space
> right after creation. The more fields the more allocated space.

-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list