1

I am going to format 2 120GB Intel 320 SSD to be used for a high traffic Drupal server. The server had Xeon E1270 CPU and 32GB RAM. I'm using Debian Squeeze 64 bit. Here are my questions:

  • What file system format suits best in this case: ext3, ext4, xfs or something else?
  • I tend to not use RAID 1. format one disk to be devoted to mysql and the other to the rest of the filesystem. I think this would minimise disk i/o delay and also reduce the write cycles, so enhance the overall life expectancy of disks. How do you evaluate this approach?
5
  • 2
    This seems relevant.
    – MDMarra
    Apr 16, 2012 at 13:14
  • 7
    "I tend to not use RAID 1" a.k.a. "I tend not to value my data or its availability"
    – EEAA
    Apr 16, 2012 at 13:22
  • 1
    @ErikA, the 'a.k.a' is exactly what I put into question.
    – alfish
    Apr 16, 2012 at 13:43
  • @alfish so you're saying that you don't value the data on your server and you don't value the availability of the server? If that's the case, it changes everything.
    – MDMarra
    Apr 16, 2012 at 13:53
  • 1
    "How do you evaluate this approach" - With SSD's and what you describe, I'd advise you to use RAID 1, and have a good backup scheme in place. Why would you avoid RAID on a server? Apr 16, 2012 at 14:02

3 Answers 3

15

What file system format suits best in this case: ext3, ext4, xfs or something else?

Most likely either ext4 of xfs. Format it each way and test your workload.

I tend to not use RAID 1.

If you don't give a single shit about availability, then fine. If you do, I'd reconsider this approach.

format one disk to be devoted to mysql and the other to the rest of the filesystem. I think this would minimise disk i/o delay and also reduce the write cycles, so enhance the overall life expectancy of disks. How do you evaluate this approach?

If the only server process running on this is mysql, there's not a ton of benefit to running it on a separate disk. If it is a server that runs apache and other processes as well, this makes a bit more sense. There will be slight performance gains by putting it on a separate physical disk, but I honestly would run the disks in RAID 1 ten times out of ten.


Seriously, though. If you care one bit about the users of the server, it's negligent to not run RAID. Think about it like this:

How frequently do you take backups? If it's daily, imagine that a disk dies right before the next backup window. How would your users react to losing a day's worth of work?

Now imagine that it takes you 4-6 hours to restore from backup, test, and bring everything back up. Now your users have lost a days worth of work and haven't been able to use the server for the better part of the day.

Is it really worth the slight bit of extra performance? Probably not.

If you really want to separate your DB, get two more SSDs and run two RAID 1s or a single RAID 10.

20
  • 3
    SSD drives are going to fail, especially under high usage. I'd worry slightly less about lengthening their lifespans and more about planning for availability, given the inevitable death of the drive. Apr 16, 2012 at 12:56
  • 3
    SSD's are FAST and EXPENSIVE. But they BURN OUT faster than any magnetic disk, and it's not necessarily going to give warning, and it's not going to be pretty. Attempts you make to impose artificial wear-leveling will most likely not significantly increase their lifetime or reliability. Use RAID to keep the server running, unless you don't care about restoring data from scratch upon failure. With SSD's it could happen two months down the road or 2 years down the road. Apr 16, 2012 at 13:11
  • 2
    @alfish Enterprise SSDs are generally pretty reliable, but the Intel 320 is not an enterprise SSD. Consumer SSDs are usually just fine in your notebook, but when you put them in a server, you're asking for trouble. That said, you're asking questions that are outside of the scope of your original question. If you really want answers to them, you should ask about them in a new question.
    – MDMarra
    Apr 16, 2012 at 13:26
  • 3
    See codinghorror.com/blog/2011/05/… for discussion about failure rates of SSD devices. Apr 16, 2012 at 13:33
  • 1
    More discussion about SSD devices: failure rates, statistics, different vendors, etc: tomshardware.com/reviews/ssd-reliability-failure-rate,2923.html So, some Intels may be respectably good. Apr 16, 2012 at 13:39
3

Not to repeat myself:

and others:

So EXT4 is out of scope.

UPD.: And I'd add another link — consonant to my feeling that COW FSes …

1

With two disks you can go with either a Raid 1 (Mirror) or Raid 0 (striping). Of course for performance you're gonna pick Raid 0 over Raid 1. There's actually a wiki here that covers all the RAIDs, I'll look for and and link it for you. Be absolutely sure you have some sort of backup system in place to take image seeds of your data. If you lose one disk (in the raid 0) you lose it all.

For the file system you should probably go with EXT4. Here's a link where a few of the linux file systems where benchmarked against each other.

3
  • Might want to doublecheck the link for file system benchmarks. When I look I'm getting 404's when I click on the next page of the article. Apr 16, 2012 at 13:02
  • Updated the link
    – RomeNYRR
    Apr 16, 2012 at 13:10
  • If you use RAID 0 or 1 instead of keeping the disks separate, the system and database will be running on the same disk. IDK if that's desirable. For one, it makes the system very unresponsive when the DB is being used. Maybe it also causes performance problems in the DB. If you've got 2 nice SSDs to run a DB on, I'd also get a cheap HDD just for the OS and users' files instead of making the DB share the SSDs with that stuff.
    – sudo
    Jul 8, 2016 at 1:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .