Database performance and ssd (solid state disks)

Posted by jbr on 08-Jun-2009 05:39

Hi all,

Is there anyone who has any experiences with the database performance and integrity when ssd disks (solid state disks) are used? I know they're still expensive but maybe they're worth when performance increase drastic.

All Replies

Posted by kevin_saunders on 08-Jun-2009 07:18

I suspect the performance increase will only be 'really noticable' if your DB is seriosuly disk bound, or during dump/load operations.

That said, I do have a SSD in my laptop and the performance difference is amazing during disk intensive operations (boots up in 19 seconds)..

Posted by jbr on 08-Jun-2009 07:21

Thx Kevin,

This means that making reports on a large database (with a lot of disk read i/o) will be much faster. I'm curious how much...

John

Posted by Thomas Mercer-Hursh on 08-Jun-2009 11:32

Remember, though, that a properly tuned DB is typically getting 99% hit on -B, i.e., not going to the disk at all, so whatever performance boost you get from the SSD is only impacting

Posted by ChUIMonster on 08-Jun-2009 12:47

1% of 10,000 reads/sec (which is a very modest read rate for many applications) is still 100 reads -- so even if your buffer hits are at 99% you may be disk bound.

Anyhow, this isn't exactly what was asked but...

The best use for RAM is as close to the db as you can make it.  That's the -B buffer.  Each layer of caching is substantially slower than the previous one.  -B is the fastest because it is in the same address space as the process which needs the data.  The operating system's file cache is next but you incur system call overhead and, probably, a context switch to get to it.  The cache on the disk controller (or SAN) is next and suffers from yet more handoffs and so forth...  All of these layers still make sense, after all a disk is literally a million times slower than the RAM in the CPU cache, but by the time you get to the disk (or the SSD) you have piled up quite a lot of latency so don't skimp on -B because you happen to have an SSD (or whatever else the magic bullet of the day may be).

Given the choice between spending X dollars on RAM that I can use for -B and spending the same X on an SSD, -B should always win.

But if you just happen to have an SSD, maybe because before we know it all commodity laptops will come with them by default (just like multi-core CPUs have become ubiquitous), then I would expect it to do a very good job at reducing the latency of whatever leftover IO ops you might have.

To the original question:

I have not worked with any directly.  But I have been following developments and it is interesting to note that there can be very substantial performance differences between brands and that write performance especially may vary substantially.

Posted by jmls on 08-Jun-2009 13:07

Isn't the biggest gain from SSD's related to write speeds ? It makes sense that reading should take place from the DB buffer pool, and therefore SSD would have much less of an impact.

Posted by ChUIMonster on 08-Jun-2009 13:21

Yes.

But writes (should) be handled asynchronously by the APWs (that's the "A") and thus should not generally have an impact on a user's perception of performance.  Most of the time.  Unless said user is running a benchmark

I also believe that somewhere in the thread a reference is made to looking forward to reports running faster.

This thread is closed