邮件系统存储设计问答

Posted by

问:

我们公司主要从事邮件系统方面的业务,所以,这是一个关于邮件系统存储方面的一个问题。

邮件系统数据的特点就是小文件多,并且目录多,一部分数据访问频繁,读写删除操作也频繁(活跃用户的数据),还有一部分数据基本不访问(非活跃用户),很少有读写删除操作。

当一个有40万用户的邮件系统,那么存放邮件数据的存储目录下面会有非常多的目录和文件(一个用户一个HomeDir,用户HomeDir下面存放用户的邮件),HomeDir至少40万个,每个HomeDir下面可能有用户的自定义文件夹。HomeDir下面存放的用户邮件数量多少不等,最多的可能有800封以上的邮件,平均每人30封邮件左右。大部分邮件大小在5-100K左右,也存在一部分带有较大附件的邮件,大小在1M-10M之间。

以上是应用特点的简单介绍,针对这样的应用环境,应该如何选择存储设备?做什么样的RAID能达到最好的性能?如何部署备份系统?

像类似这样的应用应该还有很多,例如:flickr、bababian等等这样的网络相册应用,应该和邮件应用类似,都是小文件,访问频繁。也很想了解他们是如何选择和部署存储系统的。

目前,我们的存储在使用一段时间后,只能使用df命令来查看磁盘空间,使用du命令查看存储目录占用空间的时候将会用掉非常非常长的时间,这个时间是绝对不能忍受的长。

使用备份方法是每天用rsync,将发生变化的文件同步到另外一个存储空间上,我认为这不是一个较为理想的备份方式,希望能再进行改进。

在RAID方面,我们基本上选择的都是用RAID5,也有使用RAID10,但是感觉这两者在性能上没有什么明显区别。不知您是否有测试存储性能方法及测试模型,我也想对我们系统中这种环境下的存储进行测试和分析,希望能找到最佳的方案。

sansky答:

你所说的几个系统具有频繁访问、随机访问、文件数量大等特点,对服务器和存储的第一个要求是高IOPS。我个人对存储系统的建议如下:

1、存储设备的的cache IOPS最好不低于12W,磁盘IOPS不低于7w,也就是说必须是中端以上存储设备,低端设备的性能不足以满足系统要求;

2、建议采用全光纤存储设备;由于总容量不大,可以选择146GB磁盘。如果考虑到价格,也可以选择高性能的FC-SAS存储。

3、磁盘访问的性能将会是整个系统的瓶颈。建议存储设备的磁盘端口不少于4个,配置不少于3个JBOD,SBOD最好。磁盘总数量48块磁盘最好,建议少于32块。否则磁盘太少,存储设备的性能发挥不出来。

4、每个RAID组中的磁盘数量8-12个,优选RAID5。

5、40个homedir最好分散在4个以上的RAID组中,也就是不同的LUN中。无论是windows还是linux系统,当一个lun中的文件数量过大时,其文件系统检索和访问能力多会大幅度减小。homedir分散在多个lun中,减少每一个文件系统中的文件数量。

6、多个RAID组的优先级高于每个RAID组中的磁盘数量。

7、对于备份来讲,如果考虑价格,可以选择用备份软件。如果投资允许,可以考虑CDP软件。

一点拙见,仅供参考。

65 条回复

  1. 绿茶
  2. haha
  3. smile_hua
  4. smile_hua
  5. windstar
  6. wangran