Lass uns über ein weiteres Speicherprojekt des @SuiNetwork-Teams sprechen: @WalrusProtocol 🧐🧐
Das Sui-Entwicklungsteam Mysten Labs hat tatsächlich ein Datenebenenprojekt namens @WalrusProtocol entwickelt.
Walrus ist ein Projekt für Datenspeicherung und Datenverfügbarkeit. Nach meiner Recherche habe ich nur einen Eindruck gewonnen – „beeindruckend“. Das ist das beste Speicherprojekt, das ich je gesehen habe.
Hier ist der Haupttext,
Dezentrale Speicherprojekte lassen sich hauptsächlich in zwei Kategorien einteilen.
Die erste Kategorie verwendet die vollständige Replikation (full replication), um Sicherheit durch ineffiziente Redundanz zu erreichen, d.h. jeder Knoten speichert eine vollständige Kopie der Daten, repräsentiert durch die Projekte @Filecoin und Arweave.
Die zweite Kategorie verwendet Reed-Solomon-Codes, um die ursprünglichen Daten in Stücke zu zerlegen, repräsentiert durch die Projekte @Storj, Sia usw.
————————————————————————————————
Eine verständliche Erklärung von Erasure Codes
Die Speicherung mit Erasure Codes muss erklärt werden. Streng genommen wird die ursprüngliche Datei in f+1 Stücke aufgeteilt und es werden 2f zusätzliche Reparaturstücke (repair slivers) generiert, wobei jeder Speicher-Knoten ein anderes Stück speichert. Jedes beliebige f+1 Stücke können die ursprüngliche Datei wiederherstellen.
Okay, du kannst diesen nicht so verständlichen Teil überspringen und dir den nächsten Abschnitt ansehen.
Angenommen, wir wollen 4 wichtige Zahlen speichern: [3, 7, 2, 5]. Diese 4 Zahlen sind unsere "ursprünglichen Stücke".
Als nächstes müssen wir zusätzliche Stücke generieren,
Reparaturstück 1 = 3 + 7 + 2 + 5 = 17
Reparaturstück 2 = 3×1 + 7×2 + 2×3 + 5×4 = 47
Reparaturstück 3 = 3×1² + 7×2² + 2×3² + 5×4² = 131
Jetzt haben wir 7 Stücke: [3, 7, 2, 5, 17, 47, 131], richtig?
Angenommen, das System hat 7 Knoten, wir verteilen sie,
Zhang San: 3
Li Si: 7
Wang Wu: 2
Zhao Liu: 5
Qian Qi: 17
Sun Ba: 47
Zhou Jiu: 131
Angenommen, Li Si, Zhao Liu und Zhou Jiu haben Daten verloren, wir haben nur: [3, _, 2, _, 17, 47, _].
Wie stellen wir die ursprünglichen Daten wieder her?
Erinnerst du dich an die Formel für die zusätzlichen Stücke? Genau, wir lösen ein lineares Gleichungssystem.
3 + X + 2 + Y = 17
3×1 + X×2 + 2×3 + Y×4 = 47
Das ergibt X=7, Y=5.
Natürlich ist das nur ein sehr einfaches Beispiel.
Du musst nur wissen, dass der Effekt von Erasure Codes ist, dass es ausreicht, wenn mehr als 1/3 der Knoten funktionsfähig sind.
Anders gesagt, in einem Erasure-Code-System speichern die Knoten nur Datenstücke, solange mehr als 1/3 der Knoten funktionieren, können die Daten wiederhergestellt werden, aber die Knoten müssen stabil sein, da die Austauschkosten hoch sind.
In einem vollständigen Replikationssystem müssen jedoch vollständige Knoten existieren, die alle Datenkopien herunterladen.
Ersteres opfert einen Teil der Sicherheit zugunsten niedriger Kosten, während letzteres durch Redundanz Sicherheit und Stabilität des Systems erkauft.
————————————————————————————————
Walrus' zweidimensionale (two-dimensional, 2D) Erasure-Code-Innovation
Walrus' Ansatz liegt tatsächlich in der Mitte und erreicht eine Art Gleichgewicht zwischen beiden. Der Kern verwendet ebenfalls Erasure Codes, hat jedoch eine verbesserte Technologie namens Red Stuff entwickelt.
Red Stuff verwendet eine raffiniertere Kodierungsmethode zur Datenzerlegung. Erinnerst du dich an das vorherige Beispiel mit den Erasure Codes?
Um 4 wichtige Zahlen zu speichern: [3, 7, 2, 5], müssen wir zusätzliche Stücke generieren und schließlich ein lineares Gleichungssystem lösen.
Lass uns dieses Beispiel verwenden, um Red Stuff zu erklären. Die Red Stuff-Kodierung ist ein zweidimensionaler (two-dimensional, 2D) Kodierungsalgorithmus, den du dir wie „Sudoku“ vorstellen kannst.
3 7 25 wird in der Red Stuff-Kodierung zu,
[3 7]
[2 5]
Angenommen, die Kodierungsregeln sind,
Die 3. Spalte = Die 1. Spalte + Die 2. Spalte
Die 4. Spalte = Die 1. Spalte×2 + Die 2. Spalte×2
Die 3. Zeile = Die 1. Zeile + Die 2. Zeile
Die 4. Zeile = Die 1. Zeile×2 + Die 2. Zeile×2
Das sind die zusätzlichen Stücke, die zu
[3 7 10 20]
[2 5 7 14]
[5 12 18 34]
[10 24 34 68]
werden. Jetzt verteilen wir sie nach Zeilen und Spalten an die Knoten,
Zhang San: 3 7 10 20, das ist die erste Zeile
Li Si: 2 5 7 14, die zweite Zeile
Wang Wu: 5 12 18 34, …
Zhao Liu: 10 24 35 68, …
Qian Qi: 3 2 5 10, die erste Spalte
Sun Ba: 7 5 12 24, …
Zhou Jiu: 10 7 18 34, …
Zheng Shi: 20 14 34 68, …
Angenommen, Wang Wu hat Daten verloren, d.h. die Daten der 3. Zeile sind verloren. Er muss nur Zhang San und Li Si aus der ersten und zweiten Zeile nach den Zahlen 10 und 7 fragen.
Wieder lösen wir ein lineares Gleichungssystem, um das Ergebnis zu erhalten.
Aus diesem einfachen, aber nicht so präzisen Beispiel können wir die Merkmale von Red Stuff zusammenfassen,
Bei der Datenwiederherstellung sind keine vollständigen Zeilen oder Spalten erforderlich, sondern nur Daten an bestimmten Positionen. Dieses Merkmal kann als „Lokalität“ bezeichnet werden.
Darüber hinaus kann eine Zahl aus beiden Dimensionen, Zeilen und Spalten, wiederhergestellt werden, was als „Informationswiederverwendung“ bezeichnet werden kann.
Außerdem kann bei komplexen Daten zuerst die Dimension wiederhergestellt werden, die „einfacher“ zu berechnen ist, und dann die schwierige Dimension mit den bereits wiederhergestellten Daten berechnet werden, was als „progressiv“ bezeichnet werden kann.
In der praktischen Anwendung, nehmen wir an, eine Datei wird im Erasure-Code-Framework in 301 Stücke kodiert.
In einem typischen Erasure-Code-System benötigt die Wiederherstellung eines Stücks 101 Stücke, während bei Red Stuff die Wiederherstellung eines Paares von Stücken nur etwa 200 einzelne Symbole erfordert.
Angenommen, wir speichern eine 1GB-Datei, das System hat 301 Knoten. In einem typischen Erasure-Code-System muss nach einem Knotenfehler 1GB heruntergeladen werden, um das Stück wiederherzustellen, während bei Red Stuff jeder Knoten speichert: Hauptstück (3,3MB) + Nebenstück (3,3MB) = 6,6MB.
Bei der Wiederherstellung müssen nur etwa 10MB an Symboldaten heruntergeladen werden, was 99% der Bandbreite spart.
Dieses Design ermöglicht es Walrus, ein großflächiges dezentrales Speicher-Netzwerk mit extrem niedrigen Bandbreitenkosten aufrechtzuerhalten und die Wiederherstellungskosten von O(|blob|) auf O(|blob|/n) zu senken. Das ist der Grund, warum Red Stuff als "selbstheilend" bezeichnet wird.
Darüber hinaus hat Walrus viele Sicherheitsmerkmale hinzugefügt, wie z.B. das erste Protokoll, das in asynchronen Netzwerken Speicherherausforderungen unterstützt.
Hierbei handelt es sich um „Herausforderungen“, die ähnlich wie der Optimistic-Mechanismus eine Überprüfung des Speicherstatus der Knoten darstellen.
Red Stuff fügt jedem Stück überprüfbare kryptografische Verpflichtungen (commitments) hinzu, und jedes Symbol kann unabhängig verifiziert werden usw.
Zusammenfassend die Merkmale:
1) Erstes asynchrones Sicherheitssystem: Löst das Vertrauensproblem in verteilten Speichern;
2) Selbstverifizierung: Eingebaute Fälschungsschutzmechanismen;
3) Progressiv: Handhabung dynamischer Änderungen der Knoten;
4) Skalierbar: Unterstützung von Hunderten bis Tausenden von Knoten;
Um das beste Gleichgewicht zwischen Sicherheit und Effizienz zu finden.
(Das ist der erste Teil dieses Artikels)
Original anzeigen29.038
13
Der Inhalt dieser Seite wird von Dritten bereitgestellt. Sofern nicht anders angegeben, ist OKX nicht der Autor der zitierten Artikel und erhebt keinen Anspruch auf das Urheberrecht an den Materialien. Der Inhalt wird ausschließlich zu Informationszwecken bereitgestellt und gibt nicht die Ansichten von OKX wieder. Er stellt keine wie auch immer geartete Befürwortung dar und sollte nicht als Anlageberatung oder Aufforderung zum Kauf oder Verkauf digitaler Vermögenswerte betrachtet werden. Soweit generative KI zur Bereitstellung von Zusammenfassungen oder anderen Informationen verwendet wird, können solche KI-generierten Inhalte ungenau oder inkonsistent sein. Bitte lesen Sie den verlinkten Artikel für weitere Details und Informationen. OKX ist nicht verantwortlich für Inhalte, die auf Websites Dritter gehostet werden. Der Besitz digitaler Vermögenswerte, einschließlich Stablecoins und NFTs, ist mit einem hohen Risiko verbunden und kann starken Schwankungen unterliegen. Sie sollten sorgfältig abwägen, ob der Handel mit oder der Besitz von digitalen Vermögenswerten angesichts Ihrer finanziellen Situation für Sie geeignet ist.