Subject Re: Hardware for the best Firebird performance
Author Adam
--- In, "jasajona" <jasajona@...> wrote:
> Hello,
> What are most important things when choosing server hardware for
> Firebird?

That depends on what the database is for. Generally you need to
consider reliability, RAM, CPU, and drive speed.

> There will be big database (500mb) with tons of stored
> procedures that sometimes takes 10minutes to execute. There will be
> max ~5 simultanious connections.

This is not a 'big' database. Given that the procedures take 10
minutes, it won't make a difference whether that is actually 9 or 11
minutes, so speed is not going to be the deciding factor.

> I gues there should be 2 processors server. What to choose Intel or
> AMD. Dualcore or real two processor server?

Toss a coin.

Real 2 processors are preferable and Classic architecture will behave
better than Superserver.

> Processors cache, bus
> speed, CPU Hz?

Depends on your needs, doesn't have to be cutting edge, but a lot of
garbage collection work is CPU intensive, so the faster the better.

> What type of rocessor is the best?

Not even going there.

> What feature is
> important for memory?

Faster RAM is good, but having enough to cache and sort without
resorting to temp files on disk is more of a benefit.

> Do I need RAID, does it make sence if there will
> be enough RAM?

RAID is different to RAM. There are lots of different RAID
configurations. Whilst some people use RAID to increase read
performance, it is more usually used as a safety net if a hard disk fails.

I recommend hardware based RAID 5 with SCSI 15K hard drives. If that
is going to go beyond budget, then a hardware based SCSI RAID 1 mirror.

You could also use a separate physical drive to handle the OS and
dedicate the RAID to the database, but I think that would be overkill
for your scenario.

Classic allocates somewhere around 10MB per concurrent connection as a
default. Of course if you have very few connections and a dedicated
server, you can edit the cache sizes in firebird.conf and give each
connection 300MB, providing you have enough RAM.

If the total RAM in use exceeds the amount of RAM physically in the
system, you need to reduce the cache size as the cache is working
against you.

For such a modest task though, you could probably get away with a
standard desktop machine.