Fly.io ersetzt sein selbstgebautes Dateisystem durch ein simples Block-Device

SBD: We Have a Filesystem at Home

Fly.io ersetzt sein selbstgebautes Dateisystem durch ein simples Block-Device

Sprites speicherte seine Daten zunächst in einer stark modifizierten JuiceFS-Version, die Metadaten in SQLite hielt. Das führte zu widersprüchlichen Manifesten und Datenverlust. Das neue Sprites Block Device (SBD) präsentiert einen Bucket als Block-Device über NBD, sodass ext4 direkt darauf läuft. Metadaten und Blöcke liegen zusammen, Checkpoints sind einfache Block-Snapshots. Laut Fly.io ist SBD um Größenordnungen zuverlässiger und ersetzt JuiceFS vollständig.

Ein Dateisystem mit einer Metadaten-Datenbank hat zwei untrennbare Komponenten: die Chunks im Bucket und die Datenbank, die erklärt, wie diese Chunks zusammenpassen. Wenn sie übereinstimmen, hast du Dateien. Wenn nicht, bist du am Arsch.
  1. dangoodmanUT

    Ich mag die fly.io-Posts wirklich, sie sind normalerweise so geschrieben, dass es sich sehr menschlich anfühlt. Früher habe ich alle gelesen, weil das Schreiben interessant war und erst zweitrangig manchmal das Thema.

    Außer wenn ich Sätze wie diesen sehe:

    > Der Unterschied ist, dass ein Sprite jetzt anhält und das sagt, statt mit einer Disk weiterzumachen, für die es nicht bürgen kann

    Dann fühlt es sich deutlich nach LLM geschrieben an. Vielleicht werde ich per RL darauf trainiert, LLM-Autorschaft zu erkennen, vielleicht wurde der Autor per RL darauf trainiert, so zu schreiben, weil er so viele von Claude verfasste Werke gelesen hat, aber ich würde gerne die Menschlichkeit der fly.io-Blogposts zurücksehen.

  2. bennettnate5

    > Ich habe unfreundliche Dinge über Leute zu sagen, die ihre eigene Pasta machen

    Du hast mich schon beim ersten Satz verloren; die hausgemachten Ravioli meiner besseren Hälfte sind unvergleichlich. Hausgemachte Pasta zu machen ist eine Freude und schmeckt so viel besser als 1-Dollar-Pappschachtel-Pasta

  3. aftbit

    Um ehrlich zu sein, verstehe ich nicht, was Sprites sind oder warum sie ihre eigene Art von Block-Device brauchen. Der ganze Schmerz scheint darauf zurückzuführen zu sein, dass man versucht, ein Linux-Dateisystem, das auf einem Block-Device läuft, in einen Object Store abzubilden. Sie könnten das einfach ... nicht tun?

    Hier ist, warum sie es tun:

    https://fly.io/blog/design-and-implementation/

    Aber es fühlt sich an, als hätten sie hier den falschen Kompromiss gemacht.

Mehr von diesem Tag

2026-10-22