On Sat, 10 Oct 2009, tak ar wrote:
Use the BBWC to maintain high IOPS when X25-E's write cache is disabled?
It should certainly help. Note that in this case your relatively small battery-backed memory is accepting writes for both the X25-E and for the disk storage so the BBWC memory becomes 1/2 as useful and you are wasting some of the RAID card write performance.
Some people here advocate putting as much battery-backed memory on the RAID card as possible (and with multiple RAID cards if possible) rather than using a slower slog SSD. Battery backed RAM is faster than FLASH SSDs. The only FLASH SSDs which can keep up include their own battery-backed (or capacitor backed) RAM.
Regardless, if you can decouple your slog I/O path from the main I/O path, you should see less latency, and more performance. This suggests that you should use a different controller for your X25-E's if you can.
At some report I have seen, write cache is necessary for wear-leveling. Should I switch off the X25-E's write cache?
I don't know the answer to that. Intel does not seem to provide much detail. If you want your slog to protect as much data as possible when the system loses power, then it seems that you should disable the X25-E write cache since it is not protected. Expect a 5X reduction in write IOPS performance (e.g. 5000 --> 1000).
The serser has RAID card, so I can use hardware(Adaptec's) RAID(the file system is ZFS). Should I use ZFS for the RAID?
Unless the Adaptec firmware is broken so that you can't usefully export the disks as "JBOD" devices, then I would use ZFS for the RAID.
I think the IOPS is important for mail server, so ZIL is useful. The server has 48GB RAM and two(ZFS or hardware mirror) X25-E(32GB) for ZIL(slog). I understand the ZIL needs half of RAM.
There is a difference between synchronous IOPS and async "IOPS" since synchronous writes require that data be written right away while async I/O can be written later. Postponed writes are much more efficient.
If the mail software invokes fsync(2) to flush a mail file to disk, then a synchronous write is required. However, there is still a difference between opening a file with the O_DSYNC option (all writes are synchronous) and using the fsync(2) call when the file write is complete (only pending unwritten data is synchronous).
A lot depends on how your mail software operates. Some mail systems create a file for each mail message while others concatenate all of the messages for one user into one file.
You may want to defer installing your X25-Es and evaluate performance of the mail system with a DTrace tool called 'zilstat', which is written by Richard Elling. This tool will tell you how much and what type of synchronous write traffic you have.
It is currently difficult to remove slog devices so it is safer to add them if you determine they will help rather than reduce performance.
Bob -- Bob Friesenhahn bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/ GraphicsMagick Maintainer, http://www.GraphicsMagick.org/ _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss