|
Or do we buy an integrated storage solution ? Important is that the RO and
RW storage is as fast as possible.
QUESTION:We have a constantly updated relational database with mostly random writes
and reads.
The database size will be 60 GB in total. It will run in a UNIX (IBM or SUN)
environment.
We want to splitt up the database in a Read Only (RO) and a Read Write (RW)
database (probably running on 1 server). Clients will access (query) the RO
database. The RW and RO databases will be switched every hour. So the RW
becomes RO and vise versa. The new RO database now contains the newest data.
The new RW database will be updated with the transaction log (which will be
fast).
Now we need to decide on purchasing disk storage. 1. The RO storage (60 GB) needs maximum read performance. It doesn't need to
be failsafe,
if the RO crashes we can switch to the RW or vise versa to service the
end-users. In the
meantime we can recover the crashed diskset. 2. The RW storage (60 GB) needs maximum read/write performance. It doesn't
need to be fail-safe. 3. Then we need several fail-safe filesystems to store transaction logs.
Let's say 2 * 40 GB. 4. Also we need storage (200 GB) for other things.
For the RO/RW storage, do we buy 2 fast 60 GB disks or should we consider
for example RAID 0 with 5 * 20GB disks.
Or do we buy an integrated storage solution ? Important is that the RO and
RW storage is as fast as possible.
ANSWER: Your need depends on the number of users and transactions per time unit.
A single 15000 Rpm disk will give you approx 170 - 200 random accesses
per second. IIRC the TPC-C benchmark transaction was 27 accesses.
That should then give you maximum some 6 to 7 transactions per second.
from a single disk. ( provided it does not do something else as well )
If you know the number of diskaccess per transaction in your app
you will ofcourse end up at a different result.
How large is your user community ?
How many transactions per hour can they practically produce ?
Are you doing Batch runs ? (basically producing transactions As Fast as Possible)
If you are going to use the RO part as a datawarehouse it will be almost impossible
to size. If you allow someone to type " select *item from whatever "
and you have to read the complete database to satisfy the query, performance is gone.
Always buy more disks than you need
|
|
|
|