Subject Looking for advice on server optimization/possible upgrade
Author Tiago Mikhael Pastorello Freire
Dear all,

Currently I have firebird 1.5.3 and a healthy development going on our
internal database system (web interface, php and a bit of the ajax buzzword).
Our machine is a single core 1GB Athlon 64 3000 which was pretty beefy when we
got it (4x200 GB sata disks on RAID 5). Our forecast is to have a surge in
our server load as we open up the interface for our clients to view
information and request reports from it.
We are going to receive on average 100 inserts of documents from around 10
labs, plus 'opaque' documents (BLOB data, signed pdfs) which will certainly
come in, one for each lab record.
our clients are also going to insert data requests on the database, we might
have an average of 10 ordinary requests per day from around 1000 clients.

This might not seem much, but all this data is built on several layers with
lots of foreign references for integrity and fairly complex stored procedures
to cross check data to make sure some client requests can be fulfilled.
Previously all this data checking was manual, now we expect to cut quite a
bit of work with the automated checks. Cutting out all this 'legwork' and a
good part of human error out of the equation is our main goal in this
project.

Eventually we will also have other people (our clients' clients) checking on
our database for reading information.

We will have too keep all data in for at least 5 years before we can dump
anything out, so we will certainly have this database growing and growing.
Not to mention the number of clients is growing, so we are sure to have a few
million records in this database over time.

I am wondering if what we have is fast enough, or if we will need to plug in
another gigabyte of memory, or even switching to a quad-core to sift through
all records faster.

So, I would like to ask for advice:
1) Are there configuration options I should be aware of? I don't want to, for
example, limit the memory usage to 128MB when I have a server with 1GB just
for this DB.
2) Are my machine's specs enough for the time being?
3) For how long?
3.1) When should I throw in an extra GB?
3.2) Will investment on a quad core system be justifyable?

Thanks to all,

Brazilian Joe