SBD:告别自制文件系统
SBD: We Have a Filesystem at Home
我们曾以为越努力构建基础设施越好,结果却像在家费力做意大利面。Sprites 最初使用深度定制的 JuiceFS,但复杂的元数据数据库和对象存储难以保持同步,导致数据损坏风险。经过对 400 个 Sprites 的严苛测试,我们意识到修复工具无法掩盖架构缺陷。现在推出了 Sprites Block Device (SBD),它直接将对象存储呈现为 Linux 块设备,配合 ext4 文件系统。SBD 消除了独立的元数据数据库,实现了单一数据源,让检查点更简单可靠。就像超市买的意面,简单却有效。
基础设施的目标是制作那袋 1 美元的意大利面:一件简单但运作良好的事物,而不需要你花一周时间从厨房角落刮面粉。
HN 评论区
27- dangoodmanUT
我真的很喜欢 fly.io 的帖子,它们的写法通常让人感觉非常有人情味。我过去会通读所有文章,因为文笔很有趣,其次有时主题也吸引人。
除了看到这样的句子:
> The difference is that a Sprite now stops and says so instead of carrying on with a disk it can’t vouch for
这读起来明显像是 LLM 写的。也许是我被强化学习(RL)训练得能识别 LLM 的笔触,也许是作者读了太多 Claude 写的作品而被强化学习成了这种文风,但我很希望能看到 fly.io 博客那种人情味回归。
- bennettnate5
> I have unkind things to say about people who make their own pasta
第一句话我就没跟上;我家另一半做的手工意大利饺子无与伦比。自制意面做起来很享受,味道也比那种$1的纸盒装意面好太多。
- aftbit
老实说,我不明白 Sprite 是什么,也不懂它们为什么需要自己那一类的块设备。所有的痛点似乎都回到了试图将运行在块设备上的 Linux 文件系统映射到对象存储上。他们完全可以……别这么做?
他们之所以这么做的原因如下:
https://fly.io/blog/design-and-implementation/
但这感觉像是他们在这里做出了错误的权衡。