本週以太坊 ACDC 會議上,在坎昆升級結束後重新討論了關於歷史資料增長快速的議題,雖然增長幅度因升級而有所下降但仍然過快,因此開發者已取得共識將會把 EIP-4444 的重要性與排程向前推進。以太分基金會成員彙整會議內容,鏈新聞摘要整理。

本文為鏈新聞編譯整理,如有疑義,請參考原文。

背景知識:狀態與歷史資料介紹

定義

根據 Paradigm 的研究提供參與者基本觀念,狀態 (State) 與歷史資料是兩個不同概念的資料集:

  • 狀態是建立和驗證新的以太坊區塊所需的一組資料,狀態由合約字節碼、合約儲存、帳戶餘額和帳戶隨機數組成。

  • 歷史資料是將節點從創世紀區塊同步到最新區塊所需的資料集,歷史資料由區塊和交易組成。

狀態與歷史資料為何成長

狀態和歷史資料給節點的硬體帶來三個面向的壓力:

  • 狀態成長:新帳戶、新合約字節碼、新合約儲存資料的累積。

  • 歷史資料成長:新區塊和新交易的累積。

  • 狀態存取:建構和驗證區塊時的相關讀寫操作。

每次以太坊執行交易時,該交易使用的所有資源都以燃料費定價。因此以太坊的燃料費限制對所有形式的鏈上活動進行限制,進而影響區塊大小和每個區塊的操作數量。

接下來,每個區塊的位元組越多,歷史記錄就成長得越快。另一方面,每個區塊的操作越多,狀態存取速率越大,並且通常狀態增長率也越大。

狀態與歷史資料問題結構地圖 (資料來源) 狀態與歷史資料成長將會如何影響節點

這些壓力導致節點的硬體負擔不斷加大,具體上有以下四點:

  1. 網路讀取:節點為與網路達成穩定共識,而必須維持的上傳和下載速度量。

  2. 儲存大小:是節點為了建構、驗證和分發區塊而必須在永久儲存中保存的資料量。

  3. 記憶體大小:是節點必須在記憶體中保留的快取資料量,以便與最新區塊保持同步。

  4. 儲存讀取:是節點為與最新區塊保持同步,而必須執行的每秒讀寫操作量。

推薦閱讀:為什麼說狀態膨脹是區塊鏈擴容技術發展瓶頸的最終 Boss? 推薦原因:閱讀該文章可以理解狀態與帳本歷史資料的差異,並知道狀態目前並沒有很好壓縮的手段,若放任狀態膨脹不管可能會造成網路長期的崩壞而無法修復。

歷史資料過期回歸!

而本次會議中,歷史資料成長的問題再次被提及。

跨鏈橋是歷史資料成長主因

而本次 ACDC 會議上,開發者人員 @notnotstorm 與 @gakonst 分析以太坊狀態資料和歷史資料成長,其表示歷史資料的發展速度遠遠快於狀態的發展速度十倍,這主要是由各種跨鏈橋所導致的。

歷史資料增長來源占比變化圖 (資料來源)

預計歷史資料將會嚴重影響整體以太坊的儲存結構,導致結點的硬體負擔增大。

坎昆升級減緩成長速率

而坎昆升級 (Dencun) 在減緩歷史資料成長這方面提供了一點幫助。大約減少了 50% 跨鏈橋的歷史資料增長量,大約是整體增長量的 33%。

坎昆升級後以太坊歷史資料成長幅度降低三成

(坎昆升級對於用戶有什麼影響?鏈新聞線下聚會 Ramble Bar 重點整理)

但以太坊歷史資料的增長率,仍然是狀態增長率的 10 倍左右。

EIP-4444 重要性提升

因此,在本次會議中,大多開發者一致認為應該繼續研究 EIP-4444,將歷史資料導入過期功能。理想的目標是在明年左右停止在以太坊 p2p 層上提供合併前的歷史資料。

EIP-4444 要執行,需要其他方式來下載歷史記錄和標準化儲存格式,這兩者的作業已經在進行開發了。

推薦閱讀:以太坊釋出 2024 路線圖,持續以世界結算層方向前進 推薦原因:該文章內有提及 EIP-4444 在以太坊路線圖中的定位,原本開發者認為可以依靠其他方式減緩歷史資料成長的問題,而將 EIP-4444 延後。在坎昆升級結束後,歷史資料過期將會是更高優先度的重要作業。

這篇文章 EIP-4444 歷史資料過期提案,已成為以太坊開發者明年重大目標之一 最早出現於 鏈新聞 ABMedia。