找回密码
 加入我们
搜索
      
查看: 6004|回复: 12

[存储] RAID卡缓存与OS缓存的疑问

[复制链接]
发表于 2023-3-22 14:07 | 显示全部楼层 |阅读模式
本帖最后由 Satan023 于 2023-3-23 14:06 编辑

hi folks~有个问题请教下:

1.如果我的RAID卡带缓存(BBWC/FBWC),那么配置RAID的时候是否需要关闭磁盘自身的缓存?注意,我并不是指关闭RAID卡的缓存功能。



2.在1.的时候开启了磁盘自身的缓存,然后关闭了操作系统的写入缓存(diskmgmt.msc\磁盘属性\write-caching policy)那么所得到的结果是不是跟RAID里关闭磁盘缓存效果一样?

发表于 2023-3-22 15:02 | 显示全部楼层
RAID 卡设置里面叫做 Direct IO 和 Cached IO

如果你有缓存电池模块(或者闪存超级电容模块),开启了Write Back,那么磁盘这边开Direct IO 性能更加稳定。
其实开Cached IO性能也没啥大差别。。。。照样用

操作系统那边默认就好,不需要改,改了也对磁盘这边没影响,
因为做完阵列以后,阵列成员盘对于操作系统已经不可见了。
 楼主| 发表于 2023-3-22 15:07 | 显示全部楼层
Mufasa 发表于 2023-3-22 15:02
RAID 卡设置里面叫做 Direct IO 和 Cached IO

如果你有缓存电池模块(或者闪存超级电容模块),开启了Writ ...

direct IO、Cached IO和drive cache两回事吧

drive cache disable.jpg
发表于 2023-3-22 15:43 | 显示全部楼层
Satan023 发表于 2023-3-22 15:07
direct IO、Cached IO和drive cache两回事吧

RAID卡的drive cache 是用接在RAID卡上的SSD, 那么你这种RAID卡, 只能是SATA/SAS SSD。 算了吧, 随便一个企业nvme做cache都比这些好。
卡上的DRAM 缓存倒是作用明显的, 开了write back, RAID5 就丝滑了

总的来说, 大部分硬RAID 卡芯片的设计年代都在10年前了, 真没啥新玩意可玩了。 现在好的NAS OS比如群晖 威联通等即使软RAID5 也能跑满机械硬盘的速度了, 更不要说ZFS 之类堆DRAM的了。
发表于 2023-3-22 16:44 | 显示全部楼层
Satan023 发表于 2023-3-22 15:07
direct IO、Cached IO和drive cache两回事吧

默认是关闭,那就关闭,不管它。。。。

这种阵列卡我基本都是全默认设置,做出来直接用。
发表于 2023-3-22 17:46 | 显示全部楼层
本帖最后由 imyz 于 2023-3-22 17:47 编辑

1. 是否需要关闭 HD 自身的缓存,我目前没有找到过官方的说明或材料讲这一块,我的理解是:不强制也不推荐,意思就是说不论 BBWC 还是 FBWC,RAID 卡在设计过程中仅考虑 RAID 板载的 Cache,姑且称它作一级缓存?然后 HD 本身的 Cache 可以视为二级缓存;

2. 操作系统的 Cache,实际上是 HD 通过该 OS 初始化/格式化并建立了文件系统后,在该文件系统分配的磁盘空间中分配一块特殊区域来作为读写缓存,再基于我上面的 1.,它可以被视为三级缓存。更何况你已经建立了 VD,单盘的 Cache 本身对 OS 也是不可见的

以上是我的理解,若有错也请指正
发表于 2023-3-22 20:14 | 显示全部楼层
如果手头有卡的话可以自己测试一下的:
设备缓存最好开启,对于持续读写非常有帮助
卡的缓存对于非持续读写非常有帮助,如果撑爆了性能会快速下降
系统缓存和卡的类似
发表于 2023-3-22 21:29 | 显示全部楼层
1. 没必要关,影响不大
2. 不是一回事,1里的磁盘缓存是指的HDD自带的硬件RAM,这里指OS下给块设备在内存里划分的一块缓存区域。普通应用关/开随意
 楼主| 发表于 2023-3-23 09:22 | 显示全部楼层
网络上讨论这个问题的很少,我找到一篇有意思的博客:
Dell PERC / MegaRAID Disk Cache Policy
这篇博客是建议关闭磁盘自带的硬件RAM,即问题1里面的东西,前提是raid卡具有BBWC/FBWC的缓存。

问题2我搜了下资料如果是AD、SQL、具有重删功能的备份服务器之类的需要数据确保写入的场景需要关闭该功能。

不过我还是有一个疑问,发这个帖就是因为我一台服务器无法开启2的功能,提示““windows 无法更改此设备的写入高速缓存设置”;我现在搞不清楚是不是因为什么原因开不了。
发表于 2023-3-23 11:02 | 显示全部楼层
本帖最后由 stonecold 于 2023-3-23 11:12 编辑

在老一代的Raid卡里,HDD组阵列的话选Cache IO, Direct IO适合用SSD做阵列的情况, 主要是选Cache IO会降低SSD的IOPS

前阵子打算把家里HDD的阵列更换成用SSD做阵列,研究了一下最新的Dell H750阵列卡,发觉需要匹配它家的硬盘笼子才行,搜索了1下也没有网友玩过的例子,参考资料太少故放弃
发表于 2023-3-23 11:31 | 显示全部楼层
阵列卡建立阵列以后磁盘就由阵列卡接管了,操作系统看到的就是你的虚拟磁盘了~
发表于 2023-3-23 12:58 | 显示全部楼层
好问题绑定,现在不管SSD 还是HDD缓存 都比较大,所以设置 Direct IO也没事。可能重组RAID56的时候Cache IO更好吧。
 楼主| 发表于 2023-3-23 14:05 | 显示全部楼层
fafnirken 发表于 2023-3-22 21:29
1. 没必要关,影响不大
2. 不是一回事,1里的磁盘缓存是指的HDD自带的硬件RAM,这里指OS下给块设备在内存里 ...

我开OS写入缓存的时候提示”windows 无法更改此设备的写入高速缓存设置“,所以这个问题跟1里面的drive cache被关没有关系喽?
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2025-2-1 20:39 , Processed in 0.017982 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表