Subject SV: [firebird-support] Important settings for perfomance
Author Poul Dige
> Hi all,
> our company is developing a system using firebird since years. This system is
> a "real-time" production steering application.
> This means for us, that our applications need to perform a lot of different sql
> (with join over some table) in the shortest possible time. Today if we
> encounter a slow application behavior, we try to optimize the sql's...
> I just wonder, what performance would be possible usind firebird, as we are
> planning to switch to a more flexible database structure, and this will for sure
> increase the db load.
> We are using the superClassic with around 30-50 db- users connected. We
> need to keep our db as small as possible to keep the performance on a high
> level. This means every year we need to copy away the old data. Actually the
> fb- process does not often claim to the CPU's limit, so i think the bottleneck
> are the HDD's, where we are using usuably RAID 1 with fast server HDD's.
> My question:
> Is there any complete documentation regarding all the performance critical
> points for the firebird db?
> p.e.:
> What processor to use with which "db- usage- pattern"?
> -->Up to how many core provide more speed?
> How to optimally use page size settings (RAM)?
> What about SSD's? Which modell is good for productive usage?
> OS- settings, p.e. cluster size of file system?

Our experience with SSD is that the basic speed in case of just a single connection is improved a bit, but once you have many connections the SSD is hardly affected by the number of connections whereas the mechanical disk is suffering very much with the number of simultanious connections.

However, page size and buffer size is quite important for SC/CS-configuration as well - you must definitely test the system with different settings (changing the buffer size is quite easy).