Laten we het hebben over een ander opslagproject dat door het @SuiNetwork team is ontwikkeld, @WalrusProtocol 🧐🧐 Mysten Labs, een Sui-ontwikkelingsbedrijf, heeft ook een datalaagproject ontwikkeld @WalrusProtocol. Walrus is een project dat zich bezighoudt met gegevensopslag en beschikbaarheid van gegevens. Nadat ik klaar was met onderzoeken, had ik een gevoel - "geweldig". Dit is het beste opslagproject dat ik ooit heb gezien. Het volgende is de tekst, Er zijn twee hoofdcategorieën van gedecentraliseerde opslagprojecten. Het eerste type maakt gebruik van volledige replicatie, waarbij inefficiënte redundantie wordt ingeruild voor beveiliging, waarbij elk knooppunt een volledige kopie van de gegevens opslaat, die het project @Filecoin Arweave vertegenwoordigen. Het tweede type maakt gebruik van de Reed-Solomon-wiscodemethode om de originele gegevens te segmenteren en op te slaan, die projecten vertegenwoordigen @Storj, Sia, enz. ———————————————————————————————— Leg wiscodes op een menselijke manier uit De opslagmethode van Erasure Codes moet worden uitgelegd, strikt genomen is het om het originele bestand op te splitsen in f+1 originele plakjes, 2f extra reparatiesplinters te genereren, een ander segment op te slaan voor elk opslagknooppunt, en elk f+1-segment kan het originele bestand reconstrueren. Welnu, je kunt deze niet-menselijke uitdrukking overslaan en naar de volgende alinea kijken. Laten we zeggen dat we 4 belangrijke getallen willen opslaan: [3, 7, 2, 5], en deze 4 getallen zijn onze "originele plakjes". Vervolgens moeten we extra plakjes genereren, Vaste plakjes 1 = 3 + 7 + 2 + 5 = 17 Reparatieschijf 2 = 3×1 + 7×2 + 2×3 + 5×4 = 47 Reparatieschijf 3 = 3×1² + 7×2² + 2×3² + 5×4² = 131 Nu hebben we 7 plakjes: [3, 7, 2, 5, 17, 47, 131], juist. Laten we zeggen dat het systeem 7 knooppunten heeft, en we verdelen ze, Zhang San: 3 Li Si: 7 Koningen 5:2 Zhao Liu: 5 Geld 7:17 Zoon 8:47 Joh. 9:131 Ervan uitgaande dat Li Si, Zhao Liu en Zhou Jiu gegevens verliezen, hebben we alleen: [3, _, 2, _, 17, 47, _]. Dus hoe de originele gegevens te herstellen? Herinner je je de formule voor extra plakjes nog? Dat klopt, los een binaire lineaire vergelijking op. 3 + X + 2 + Y = 17 3×1 + X×2 + 2×3 + Y×4 = 47 Het resultaat is X=7, Y=5. Dit is natuurlijk maar een simpel voorbeeld. U hoeft alleen maar het effect van de wiscode te onthouden. Het effect is dat zolang meer dan 1/3 van de nodes gezond is. Met andere woorden, in het wiscoderingssysteem slaan knooppunten alleen gegevenssegmenten op, zolang meer dan 1/3 van de knooppunten kan werken, kunnen de gegevens worden hersteld, maar knooppuntstabiliteit is vereist vanwege de hoge vervangingskosten. In een volledig gerepliceerd systeem moet er echter een volledig knooppunt zijn om alle kopieën van de gegevens te downloaden. De eerste offert een deel van de beveiliging op in ruil voor lage kosten, terwijl de laatste redundantie inruilt voor systeembeveiliging en stabiliteit. ———————————————————————————————— Walrus' tweedimensionale (2D) wiscode-innovatie De aanpak van Walrus is eigenlijk om naar de middenweg te gaan en een bepaald evenwicht tussen de twee te bereiken. De kern maakt ook gebruik van erasure codering, maar het creëert een verbeterde technologie Red Stuff op deze technologie. Red Stuff gebruikt een slimmere coderingsmethode om de gegevens te verharden. Herinner je je het vorige voorbeeld van het wissen van codes nog? Om 4 belangrijke getallen op te slaan: [3, 7, 2, 5], genereert u extra segmenten en lost u ten slotte de binaire lineaire vergelijking op. Nogmaals, dit is een voorbeeld om Red Stuff uit te leggen. Red Stuff-codering is een tweedimensionaal (2D) coderingsalgoritme dat je kunt zien als "Sudoku". 3 7 25 in Red Stuf code wordt, [3 7] [2 5] Stel dat de coderingsregel is: Kolom 3 = Kolom 1 + Kolom 2 Kolom 4 = Kolom 1×2 + Kolom 2×2 Rij 3 = Rij 1 + Rij 2 Rij 4 = Rij 1×2 + Rij 2×2 Dit is de extra plak die wordt [3 7 10 20] [2 5 7 14] [5 12 18 34] [10 24 34 68] Vervolgens verdelen we ze over knooppunten in rijen en kolommen, Zhang 3: 3 7 10 20, dat wil zeggen, de eerste regel Lee IV: 2 5 7 14, lijn 2 Koningen 5:5, 12, 18, 34,... Zhao Liu: 10 24 35 68,... Geld 7:3 2 5 10, kolom 1 8 zo: 7 5 12 24,... JH 9:10 7 18 34,... Zheng Shi: 20 14 34 68,... Stel dat Wang Wu gegevens verliest, dat wil zeggen dat de gegevens in regel 3 verloren gaan. In feite hoeft hij alleen maar Zhang San op de eerste rij en Li Si op de tweede rij te vragen, en hen respectievelijk om de nummers 10 en 7 te vragen. Dezelfde binaire lineaire vergelijking wordt opgelost om het resultaat te verkrijgen. Uit de bovenstaande populaire maar niet zo rigoureuze voorbeelden kunnen we de kenmerken van Red Stuff samenvatten, Bij het herstellen van gegevens heb je geen volledige rijen of kolommen nodig, alleen locatiespecifieke gegevens. Deze eigenschap kan "lokaliteit" worden genoemd. Bovendien kan een getal worden hersteld uit twee dimensies: rijen en kolommen, dat wil zeggen "hergebruik van informatie". Ten tweede kunt u voor complexe gegevens eerst de dimensie herstellen die "gemakkelijker" en handiger is om te berekenen, en vervolgens de moeilijkheidsgraad gebruiken bij het berekenen van de herstelde gegevens, dat wil zeggen "progressiviteit". Stel in de praktijk dat een bestand is gecodeerd als 301 slices onder de erasure code-architectuur. In een typisch wiscoderingssysteem zijn er 101 plakjes nodig om 1 plak te herstellen, maar in Red Stuff zijn er slechts ongeveer 200 individuele symbolen nodig om 1 paar plakjes te herstellen. Ervan uitgaande dat een bestand van 1 GB is opgeslagen, heeft het systeem 301 knooppunten, het gebruikelijke wiscodesysteem moet na een knooppuntfout 1 GB downloaden om plakjes te herstellen, en Red Stuff, elk knooppunt slaat: primaire plak (3.3 MB) + secundaire plak (3.3 MB) = 6.6 MB op. Slechts ongeveer 10 MB aan symbolische gegevens wordt gedownload bij het herstellen, waardoor 99% aan bandbreedte wordt bespaard. Dit ontwerp stelt Walrus in staat om een grootschalig gedecentraliseerd opslagnetwerk te onderhouden met zeer lage bandbreedtekosten, waardoor de herstelkosten worden verlaagd van O(|blob|) naar O(|blob|/n). Daarom wordt Red Stuff ook wel "zelfgenezing" genoemd. Daarnaast voegt Walrus een aantal beveiligingsfuncties toe, zoals het eerste protocol dat opslaguitdagingen in asynchrone netwerken ondersteunt. De zogenaamde "uitdaging" is hier vergelijkbaar met de steekproef van het Optimistic-mechanisme op de opslag van node-gegevens. Red Stuff voegt verifieerbare cryptografische verplichtingen toe aan elk segment, elk symbool kan onafhankelijk worden geverifieerd, enzovoort. Om de kenmerken samen te vatten, 1) De eerste asynchrone beveiliging: lost het vertrouwensprobleem van gedistribueerde opslag naar knooppunten op; 2) Zelfverificatie: ingebouwd mechanisme tegen namaak; 3) Progressief: Omgaan met dynamische veranderingen in knooppunten; 4) Schaalbaar: ondersteunt honderden tot duizenden knooppunten; om de beste balans te vinden tussen veiligheid en efficiëntie. (Het bovenstaande is het eerste deel van dit artikel)
38,54K