在实际环境中,通过svc管理的存储,创建lun的时候,怎么能使性能最好。如果在存储上面创建池,然后创建lun,将lun映射给svc后。svc会将lun认为是mdisk重新加到pool,然后再划lun,映射给主机。这样的二次条带怎么避免热点数据造成的性能影响。
可以用存储配置闪存盘,svc的自动分级存储功能实现热点数据自动迁移到闪存盘。
收起你的问题我能够完全理解,而且为此单独开过case。区别在于场景不是SVC,而且另一家存储虚拟化产品。
专业回复是:不建议这么做。
上层存储更接近主机,所以可以更针对性对生产数据性能做优化,但是最终磁盘性能又受影响于下层存储(pool)的不稳定,因为下层存储也在做同样的事,对性能是时刻调整的,最终上层Pool会做很多无用之功而且Striping中的磁盘(性能)不稳定。
因此,最好建议是不要做成double pool。底层以更接近裸设备为主,关闭Pool,Thin Provisioning等功能。另一方面,auto-tier存储自动分层也是如此,这会对“热点数据”产生双重的判断标准,例如:第一层某个“数据块”也许是热的,而下面的存储,也许等下一个周期才能判断出优先级,最终需要避免这种double-tier设置。。不要这么做。
如果不考虑分层的方式的话,RAID组中的磁盘尽可能的多。
收起热点数据不是二次条带造成的,热点数据时应用产生的,通常是应用密集的访问某些区域数据因此造成热点。SVC的Volume来自pool内所有可用的mdisk,而mdisk又来自后端存储的池,那么确实是二次条带化的效果。单SVC的池的基本单元默认是1GB,是宽条带模式。来自后端的mdisk,如果划分的较大,那么在SVC端池化时,临近空间在后端属于同一个array的概率就小。
有一本专门的performance best practices红皮书,说明了IBM每个存储的LUN的划分建议。对于其它类似的存储,道理是相通的。
实际上,测试结果也表明,宽条带模式下的Volume,性能也并未出现下降的现象。