Subject Re: [firebird-support] Slow at writing record cointaining BLOB fields
Author Aage Johansen
Hardy wrote:
> I still cannot find which part on my writing Blob application that slows
> down ?? Database file size around 13MB
>
> Hello friends can you give me any suggestions or help ?
>
> ** I have increased the database page size from 1024 to 4096 and 8192
> and re-tested the database writing speed. Result I got only 2 seconds
> improvement. Initial speed was 30 second on 1024 page size
>
> ** On the application side I used "Client Dataset components" on the
> client, and "Query components" on the server. I do not use "Table type"
> at all. Also do not use BDE at all, we used Interbase Express 4.52
> Components instead.
>
> Here are the database header statistics for 4096 and 8192
>
> Database header page information:
> Flags 0
> Checksum 12345
> Generation 190
> Page size 4096
> ODS version 10.0
> Oldest transaction 181
> Oldest active 182
> Oldest snapshot 182
> Next transaction 183
> Bumped transaction 1
> Sequence number 0
> Next attachment ID 0
> Implementation ID 16
> Shadow count 0
> Page buffers 10000
> Next header page 0
> Database dialect 3
> Creation date Dec 31, 2004 10:18:34
> Attributes force write
>
> Variable header data:
> Sweep interval: 20000
> *END*

This looks fine. Provided the limited RAM on your server makes 10000 'too
much'. For this test, you might as well reduce it somewhat - watch the
"available physical memory".
Now, create an app (using the latest IBX) that stores some blobs into the
database - directly, not using any middle layer (like MIDAS) - just a
2-tier app, nothing fancy. Run it from the server to avoid any network
problems (provided tcp/ip is working ok).
Use a few smallish files (1KB - 2KB - 10KB - 100KB) as the source for the
blobs' data - you'll at least know their size.
If it works OK on the server, try to do the same from a client (over the
network).

Any interesting observations?



>
> Database header page information:
> Flags 0
> Checksum 12345
> Generation 195
> Page size 8192
> ODS version 10.0
> Oldest transaction 187
> Oldest active 188
> Oldest snapshot 188
> Next transaction 189
> Bumped transaction 1
> Sequence number 0
> Next attachment ID 0
> Implementation ID 16
> Shadow count 0
> Page buffers 0

I don't remember the default, probably quite small.
Too small for serious use, maybe. Perhaps suitable for your server (with
384MB RAM).

> Next header page 0
> Database dialect 3
> Creation date Dec 31, 2004 10:26:12
> Attributes force write
>
> Variable header data:
> Sweep interval: 20000
> *END*
> ===============================================
> Thanks in advance
> Regards, Hardy
>

--
Aage J.