diff -r 000000000000 -r 89d6a7a84779 Symbian3/SDK/Source/GUID-785B2F0B-E7E6-5DAE-98F1-6C32BED25964.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-785B2F0B-E7E6-5DAE-98F1-6C32BED25964.dita Thu Jan 21 18:18:20 2010 +0000 @@ -0,0 +1,12 @@ + + + + + +Database storage overhead

Space utilization is efficient

The storage required for a row can be determined as follows:

Indexes

Indexes are implemented using STORE B+trees. Note in particular that indexes use fixed length keys, so that indexes on longer text fields can consume significant space.

If the key for the index is k bytes, the number of rows to index is n, the index page size is P, and the B-tree packing density is r:

a = [(P-8)/(k+4)] * r

Where [x] is the largest integer <= x. Then the number of pages required, N, is

N = n * (1/a + 1/(a*a))

Each page requires P+7 bytes in the store, so the total indexing overhead, S, is

S = N * (P+7)

For DBMS P=512 and r=0.86.

\ No newline at end of file