Subject | R: [IBO] Question about performance IBO/FireBird |
---|---|
Author | Enrico Raviglione |
Post date | 2004-04-13T18:53:11Z |
Hi Helen,
database (Advantage) and with this database there aren't problem when i
open a lot of query at start-up. For change my application as you have
suggest i must modify a lot of line of code and test all the module.
All my query use a MyTIBOQuery component derived from TIBOQuery, can i
modify it for do an "auto-open" when i need it. Can i hook some events
(like OnError) or some other and open my query trasparently to my
visual-component (like LookupComboBox) and to my coded instructions ?
why FireBird performance slow down so much ?
The same operation (made with a SP) on the same data take about:
8/9 seconds on 540MB DB
48/50 seconds on 670MB DB
3/4 second on 390MB DB
Do you think this is a normal behaviour or perhaps there are some kind
of problem ?
Best Regards,
Enrico Raviglione.
>>first
>>I have used IBO Monitor to see what happen when my application start
>>and discover if there are some looong query but the problem are not
>>localized in a specif point. All the startup-time are used by IBO for
>>prepare, send the query, load fields definition and then fetch the
>>first record for my 130 query. Can i reduce this startup-time ?
>
>Certainly. Don't open queries at startup time. Open them when they are
>needed. No human being can look at the output of 130 queries in the
>Minutes of using an application.Your reply are correct, but the application are converted from FoxPro
>
database (Advantage) and with this database there aren't problem when i
open a lot of query at start-up. For change my application as you have
suggest i must modify a lot of line of code and test all the module.
All my query use a MyTIBOQuery component derived from TIBOQuery, can i
modify it for do an "auto-open" when i need it. Can i hook some events
(like OnError) or some other and open my query trasparently to my
visual-component (like LookupComboBox) and to my coded instructions ?
>>2) The second problem seem to be a FireBird problem not an IBO problemthe
>>but i explain it. I found the problem on a "old" and slow Server. When
>>the database file size grow i see a big degradation of FireBird
>>performance. Attention not when the number of records grow but when
>>database file size grow!collected.
>>......
>>I test and verify that the problem exists also on more fast Server but
>>are not so evident and the performance degradation are not so
>>exponential!
>
>It's a mix of problems, not IBO, not Firebird, but a need to do
>housekeeping. The result from running on a restored database proved
>this. Nearly 20% of your database is garbage that hasn't been
>1) Uncommitted transactions 2) Rollbacks on queries that were openedbut
>never used 3) Doing lots of drops without sweeping 4) Maybe someindexes
>getting out of balance.and
>
>Use gfix -s[weep] as often as you need to. If your db is slowing down
>growing, you need to sweep more often. You will soon find out howoften
>you need to do it. You can do it while the database is active but youget
>more effective sweeping ( = "cleaner") if you do it when no users areYes i have a lot of garbage in my db after my copies/drop operation but
>logged in.
>
>You can also try periodically setting some of your big indexes inactive
>then active, when users are off-line. That rebuilds them.
>
why FireBird performance slow down so much ?
The same operation (made with a SP) on the same data take about:
8/9 seconds on 540MB DB
48/50 seconds on 670MB DB
3/4 second on 390MB DB
Do you think this is a normal behaviour or perhaps there are some kind
of problem ?
Best Regards,
Enrico Raviglione.