put()
método con el hash BLOB y una tarifa en ETH. La tarifa se distribuirá gradualmente a los proveedores de almacenamiento al enviar una prueba válida de almacenamiento de BLOB fuera de la cadena con el tiempo. La red de prueba EthStorage se ejecuta en la red de prueba Ethereum Sepolia con múltiples participantes de la comunidad que demuestran con éxito su almacenamiento local.Agradecimiento: Muchas gracias a Piper Merriam de EF, Karthik Raju de Polychain, Qiang de EthStorage por proporcionar comentarios sobre el artículo.
El 22 de octubre de 2023, Péter Szilágyi, el renombrado líder de desarrollo de Go-Ethereum (Geth), expresó sus profundas preocupaciones en Twitter. Señaló que mientras los clientes Geth conservan todos los datos históricos, otros clientes de Ethereum como Nethermind y Besu pueden configurarse para funcionar sin ciertos datos históricos de Ethereum, como cuerpos y encabezados de bloques históricos. Esto hace que todos los clientes sean inconsistentes y es injusto para Geth. Provocó intensas discusiones y debates en torno al problema de almacenamiento de Ethereum dentro del plan de trabajo de Ethereum.
¿Por qué Nethermind y Besu optan por dejar de almacenar datos históricos? ¿Qué problemas subyacen a esta decisión? Desde mi perspectiva, hay dos causas raíz principales:
La primera razón se deriva de las crecientes demandas de almacenamiento para ejecutar un cliente de Ethereum. Para adentrarse en los requisitos específicos, el siguiente gráfico circular ilustra la distribución de los costos de almacenamiento para un nodo Geth recién instalado, a partir del bloque 18.779.761 el 13 de diciembre de 2023.
Como muestra la imagen:
La segunda razón es la falta de incentivos o penalizaciones en el protocolo para almacenar bloques históricos. Si bien el protocolo exige a los nodos que almacenen todos los datos históricos, no proporciona ningún mecanismo para fomentar el almacenamiento o penalizar el incumplimiento. Almacenar y compartir datos históricos por parte de los nodos se convierte en algo puramente altruista, y un nodo es libre de podar todos los datos históricos sin enfrentar ninguna consecuencia adversa. Por el contrario, los validadores, por ejemplo, deben mantener el estado completo más reciente para evitar proponer/votar por un bloque inválido, arriesgando la pérdida de incentivos en ambos casos.
Por consiguiente, cuando el costo de almacenamiento se convierte en una carga sustancial para un nodo, no es sorprendente que algunos operadores de nodos opten por podar datos históricos. Optar por ejecutar sin datos históricos puede resultar en ahorros significativos en el costo de almacenamiento, reduciéndolo de aproximadamente 1TB a alrededor de 300GB.
Ilustración: La configuración de Nethermined para ejecutar un nodo sin cuerpos de bloque históricos, ahorrando aproximadamente ~460GB de costos de almacenamiento por el momento.
Se espera que el desafío del almacenamiento se intensifique con la próxima actualización de Disponibilidad de Datos (DA) de Ethereum. El caminoHacia la escalabilidad total de Ethereum DA comienza con EIP-4844 en DenCun, introduciendo un objeto binario grande de tamaño fijo (BLOB) acompañado de un modelo de tarifas independiente conocido como blobGasPrice. Cada BLOB está configurado en 128 KB, y EIP-4844 permite que cada bloque contenga hasta 6 BLOBs. Para mejorar la escalabilidad de datos, el plan implica implementar el código Reed-Solomon 1D, lo que permite 32 BLOBs por bloque inicialmente y eventualmente alcanzar 256 BLOBs por bloque en la escalabilidad total.
Con el Ethereum DA operando a plena capacidad de datos con 256 BLOBs por bloque, se proyecta que un año de la red Ethereum DA aceptará aproximadamente 80 TB de datos, superando las capacidades de almacenamiento de la mayoría de los nodos Ethereum.
Vitalik’stweetdel Ethereum roadmap, en el que el Purge trata principalmente del almacenamiento.
Los crecientes costos de almacenamiento han captado la atención de los investigadores dentro del ecosistema de Ethereum. Para abordar esto y garantizar la alineación en todos los clientes, varias propuestas están en desarrollo para podar explícitamente el almacenamiento. Las dos propuestas principales son:
¿Cuál es la consecuencia de podar datos históricos de todos los clientes? La principal es que un nodo nuevo no puede sincronizarse con el estado más reciente a través de una “sincronización completa” - una sincronización para reproducir las transacciones desde el bloque génesis hasta el bloque más reciente. En cambio, tenemos que recurrir a una “sincronización rápida” o “sincronización de estado” para sincronizar el estado más reciente desde pares de Ethereum. Este enfoque ya está implementado en Geth y se ejecuta como la sincronización predeterminada.
De igual manera, esta consecuencia también se aplica a todos los L2, es decir, un nodo recién creado de L2 no puede volver a reproducir completamente el estado más reciente desde el génesis de L2 desde Ethereum volviendo a reproducir los bloques de L2 desde el génesis de L2. Además, dado que los nodos L1 no mantienen el estado L2, el enfoque de "sincronización instantánea" para L2 no puede derivar el estado L2 más reciente de L1, rompiendo una importante suposición de L2 de heredar las garantías de seguridad de Ethereum. La solución proyectada dependerá de servicios de terceros como Infura / Etherscan / los propios proyectos L2 para almacenar una copia de los datos o estado históricos de L2, que está centralizado con un incentivo indirecto fuera del protocolo.
Las preguntas fundamentales que estamos haciendo son
La red Portal de Ethereum sirve como una red de acceso ligera y descentralizada al protocolo Ethereum. Ofrece la interfaz JSON-RPC de Ethereum, como eth_call, eth_getBlockByNumber, que traduce las solicitudes JSON-RPC en solicitudes P2P a una tabla hash distribuida, similar a la red IPFS. A diferencia de IPFS, que permite el almacenamiento de cualquier tipo de datos y es susceptible al spam, la red P2P de Portal aloja exclusivamente datos de Ethereum, como encabezados y cuerpos históricos. Esto se logra a través de una técnica de verificación de cliente ligero incorporada dentro de la red Portal.
Una característica significativa de la red Portal es su diseño para operación ligera y compatibilidad con dispositivos de recursos limitados. Puede ejecutarse encima de un nodo con unos pocos megabytes de almacenamiento y memoria baja, promoviendo la descentralización. Incluso un teléfono móvil o un dispositivo Raspberry Pi podría potencialmente unirse a la red y contribuir a la disponibilidad de datos de Ethereum.
El desarrollo de la red Portal se alinea con la filosofía de diversidad de clientes de Ethereum, con clientes escritos en Rust, JavaScript, Nim y Go. La red beacon y la red de historial están listas para su uso, mientras que la red de estado está activamente en desarrollo. Cabe destacar que la red Portal no proporciona incentivos directos para el almacenamiento de datos, todos los nodos en la red operan altruistamente.
Ilustración: Ejecutar una red Portal (Trin) con un límite de almacenamiento de 100MB.
La red EthStorage es una red de almacenamiento descentralizada incentivada diseñada específicamente para almacenar EIP-4844 BLOBs, con el respaldo de una subvención del programa ESP.
Desde la perspectiva de la modularidad de la cadena de bloques, EthStorage funciona como una Capa 2 de Ethereum, pero cobra tarifas de almacenamiento en lugar de tarifas de transacción. Al indexar los hashes de BLOB en cadena, EthStorage es una capa de almacenamiento modular de Ethereum con una escalabilidad de almacenamiento significativa y ahorros de costos, apuntando a aproximadamente 1000 veces.
En términos de desarrollo, EthStorage ya está integrado con EIP-4844 en la red de prueba Ethereum Sepolia. Se ha realizado una prueba de estrés en EthStorage y la red de prueba Ethereum Sepolia, que involucra la escritura de aproximadamente cientos de gigabytes de BLOBs en EthStorage. Más de 50 participantes de la comunidad se unieron a la red y demostraron con éxito sus almacenamientos locales.
La principal ventaja de la red EthStorage radica en proporcionar un incentivo descentralizado y directo sobre Ethereum, una característica pionera, según nuestro conocimiento actual. Sin embargo, una limitación de la red es que está específicamente diseñada para BLOBs de tamaño fijo.
El panel de EthStorage en Ethereum Devnet
El almacenamiento de Ethereum, aunque menos destacado, tiene una importancia significativa dentro del ecosistema de Ethereum. A medida que la red de Ethereum experimenta un crecimiento rápido, el almacenamiento y la accesibilidad de los datos de Ethereum surgen como desafíos críticos. Si bien la red Portal y la red EthStorage se encuentran en sus primeras etapas, visualizamos varias direcciones intrigantes a largo plazo:
En nuestra búsqueda, aspiramos a que estos esfuerzos contribuyan colectivamente al mapa de ruta de Ethereum, sentando las bases para futuras soluciones de almacenamiento descentralizado dentro del ecosistema de Ethereum.
Este artículo es reproducido de [flujo tecnológico profundo marea], el título original es “Hoja de ruta de almacenamiento de Ethereum: desafíos y oportunidades”, los derechos de autor pertenecen al autor original [EthStorage], si tiene alguna objeción a la reimpresión, por favor contacteEquipo de Aprendizaje de Gate, el equipo lo manejará lo antes posible de acuerdo con los procedimientos relevantes.
Descargo de responsabilidad: Las opiniones expresadas en este artículo representan únicamente las opiniones personales del autor y no constituyen ningún consejo de inversión.
Otras versiones del artículo son traducidas por el equipo de Gate Learn, no mencionadas en Gate.io, el artículo traducido no puede ser reproducido, distribuido o plagiado.
put()
método con el hash BLOB y una tarifa en ETH. La tarifa se distribuirá gradualmente a los proveedores de almacenamiento al enviar una prueba válida de almacenamiento de BLOB fuera de la cadena con el tiempo. La red de prueba EthStorage se ejecuta en la red de prueba Ethereum Sepolia con múltiples participantes de la comunidad que demuestran con éxito su almacenamiento local.Agradecimiento: Muchas gracias a Piper Merriam de EF, Karthik Raju de Polychain, Qiang de EthStorage por proporcionar comentarios sobre el artículo.
El 22 de octubre de 2023, Péter Szilágyi, el renombrado líder de desarrollo de Go-Ethereum (Geth), expresó sus profundas preocupaciones en Twitter. Señaló que mientras los clientes Geth conservan todos los datos históricos, otros clientes de Ethereum como Nethermind y Besu pueden configurarse para funcionar sin ciertos datos históricos de Ethereum, como cuerpos y encabezados de bloques históricos. Esto hace que todos los clientes sean inconsistentes y es injusto para Geth. Provocó intensas discusiones y debates en torno al problema de almacenamiento de Ethereum dentro del plan de trabajo de Ethereum.
¿Por qué Nethermind y Besu optan por dejar de almacenar datos históricos? ¿Qué problemas subyacen a esta decisión? Desde mi perspectiva, hay dos causas raíz principales:
La primera razón se deriva de las crecientes demandas de almacenamiento para ejecutar un cliente de Ethereum. Para adentrarse en los requisitos específicos, el siguiente gráfico circular ilustra la distribución de los costos de almacenamiento para un nodo Geth recién instalado, a partir del bloque 18.779.761 el 13 de diciembre de 2023.
Como muestra la imagen:
La segunda razón es la falta de incentivos o penalizaciones en el protocolo para almacenar bloques históricos. Si bien el protocolo exige a los nodos que almacenen todos los datos históricos, no proporciona ningún mecanismo para fomentar el almacenamiento o penalizar el incumplimiento. Almacenar y compartir datos históricos por parte de los nodos se convierte en algo puramente altruista, y un nodo es libre de podar todos los datos históricos sin enfrentar ninguna consecuencia adversa. Por el contrario, los validadores, por ejemplo, deben mantener el estado completo más reciente para evitar proponer/votar por un bloque inválido, arriesgando la pérdida de incentivos en ambos casos.
Por consiguiente, cuando el costo de almacenamiento se convierte en una carga sustancial para un nodo, no es sorprendente que algunos operadores de nodos opten por podar datos históricos. Optar por ejecutar sin datos históricos puede resultar en ahorros significativos en el costo de almacenamiento, reduciéndolo de aproximadamente 1TB a alrededor de 300GB.
Ilustración: La configuración de Nethermined para ejecutar un nodo sin cuerpos de bloque históricos, ahorrando aproximadamente ~460GB de costos de almacenamiento por el momento.
Se espera que el desafío del almacenamiento se intensifique con la próxima actualización de Disponibilidad de Datos (DA) de Ethereum. El caminoHacia la escalabilidad total de Ethereum DA comienza con EIP-4844 en DenCun, introduciendo un objeto binario grande de tamaño fijo (BLOB) acompañado de un modelo de tarifas independiente conocido como blobGasPrice. Cada BLOB está configurado en 128 KB, y EIP-4844 permite que cada bloque contenga hasta 6 BLOBs. Para mejorar la escalabilidad de datos, el plan implica implementar el código Reed-Solomon 1D, lo que permite 32 BLOBs por bloque inicialmente y eventualmente alcanzar 256 BLOBs por bloque en la escalabilidad total.
Con el Ethereum DA operando a plena capacidad de datos con 256 BLOBs por bloque, se proyecta que un año de la red Ethereum DA aceptará aproximadamente 80 TB de datos, superando las capacidades de almacenamiento de la mayoría de los nodos Ethereum.
Vitalik’stweetdel Ethereum roadmap, en el que el Purge trata principalmente del almacenamiento.
Los crecientes costos de almacenamiento han captado la atención de los investigadores dentro del ecosistema de Ethereum. Para abordar esto y garantizar la alineación en todos los clientes, varias propuestas están en desarrollo para podar explícitamente el almacenamiento. Las dos propuestas principales son:
¿Cuál es la consecuencia de podar datos históricos de todos los clientes? La principal es que un nodo nuevo no puede sincronizarse con el estado más reciente a través de una “sincronización completa” - una sincronización para reproducir las transacciones desde el bloque génesis hasta el bloque más reciente. En cambio, tenemos que recurrir a una “sincronización rápida” o “sincronización de estado” para sincronizar el estado más reciente desde pares de Ethereum. Este enfoque ya está implementado en Geth y se ejecuta como la sincronización predeterminada.
De igual manera, esta consecuencia también se aplica a todos los L2, es decir, un nodo recién creado de L2 no puede volver a reproducir completamente el estado más reciente desde el génesis de L2 desde Ethereum volviendo a reproducir los bloques de L2 desde el génesis de L2. Además, dado que los nodos L1 no mantienen el estado L2, el enfoque de "sincronización instantánea" para L2 no puede derivar el estado L2 más reciente de L1, rompiendo una importante suposición de L2 de heredar las garantías de seguridad de Ethereum. La solución proyectada dependerá de servicios de terceros como Infura / Etherscan / los propios proyectos L2 para almacenar una copia de los datos o estado históricos de L2, que está centralizado con un incentivo indirecto fuera del protocolo.
Las preguntas fundamentales que estamos haciendo son
La red Portal de Ethereum sirve como una red de acceso ligera y descentralizada al protocolo Ethereum. Ofrece la interfaz JSON-RPC de Ethereum, como eth_call, eth_getBlockByNumber, que traduce las solicitudes JSON-RPC en solicitudes P2P a una tabla hash distribuida, similar a la red IPFS. A diferencia de IPFS, que permite el almacenamiento de cualquier tipo de datos y es susceptible al spam, la red P2P de Portal aloja exclusivamente datos de Ethereum, como encabezados y cuerpos históricos. Esto se logra a través de una técnica de verificación de cliente ligero incorporada dentro de la red Portal.
Una característica significativa de la red Portal es su diseño para operación ligera y compatibilidad con dispositivos de recursos limitados. Puede ejecutarse encima de un nodo con unos pocos megabytes de almacenamiento y memoria baja, promoviendo la descentralización. Incluso un teléfono móvil o un dispositivo Raspberry Pi podría potencialmente unirse a la red y contribuir a la disponibilidad de datos de Ethereum.
El desarrollo de la red Portal se alinea con la filosofía de diversidad de clientes de Ethereum, con clientes escritos en Rust, JavaScript, Nim y Go. La red beacon y la red de historial están listas para su uso, mientras que la red de estado está activamente en desarrollo. Cabe destacar que la red Portal no proporciona incentivos directos para el almacenamiento de datos, todos los nodos en la red operan altruistamente.
Ilustración: Ejecutar una red Portal (Trin) con un límite de almacenamiento de 100MB.
La red EthStorage es una red de almacenamiento descentralizada incentivada diseñada específicamente para almacenar EIP-4844 BLOBs, con el respaldo de una subvención del programa ESP.
Desde la perspectiva de la modularidad de la cadena de bloques, EthStorage funciona como una Capa 2 de Ethereum, pero cobra tarifas de almacenamiento en lugar de tarifas de transacción. Al indexar los hashes de BLOB en cadena, EthStorage es una capa de almacenamiento modular de Ethereum con una escalabilidad de almacenamiento significativa y ahorros de costos, apuntando a aproximadamente 1000 veces.
En términos de desarrollo, EthStorage ya está integrado con EIP-4844 en la red de prueba Ethereum Sepolia. Se ha realizado una prueba de estrés en EthStorage y la red de prueba Ethereum Sepolia, que involucra la escritura de aproximadamente cientos de gigabytes de BLOBs en EthStorage. Más de 50 participantes de la comunidad se unieron a la red y demostraron con éxito sus almacenamientos locales.
La principal ventaja de la red EthStorage radica en proporcionar un incentivo descentralizado y directo sobre Ethereum, una característica pionera, según nuestro conocimiento actual. Sin embargo, una limitación de la red es que está específicamente diseñada para BLOBs de tamaño fijo.
El panel de EthStorage en Ethereum Devnet
El almacenamiento de Ethereum, aunque menos destacado, tiene una importancia significativa dentro del ecosistema de Ethereum. A medida que la red de Ethereum experimenta un crecimiento rápido, el almacenamiento y la accesibilidad de los datos de Ethereum surgen como desafíos críticos. Si bien la red Portal y la red EthStorage se encuentran en sus primeras etapas, visualizamos varias direcciones intrigantes a largo plazo:
En nuestra búsqueda, aspiramos a que estos esfuerzos contribuyan colectivamente al mapa de ruta de Ethereum, sentando las bases para futuras soluciones de almacenamiento descentralizado dentro del ecosistema de Ethereum.
Este artículo es reproducido de [flujo tecnológico profundo marea], el título original es “Hoja de ruta de almacenamiento de Ethereum: desafíos y oportunidades”, los derechos de autor pertenecen al autor original [EthStorage], si tiene alguna objeción a la reimpresión, por favor contacteEquipo de Aprendizaje de Gate, el equipo lo manejará lo antes posible de acuerdo con los procedimientos relevantes.
Descargo de responsabilidad: Las opiniones expresadas en este artículo representan únicamente las opiniones personales del autor y no constituyen ningún consejo de inversión.
Otras versiones del artículo son traducidas por el equipo de Gate Learn, no mencionadas en Gate.io, el artículo traducido no puede ser reproducido, distribuido o plagiado.