大道至简,知易行难
广阔天地,大有作为

【震惊】1/10^16的概率被我们碰上了——记SSD位反转(bit flip)一例

今日遇到了SSD位反转(bit flip),表现为ClickHouse读取时报校验和失败:

可见ClickHouse的实际使用场景中所面对的规模确实需要考虑对位反转问题,但搜索该问题资料并不多(https://github.com/marliotto/clickhouse-bitflip,有一个go的修复实现可以学习原理),可见位反转问题的极低概率。

多次尝试排除报错中的如下可能:
1、网卡RAM问题
2、交换机RAM问题
3、交换机CPU问题
4、服务器RAM问题(该服务器使用的是非ECC内存)
因此基本确认是存储问题:

Clickhouse位反转报错

ClickHouse位反转报错

参考资料1中针对SSD常见的概念有较为详细的描述,其中针对BER:

BER、RBER及UBER

BER、RBER及UBER

该数据所在的SSD是一块消费级aigo 2TB P7000,写入量16TB:

AIGO P7000 2TB S.M.A.R.T

AIGO P7000 2TB S.M.A.R.T

对比一块近期替换下的重载500GB 970 EVO,写入量29TB,寿命剩余97%,但竟然已经用到了4%的Spare Space。可见,三星主控并没有把Spare Space考虑到寿命百分比中。之前按直觉果断将其替换掉,在一定程度上是正确的:

970 EVO S.M.A.R.T

970 EVO S.M.A.R.T

再对比一块写入量只有4TB的2242盘位256GB TOSHIBA RC100,剩余寿命仅剩76%(当然,这与东芝的保修策略有关):

RC100 S.M.A.R.T

RC100 S.M.A.R.T

早在2017年,参考资料3上有人对此进行过讨论:

水木有关UEBR的讨论

水木有关UEBR的讨论

其中提到7年前Reddit上第一个帖子:

水木有关UEBR的讨论2

水木有关UEBR的讨论2

Reddit上的原贴如下:

Statistics on real-world Unrecoverable Read Error

Statistics on real-world Unrecoverable Read Error

印象中很久之前曾有文章提到RAID5单盘失效重建期间读挂另一块盘的概率非常高,并非危言耸听。

翻了几个常见消费级产品的手册,其中基本都只提到了TBW而没有提到UBER:

980 PRO

980 PRO

970 PRO

970 PRO

980

980

SN850

SN850

对比常见的企业级的Intel S4510:

Intel S4510

Intel S4510

可见,虽然同样都是TLC,但企业级SSD写入量达到了6.5PBW,是桌面级产品的5倍。而且,明确标识了UBER,为1/10^17。

参考资料:
1、https://sspai.com/post/69074
2、https://ark.intel.com/content/www/cn/zh/ark/products/134924/intel-ssd-d3s4510-series-1-92tb-2-5in-sata-6gbs-3d2-tlc.html
3、https://exp.newsmth.net/topic/88886a8a4c45d9da9479aed96ec2048b/2
4、https://www.reddit.com/r/zfs/comments/3gpkm9/statistics_on_realworld_unrecoverable_read_error/

转载时请保留出处,违法转载追究到底:进城务工人员小梅 » 【震惊】1/10^16的概率被我们碰上了——记SSD位反转(bit flip)一例

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址