Blockchain

什麼是狀態樹修剪,它是如何工作的?

  • May 21, 2017

一些 消息來源提到了 state-trie 修剪的想法。那是什麼,目前是否正在網路上實施?這是手動過程還是可以自動完成?如果乙太坊目前在目前容量下每月處理 1 GB,並且可以隨著更大的採用而增長,那麼狀態樹修剪能否防止乙太坊區塊鏈的大小變得笨拙?一些消息來源似乎很擔心

它與程式語言和基於樹的版本控制系統(如 git)中的垃圾收集類似概念。當乙太坊合約執行時,它們會修改它們的狀態。而且由於狀態樹是一個不可變的僅追加結構,這意味著每次修改狀態時,都會獲得一個新的狀態根。從舊根可訪問的某些元素可能無法從新根訪問(由於刪除或修改條目的操作)。理論上,它們可以被修剪(垃圾收集)。然而,由於工作量證明共識並沒有定義狀態轉換何時是最終的,所以理論上總是存在狀態將恢復到較舊的根並且再次需要被修剪的東西的可能性。因此,修剪目前是一種權衡。我們說,例如,在 5000 塊之後,我們假設狀態不會被恢復並修剪所有無法訪問的節點。有人可能仍想禁用此功能以保留區塊鏈的整個歷史以用於特殊目的。

這是一個非常詳細的描述: https ://blog.ethereum.org/2015/06/26/state-tree-pruning/

引用自:https://ethereum.stackexchange.com/questions/174