RAID5 的数据重建真的很糟糕么?

2020-07-03 08:48:44 +08:00
 7DLNU56W

最近准备组一个家用的小型 RAID5,在网上查了一些与 RAID5 相关的内容,总体感觉就是 RAID5 重建数据非常慢,甚至有一篇文章说重建了一周才完成 17%,但这些内容都是很早发布的了,不知道现在还有没有参考价值,用过 RAID5 的朋友们,RAID5 的数据重建真的有这么糟糕么?

还有一个问题,有的文章说 RAID5 坏掉一个盘很快就有另一个盘坏掉,这个大家有遇到过么?

12400 次点击
所在节点    硬件
38 条回复
7DLNU56W
2020-07-03 14:47:16 +08:00
@goldenalex 个人觉得

这个设备独立没有计算能力必须依靠另一台主机的计算资源就是 sw,它自己也能计算在不连接电脑时同样能正常重建数据就属于 hw
k9982874
2020-07-03 14:49:25 +08:00
R5 最怕创建的时候再坏一块,所有数据灰飞烟灭。
loading
2020-07-03 14:50:08 +08:00
单盘大容量,raid5 火葬场。
goldenalex
2020-07-03 14:55:23 +08:00
@7DLNU56W 那这样看群晖的机器就算是 hw 了吧?重建貌似是不用连其他电脑的。。。
manzhiyong
2020-07-03 15:02:06 +08:00
raid5 用于快速恢复,提高安全性要靠备份,是两码事,一定分开处理
ryd994
2020-07-03 17:59:28 +08:00
@594duck raid10 的优点是性能而不是安全性。如果你有 4 盘,那 raid6 比 raid10 更安全,因为 raid6 可以容许任意 2 盘,而 raid10 有 1/3 的概率损毁。
如果你有 6 盘,raid10 不仅用盘多一块,安全性还比不上 raid6 。因为随机挂两块的情况下,raid10 依然有 1/5 的概率损毁。
但 raid10 不计算 parity,所以非常适合高随机写入的 SSD 阵列。因为随机写入意味着每个写入都要重新计算 parity 。如果只写 1byte,raid10 会影响 2 个盘,raid6 会写 3 个盘以及读剩下的所有盘。


@7DLNU56W
@goldenalex
群晖大部分是软件阵列。很多甚至没有 hba 。软阵列指的是单盘暴露给主机,CPU 管理阵列的写入。硬阵列指的是单盘隐藏(或者只可以通过特定维护 API 访问,不走工作负载) CPU 不参与阵列的写入与维护。操作系统只能看到虚拟单盘。
群晖虽然不需要外部主机管理,但它自己也是有 CPU 的,数据是在 CPU 是完成阵列操作的。
硬 raid 基本只有 raid 卡一种(少数情况是 USB 硬盘柜支持硬 raid )
核心区分是操作系统能看到和管理单盘。

@libook 3 是 by design 。因为 raid 的设计目标是可用性而不是数据安全。raid 虽然有 parity 但并不要求校验。而且 raid5 的情况下如果校验失败也只能报错,因为发现 1bit 的错误需要额外 1bit,纠正需要额外 2bit 。实际上一般读的时候跳过 parity 。这也是为什么 raid5 的性能比 raid4 要好。
zfs 有校验,scrub 可以检测并(在有额外冗余度时)修复冷错误。
ryd994
2020-07-03 18:01:43 +08:00
**如果你有 6 盘 raid10,那它用盘比 5 盘 raid6 多一块,可用容量一样
hjc4869
2020-07-03 18:24:50 +08:00
最好是用 3-way mirror
7DLNU56W
2020-07-03 19:40:07 +08:00
@ryd994 @goldenalex 哦,那可能是我之前的理解有点小问题,应该是,主机认为插入的就是“一块硬盘”数据在机器中再通过机器的运算分散存储在各个硬盘中就可以认为是 hw,如果主机认为插入的是多块硬盘,并由主机按照 raid 规则向每个硬盘里读写就算 sw 。


@ryd994 你说 RAID6 比 RAID10 更安全我很赞同,但好像支持 raid6 的设备会很贵。RAID5 的话,我目前觉得就是比 RAID0 多了一点点容错能力吧(虽然可能效果不是特别理想),不过这种出错的概率会很大么,会不会像 @ohao 说的那样,大多数用的都是好的,只有极少数出了问题,而用着好的都没有发文章,只有那少数几个发了文章?

另外,朋友们说的那个几个注意事项我都记下了,感谢大家的帮助,不过现在还有一个不解的疑问,为什么叠瓦式硬盘在重建数据的时候经常要数个月的时间呢? 4TB 左右的硬盘好像大多数都是叠瓦式的。
xpsair
2020-07-03 19:54:04 +08:00
@7DLNU56W 重建过程中应该会有覆盖写,而覆盖原有数据的写对叠瓦式硬盘的性能来说差不多是降维打击
zxz1007
2020-07-03 19:57:27 +08:00
只要使用的得当,R5 还是可以的,不过 R5R6,Z1Z2 都有个问题,需要同样容量的磁盘,家用的时候无法做到低成本平滑扩容,需要一换换一批。
所以我 Z1 用了几年换 Drobo 然后最终换了群晖,Drobo 和群晖的 SHR1,2 都能使用不同容量的磁盘,而且群晖的性能会比 Drobo 好很多。
十来年的实际使用来说,重建并不可怕,同样是挂了一块盘,RAID 花点时间重建数据就回来了,单盘的时候丢过 2T 数据,这就是差别。
ryd994
2020-07-03 19:58:05 +08:00
@7DLNU56W raid6 不也就是 raid5 多了一点点容错? raid 本来就是这样的技术
raid6 软件 raid 不贵,而且只要 CPU 不差,性能都很不错
支持 raid5/6 同时性能好的硬件 raid 都很贵。不贵的都是凑合实现的,性能好不了

raid5 的重建成功率可以计算的,网上有各种计算器。你可以查查你用的盘的 Datasheet,找到相关参数带入计算即可。实际情况肯定比理论计算更复杂。硬盘实际可靠性取决于使用环境,所以一般取 Datasheet 数值再减一两个数量级。同时阵列的可靠性还取决于你有没有及时更换硬盘,以及硬盘是否不同品牌不同批次

建议你了解一下叠瓦技术。简单来说,叠瓦盘写入一个磁道会影响隔壁磁道。所以必须先读出隔壁磁道再一起写入两个磁道。硬盘厂有各种优化,但还是会有坑的。
nifanle7
2020-07-03 20:47:57 +08:00
服务器做 raid5,dell 厂家推荐单块硬盘不要超过 2T 。
freelancher
2020-07-03 23:50:52 +08:00
?????我不知道说啥了。我们机房运维用的方案完全不一样。这样折腾。早晚会在家里折腾出一个数据中心来的。我都有点冲动在家里装个机柜了。。。
mxT52CRuqR6o5
2020-07-04 00:28:34 +08:00
Raid 扩展性比 zfs 好(zfs 扩容只能一组一组的往上加),但重建这块没 zfs 好,zfs 重建过程出问题不会直接失败,性能也更好
要体验 raid 的扩展特性又或是降低 raid 重建失败可能性得买最好的那种硬盘
ryd994
2020-07-04 03:06:06 +08:00
@mxT52CRuqR6o5 那就不是 RAID 了啊
RAID 是什么的缩写? Redundant Array of Inexpensive Disks
Inexpensive 才是重点。你用好的,贵的盘,那就违背了 RAID 的设计理念了。
你可以叫它 RAED:Redundant Array of Expensive Disks
0987363
2020-07-08 09:32:35 +08:00
@GM raidz1 不就是 raid5 么,虽然是软的😝
dobycody
16 天前
@ryd994 这个改写秒啊,我说哪个不对劲,原来是 Redundant Array of Independent Disks 的缩写

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/686736

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX