• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

SQL Server / Raid Controller / SSDs

ldeep

n00b
Joined
Aug 23, 2011
Messages
44
Dear all

I've bought 4 Samsung 840 PRO SSDs and installed them on a 2011 SuperMicro Mainboard with LSI 2008 RAID Controller. RAID5 Read-Performance is great, but writes are weak (My guess is the lacking write-back feature)

Now I need to buy a new RAID Controller and I am asking myself which one would be the best.

SQL Server wise I need 3 drives: Database Data files, Database Log files and a drive for the TempDB.

So I could think of several scenarios: 3 x RAID1 (performance weak?) or one RAID5 and one RAID1 (Data,Log together and TempDB on RAID1) or only one RAID5 for all drives.

Performance wise I'd think that 3 x RAID5 would be the best? But that would need 9 Disks, so this isn't really an option.

Someone has experience with this? My RAID controller choice would be LSI 9271-8i with Cache Vault. Is this a suitable option?

Any help is appreciated!
 
Make sure you get the BBU so that you can safely enable write back cache.

Also for databases RAID 10 is probably the best choice if you need raid at all. Perhaps you would do better (at less cost and better performance) with a single Intel DC 3700.

On top of that raid is not a substitute for a backup so whatever option you use make sure you have a backup (or several with at least 1 offsite).
 
Last edited:
Honestly you need to think about moving away from Raid5. Raid 1 or raid 10 like dres suggestion would be best. Stop thinking budget + server.
 
Maybe there are more aspects than you have thought ex

- LSI 2008 is great as an HBA or with Raid 1/10.
It is bad for Raid-5 and offers no protection agains write hole problems (no cache/BBU)

- SSDs like the Samsung are great per datasheets but under heavy load, write performance can go down to 10%. You can add 10-20% overprovisioning with a host protected area/ HPA to reduce this problem.

- SSDs like the Samsung have no protection against a power outage during writes.
If you use ZFS, you can enable sync write with a dedicated ZIL to solve this.

- Raid-1/5/6 on a non-copy-on-write filesystem can produce a corrupt filesystem on a crash during write.
You can reduce this problem with a cache+BBU Controller

- Raid-1/5/6 on a non-copy-on-write filesystem can produce an inconsistent raid on a crash during write.
You can reduce this problem with a cache+BBU Controller

- You can eliminate this with CopyOnWrite Filesystems like btrfs, ReFS, WAFL, ZFS

Raid 5/6 (or ZFS Z1/2/3) is great for sequential performance but IO performance is like 1 disk.
As you need mainly iops for databases, Raid 10 is better as it double iops.
In case of ZFS iops scales with number of vdevs so a 4 x mirrors gives 4 x iops of a single disk.
With SSDs (+ overprovisioning), you have enough iops, so you can use space efficient Raidlevels like 5/6 or Z1/2/3.


I do not know your config, but I would consider

- use CopyOnWrite filesystems with software raid
- use virtualization for the database OS (like ESXi)
- use a SAN for storage (Use ZFS/ OmniOS if NetApp is too expensive)
- you can virtualize the SAN (requires hardware virtualisation)
 
thx for the answers!

problem: the server is already productive (clustered, at least) so I need to buy a new RAID controller (with BBU/Cache Vault of course..). I can't change to ESXI and install a new OS or storage system. It is a physical server with Windows Server 2008 R2 installed.

So I could create a RAID10 using a MegaRAID SAS 9271-8i for better IOPS instead of RAID5.

Or should I create a RAID10 array on the onboard LSI 2008 controller? Wouldn't the new RAID controller be much faster than the older LSI 2008?

Short: I have a Windows Server 2008 R2, 4 SSDs and the possibility to use onboard LSI 2008 or buy a new RAID controller. I need as much IOPS as I can get.

Further suggestions?
 
Buy a pair of Intel S3700 + Raid-1 and use the onboard LSI 2008
or use the Samsung Pro in a Raid-10 with a overprovisioning of 10-20% (create a host protected area after a secure erase)
 
DB's are the only thing I will never skimp on. My servers are all Dell PowerEdge R620's with Intel 3700 SSD in raid10. I wouldn't run any other raid setting on a DB because iops and redundancy are most important, also most DB's never run that high on space so it's not really that bad.

The LSI 9271 is great, but you really do need to get the supercap
https://store.lsi.com/index.cfm/CacheVault/CacheVault/LSI00297/
You're gonna want the additional bracket also
https://store.lsi.com/index.cfm/Battery-Backup-Unit-(BBU)/BBU/LSI00291/

And a good budget alternative is http://www.amazon.com/ibm-options-46m0829-serveraid-battery/dp/B00CHXSFLO/ this is the card I use on all my object storage boxes. It's equivalent to the LSI 9260-8i, it even uses the same firmware.

@_Gea That's true of consumer SSD's but Intel enterprise ssd's will have protection http://lkcl.net/reports/ssd_analysis.html
 
Last edited:
As an Amazon Associate, HardForum may earn from qualifying purchases.
- SSDs like the Samsung have no protection against a power outage during writes.
If you use ZFS, you can enable sync write with a dedicated ZIL to solve this.

You can't "repair" a missing power loss protection on the pool disks by using a dedicated ZIL with power loss protection. At some point the data has to be commited to the pool and if the power fails just after that some of the committed writes may be lost. The chance of that happening may be lower than a data loss on the SLOG, but it is still there.
 
DB's are the only thing I will never skimp on. My servers are all Dell PowerEdge R620's with Intel 3700 SSD in raid10. I wouldn't run any other raid setting on a DB because iops and redundancy are most important, also most DB's never run that high on space so it's not really that bad.

The LSI 9271 is great, but you really do need to get the supercap
https://store.lsi.com/index.cfm/CacheVault/CacheVault/LSI00297/
You're gonna want the additional bracket also
https://store.lsi.com/index.cfm/Battery-Backup-Unit-(BBU)/BBU/LSI00291/

And a good budget alternative is http://www.amazon.com/ibm-options-46m0829-serveraid-battery/dp/B00CHXSFLO/ this is the card I use on all my object storage boxes. It's equivalent to the LSI 9260-8i, it even uses the same firmware.

@_Gea That's true of consumer SSD's but Intel enterprise ssd's will have protection http://lkcl.net/reports/ssd_analysis.html

thx dude! so ill buy cache vault, lsi raid and bracket and will create raid10 with my ssds! do you create separate VDs for tempdb, data and log files? or do you keep them all on the same VD?
 
As an Amazon Associate, HardForum may earn from qualifying purchases.
I tend to value simplicity over anything else, and I haven't ran into a scenario where I'd want more than 1 VD. I either raid10 everything, such as with DB's or I have a raid1 OS drive with 3 dozen drives in jbod with zfs. My websevers just run 1 drive cuz, who cares about those :D
 
heys guys

so i bought the stuff: lsi 9271-8i, cache vault and updated latest fw.

i took the 4 Samsung 840 Pro and built a raid 10

but i get really slow performance. when restoring a sql database, it writes with 50-60mb/s. our SAS spinning drives are much faster.

i've created a VD with these options:

stripe size: 64kb
disk cache policy: enable
read policy: no read ahead
io policy: direct io
currnt write policy: write back
def. write policy: always write back

is there anything wrong? i'll post some benchmark results too
 
Here are some benchmark results:

I've tested like this:

- every test runs for 120 seconds
- 8 threads with up to 8 outstanding requests at once

1. test: random writes, 8kb

sas spinning disks:

IOs/sec: 1970.98
MBs/sec: 15.39


ssd raid10:

IOs/sec: 7880.00
MBs/sec: 61.56

2. test: random read, 8kb

sas spinning disks:

IOs/sec: 3845.36
MBs/sec: 30.04


ssd raid10:

IOs/sec: 124967.71
MBs/sec: 976.31

3. test: sequential write, 64kb

sas spinning disks:

IOs/sec: 9033.97
MBs/sec: 564.62

ssd raid10:

IOs/sec: 1572.41
MBs/sec: 98.27


3. test: sequential read, 64kb

sas spinning disks:

IOs/sec: 7357.98
MBs/sec: 459.87

ssd raid10:

IOs/sec: 29600.89
MBs/sec: 1850.05


Does someone has an idea why the sequential write is so slow?
 
Last edited:
Oh wow, I tested some settings and got nice results now:

Same 4 tests as before:

IOs/sec: 26603.17 IOs/sec: 128635.63 IOs/sec: 12689.54 IOs/sec: 31672.66
MBs/sec: 207.83 MBs/sec: 1004.96 MBs/sec: 793.09 MBs/sec: 1979.54

seems like fixed :)

New settings on Windows / Raid10 VD:

Stripe Size: 64kb (NTFS allocation unit size 64kb)
Disk Cache Policy: Enabled
Read Policy: No Read Ahead
IO Policy: Direct IO
Def. Write Policy: Write Through

Windows Disk Properties:

Policies: Enable write caching on the device [enabled]
 
Hmm raid controller not caching writes (and disabling the drive cache) for raid10?

One problem you have is 64K is small and dividing it in 1/2 does not help performance over a single SSD.
 
Last edited:
Back
Top