Lass mich die Walrus-Speicherung auf die einfachste Weise erklären, die ich kann, denn das ist der Teil, den die meisten Menschen anfangs missverstehen, einschließlich mir.
Die meisten von uns wachsen mit der Vorstellung auf, dass Speicherung so funktioniert: Du speicherst eine Datei irgendwo und sie bleibt einfach dort. Vielleicht macht jemand Sicherungskopien, vielleicht replizieren Server Daten, aber sobald sie hochgeladen ist, fühlt es sich dauerhaft an.
Walrus funktioniert überhaupt nicht so.
Bei Walrus existiert die Speicherung nur, solange jemand dafür bezahlt. In dem Moment, in dem die Zahlungen aufhören, sind die Speicheranbieter nicht mehr verpflichtet, deine Daten zu behalten.
Anstatt zu denken "Ich habe eine Datei gespeichert", ist es genauer zu denken "Ich habe angefangen, das Netzwerk zu bezahlen, um meine Daten am Leben zu halten."
Und dieser Unterschied verändert, wie Anwendungen sich verhalten müssen.
Hier ist, was tatsächlich passiert, wenn Daten hochgeladen werden.
Eine Anwendung sendet einen Blob, was einfach Walrus 'Begriff für gespeicherte Daten ist. Bevor die Speicherung erfolgt, zerbricht das System diesen Blob in Fragmente mit Kodierungstechniken, damit Teile über viele Speicher-Knoten verteilt werden können.
Jeder Speicher-Knoten stimmt zu, bestimmte Fragmente verfügbar zu halten. Aber sie tun dies nicht kostenlos. WAL-Token finanzieren, wie lange diese Knoten die Fragmente speichern müssen.
Wenn der Upload erfolgreich abgeschlossen ist, ist Folgendes wirklich passiert:
Speicheranbieter haben eine bezahlte Verpflichtung angenommen, Teile Ihrer Daten für eine bestimmte Zeit verfügbar zu halten.
Diese Verpflichtung wird im Protokoll aufgezeichnet. Überprüfungschecks bestätigen, dass Knoten noch die Fragmente haben, die sie versprochen haben zu speichern. Knoten, die Überprüfungen nicht bestehen, riskieren, im Laufe der Zeit ihre Rolle im System zu verlieren.
Daher wird die Speicherungskontinuität nicht vorausgesetzt. Sie wird kontinuierlich durchgesetzt.
Jetzt kommt der wichtige Teil, den die Leute übersehen.
Diese Verpflichtung dauert nur so lange, wie die Finanzierung dauert.
Wenn die WAL-Finanzierung aufgebraucht ist, sind Knoten nicht mehr verpflichtet, Fragmente zu behalten. Im Laufe der Zeit löschen sie alte Daten, um Platz für neue zahlende Verpflichtungen zu schaffen. Die Wiederbeschaffung kann fehlschlagen, wenn zu viele Fragmente verschwinden.
Nichts bricht im Protokoll, wenn dies passiert. Die Vereinbarung endete einfach.
Und das ist der Grund, warum ein erfolgreicher Upload nicht dauerhafte Speicherung bedeutet. Der Upload beginnt nur den Speicherlebenszyklus.
Anwendungen müssen diesen Lebenszyklus weiterhin verwalten.
Walrus garantiert bestimmte Dinge. Es garantiert, dass Fragmente über Knoten verteilt sind. Es garantiert, dass Knoten sie speichern müssen, solange Zahlungen aktiv sind. Es garantiert, dass Überprüfungschecks sicherstellen, dass Daten während dieses Zeitraums noch existieren.
Aber Walrus erneuert die Speicherung nicht automatisch. Es entscheidet nicht, ob Daten noch nützlich sind. Es bewegt oder bewahrt Daten nicht, sobald die Finanzierung stoppt.
Diese Verantwortung bleibt bei den Anwendungen.
Wenn eine App vergisst, die Speicherfinanzierung zu erneuern, laufen die Blobs leise ab. Später schlägt die Wiederbeschaffung fehl und die Teams denken, die Speicherung wäre kaputt. Aber in Wirklichkeit endete die Finanzierung.
Auf der Seite des Speicheranbieters sind die Dinge ebenfalls praktisch. Speicherplatz und Bandbreite kosten Geld. Knoten können nicht unbegrenzt Daten für immer speichern. Sie benötigen finanzielle Verpflichtungen, um zu rechtfertigen, dass Fragmente online gehalten werden.
Überprüfungschecks kosten ebenfalls Ressourcen. Knoten müssen auf Herausforderungen antworten, die beweisen, dass Fragmente noch existieren. WAL-Zahlungen entschädigen Anbieter für diese Arbeit.
Daher ist die Speicherung in Walrus ein aktiver Dienst, keine passive Archivierung.
Eine weitere Sache, die ich bemerkt habe, ist, dass viele Teams nicht sorgfältig über den Zeitpunkt der Erneuerung nachdenken. Sie laden viele Blobs auf einmal hoch, sodass die Ablaufzeit später zur gleichen Zeit eintritt. Plötzlich wird die Erneuerung über alles dringend.
Wenn sie dieses Zeitfenster verpassen, beginnen Fragmente zu verschwinden, und Anwendungen entdecken zu spät, dass die Speicherung vorübergehend war.
Walrus selbst ist bereits für Teams, die diese Mechanik verstehen, in der Produktion nutzbar. Uploads funktionieren. Die Wiederbeschaffung funktioniert. Finanzierte Daten bleiben verfügbar. Aber die Werkzeuge zur Verwaltung des Lebenszyklus verbessern sich noch, sodass die Entwickler selbst die Ablaufzeiten und die Finanzierung überwachen müssen.
Im Laufe der Zeit werden wir wahrscheinlich Werkzeuge sehen, die die Speicherung basierend auf der tatsächlichen Nutzung automatisch erneuern. Aber diese Verbesserungen hängen von den Werkzeugen und Integrationen des Ökosystems ab, nicht von Änderungen am Protokoll selbst.
Im Moment bietet Walrus bereits die Signale. Anwendungen müssen sie nur korrekt nutzen.
Die einfachste Möglichkeit, die Speicherung in Walrus zu verstehen, ist dies:
Sie speichern Daten nicht einmal. Sie bezahlen kontinuierlich das Netzwerk, um Ihre Daten am Leben zu halten.
Und sobald die Zahlung stoppt, endet auch die Speicherverpflichtung.