Home | About the Storage Advisors | Adaptec Trusted Storage


Getting the most out of your database

Posted in General, Storage Applications, Platforms, Storage Interconnects & RAID, Storage Management, Application Environments, Advisor - Neil by Neil

There seem to be two types of speed-freaks in the storage world … streaming (video) and database afficionados. I thought I’d point out a few issues that the database lads should think about when setting up their systems.

There are a couple of issues where database differs from streaming … firstly in drive type. If you are running SQL then you need SAS. I once tried to get our marketing boys to go with “SQL=SAS” in an advertising campaign, but they just didn’t seem to think it had enough sex appeal. Whatever the appeal level, it’s a pretty basic but important fact … if you are running a database you need fast drives with low seek times - therefore 15K SAS. SATA drives are great for basic fileserver and video streaming, but they don’t cut the mustard in database.

The next area of consideration is RAID type. Don’t use parity RAID for database. By that I mean that RAID 5, 6, 50 and 60 are out for database … they are fine on reads, but due to the characteristics of these RAID types their speed on small writes (which database tend to do a lot of) are slow.

Instead, you need RAID 10. Some people will use a mirror (RAID 1) which is OK at a pinch, but RAID 10 is best. It is very fast for both reads and writes, gives good redundancy and is scalable in units of 2 (start with 4 drives and scale up by pairs).

The last piece of the puzzle is something you may not be aware of. Adaptec have an “OLTP” performance option on their Series 2 and Series 5 Unified Serial RAID cards. OLTP stands for on-line-transaction-processing, which is the marketing lads way of saying “database” (since they have trouble speaking real English).

This setting changes the underlying caching characteristics of the card to optimise it for the types of reads and writes that we see from database applications. Cache page size, write cache, IO sorting and prefetch (read ahead) are all modified. These settings are not user-configurable, it’s just a set and forget option.

We’ve seen performance gains up to 30% in some environments which is a performance gain not to be sneezed at. There are further advances in technology coming soon to improve database speed even further but I’m not allowed to talk about those yet :-)

As you know I’m an eternal optimist and only speak of upsides, so what are the problems with going down this path? Firstly there’s the mixed environment server. If it’s doing streaming and database then this probably won’t help. As a matter of fact if it’s doing both these tasks then nothing much will help. The other “downside” that people come back at me with is the cost of RAID 10, especially on SAS drives.

Sure, it uses a lot of drive space and costs heaps, but you have to compare that to saving money on building the server vs having your users wait a second or two every time they access the database. I’ll leave it up to the accounts to do the year-on-year calculations but I know that people ringing me up for advice want speed, and this is the basic formula to get just that out of your database.

Ciao
Neil

Leave a Reply