Hablemos de otro proyecto de almacenamiento desarrollado por el equipo de @SuiNetwork, @WalrusProtocol 🧐🧐
Mysten Labs, una empresa de desarrollo de Sui, también ha desarrollado un proyecto de capa de datos @WalrusProtocol.
Walrus es un proyecto que se encarga del almacenamiento y la disponibilidad de datos. Después de que terminé de investigar, tuve una sensación: "increíble". Este es el mejor proyecto de almacenamiento que he visto.
El siguiente es el texto,
Hay dos categorías principales de proyectos de almacenamiento descentralizado.
El primer tipo utiliza la replicación completa, donde la redundancia ineficiente se intercambia por seguridad, donde cada nodo almacena una copia completa de los datos, que representa el proyecto @Filecoin Arweave.
El segundo tipo utiliza el método de código de borrado Reed-Solomon para segmentar y guardar los datos originales, que representan proyectos @Storj, Sia, etc.
————————————————————————————————
Explicar los códigos de borrado de una manera humana
El método de almacenamiento de los códigos de borrado debe explicarse, estrictamente hablando, es dividir el archivo original en f+1 segmentos originales, generar 2f de reparadores adicionales, guardar un segmento diferente para cada nodo de almacenamiento, y cualquier segmento f+1 puede reconstruir el archivo original.
Bueno, puedes omitir esta expresión no humana y mirar el siguiente párrafo.
Digamos que queremos guardar 4 números importantes: [3, 7, 2, 5], y estos 4 números son nuestras "rebanadas originales".
A continuación, necesitamos generar segmentos adicionales,
Cortes fijos 1 = 3 + 7 + 2 + 5 = 17
Reparación de rebanada 2 = 3×1 + 7×2 + 2×3 + 5×4 = 47
Reparación de la rebanada 3 = 3×1² + 7×2² + 2×3² + 5×4² = 131
Ahora tenemos 7 rebanadas: [3, 7, 2, 5, 17, 47, 131], correcto.
Digamos que el sistema tiene 7 nodos, y los distribuimos,
Zhang San: 3
Li Si: 7
Reyes 5:2
Zhao Liu: 5
Dinero 7:17
Hijo 8:47
Juan 9:131
Suponiendo que Li Si, Zhao Liu y Zhou Jiu pierdan datos, solo tenemos: [3, _, 2, _, 17, 47, _].
Entonces, ¿cómo recuperar los datos originales?
¿Recuerdas la fórmula de las rebanadas adicionales? Así es, resuelve una ecuación lineal binaria.
3 + X + 2 + Y = 17
3×1 + X×2 + 2×3 + Y×4 = 47
El resultado es X = 7, Y = 5.
Por supuesto, este es solo un ejemplo simple.
Solo necesita recordar el efecto logrado por el código de borrado. El efecto es que siempre que más de 1/3 de los nodos estén sanos.
En otras palabras, en el sistema de codificación de borrado, los nodos solo almacenan segmentos de datos, siempre que más de 1/3 de los nodos puedan operar, los datos se pueden recuperar, pero se requiere estabilidad del nodo debido al alto costo de reemplazo.
Sin embargo, en un sistema completamente replicado, debe haber un nodo completo para descargar todas las copias de los datos.
El primero sacrifica parte de la seguridad a cambio de un bajo costo, mientras que el segundo cambia la redundancia por la seguridad y la estabilidad del sistema.
————————————————————————————————
Innovación en el código de borrado bidimensional (2D) de Walrus
El enfoque de Walrus es en realidad ir al término medio y lograr un cierto equilibrio entre los dos. El núcleo también utiliza codificación de borrado, pero crea una tecnología mejorada Red Stuff en esta tecnología.
Red Stuff utiliza un método de codificación más inteligente para fragmentar los datos. ¿Recuerdas el ejemplo anterior de borrar códigos?
Para guardar 4 números importantes: [3, 7, 2, 5], genera porciones adicionales y finalmente resuelve la ecuación lineal binaria.
Nuevamente, este es un ejemplo para explicar Red Stuff. La codificación Red Stuff es un algoritmo de codificación bidimensional (2D) que se puede considerar como "Sudoku".
3 7 25 en código Red Stuf se convierte en,
[3 7]
[2 5]
Supongamos que la regla de codificación es,
Columna 3 = Columna 1 + Columna 2
Columna 4 = Columna 1×2 + Columna 2×2
Fila 3 = Fila 1 + Fila 2
Fila 4 = Fila 1×2 + Fila 2×2
Esta es la rebanada extra se convierte en
[3 7 10 20]
[2 5 7 14]
[5 12 18 34]
[10 24 34 68]
A continuación, los distribuimos a los nodos en filas y columnas,
Zhang 3: 3 7 10 20, es decir, la primera línea
Lee IV: 2 5 7 14, línea 2
Reyes 5:5, 12, 18, 34,...
Zhao Liu: 10 24 35 68,...
Dinero 7:3 2 5 10, columna 1
8 Dom: 7 5 12 24,...
JUAN 9:10 7 18 34,...
Zheng Shi: 20 14 34 68,...
Supongamos que Wang Wu pierde datos, es decir, se pierden los datos de la línea 3. De hecho, solo necesita preguntarle a Zhang San en la primera fila y a Li Si en la segunda fila, y preguntarles por los números 10 y 7 respectivamente.
Se resuelve la misma ecuación lineal binaria para obtener el resultado.
A partir de los ejemplos populares pero no tan rigurosos anteriores, podemos resumir las características de Red Stuff,
Al recuperar datos, no necesita filas o columnas completas, solo datos específicos de la ubicación. Esta característica puede llamarse "localidad".
Además, se puede recuperar un número de dos dimensiones: filas y columnas, es decir, "reutilización de información".
En segundo lugar, para datos complejos, primero puede restaurar la dimensión que es más "fácil" y conveniente de calcular, y luego usar la dimensión de dificultad para calcular los datos recuperados, es decir, "progresividad".
En la práctica, supongamos que un archivo está codificado como segmentos 301 en la arquitectura de código de borrado.
En un sistema típico de codificación de borrado, se necesitan 101 rebanadas para recuperar 1 rebanada, pero en Red Stuff, solo se necesitan alrededor de 200 símbolos individuales para recuperar 1 par de rebanadas.
Suponiendo que se almacena un archivo de 1 GB, el sistema tiene 301 nodos, el sistema de código de borrado habitual, después de una falla de nodo, necesita descargar 1 GB para restaurar las rebanadas, y Red Stuff, cada nodo almacena: rebanada primaria (3.3 MB) + rebanada secundaria (3.3 MB) = 6.6 MB.
Solo se descargan alrededor de 10 MB de datos simbólicos al recuperar, lo que ahorra un 99% de ancho de banda.
Este diseño permite a Walrus mantener una red de almacenamiento descentralizada a gran escala con costos de ancho de banda muy bajos, lo que reduce los costos de recuperación de O(|blob|) a O(|blob|/n). Es por eso que Red Stuff se llama "autocuración".
Además, Walrus agrega una serie de características de seguridad, como ser el primer protocolo que admite desafíos de almacenamiento en redes asíncronas.
El llamado "desafío" aquí es similar a la verificación puntual del mecanismo optimista en el almacenamiento de datos de nodos.
Red Stuff agrega compromisos criptográficos verificables a cada rebanada, cada símbolo se puede verificar de forma independiente, etc.
Para resumir las características,
1) La primera seguridad asíncrona: resuelve el problema de confianza del almacenamiento distribuido a los nodos;
2) Autoverificación: mecanismo antifalsificación incorporado;
3) Progresivo: Manejar cambios dinámicos en nodos;
4) Escalable: admite cientos o miles de nodos;
para encontrar el mejor equilibrio entre seguridad y eficiencia.
(Lo anterior es la primera parte de este artículo)
Mostrar original
Sociales