什麼是奇偶光剪枝模式?
Parity 提供四種不同的修剪方法:歸檔、基本、快速和輕量級:
--pruning METHOD Configure pruning of the state/storage trie. METHOD may be one of auto, archive, basic, fast, light: archive - keep all state trie data. No pruning. basic - reference count in disk DB. Slow but light. fast - maintain journal overlay. Fast but 50MB used. light - early merges with partial tracking. Fast and light. Experimental! auto - use the method most recently synced or default to archive if none synced [default: auto].
我剛剛嘗試過,
archive
因為我有足夠的空間和時間來進行完全同步。它與如下所示的 geth 鏈大小進行比較:~ $ du -hs .parity/ 17G .parity/ ~ $ du -hs .ethereum/ 15G .ethereum/
現在,我看到
archive
這很像 eth 或 geth 中的預設同步。但什麼是basic
,什麼是light
?和是fast
同一水平geth --fast
嗎?什麼是奇偶光剪枝模式?這是否已經被視為輕客戶端?
geth和parity有不同的方法以內部格式保存乙太坊區塊鏈。我做了很多長凳,因為我發現它很長只是為了使用一個錢包。
修剪模式是塊數據的保存方式。使用存檔模式,所有狀態都被保存。因此,您無需重新載入所有區塊鏈即可了解每一刻的狀態。在快速和輕便的情況下,我們假設我們不需要所有這些資訊,只需要目前狀態和之前的少量資訊,因此我們刪除了許多中間狀態。
在geth上, –fast 方法將區塊鏈的狀態保存在塊**B$$ -1500 $$**以及此塊之後的所有狀態(B
$$ -1 $$是最後一個塊,B$$ -2 $$是最後一個塊之前…)。因此可以在最後 1500 個塊的狀態下倒帶。使用完整的區塊鏈,您可以對所有區塊執行此操作。 在奇偶校驗中,有 4 種修剪模式或 journalDB 算法:
- 存檔(Archive):作為geth存檔我們保留所有狀態
- Fast (OverlayRecent):作為 geth Fast,我們保持**B的所有完整狀態$$ -i $$**塊
- Light (EarlyMerge):我們保留**B的所有狀態$$ -i $$**塊但有差異(因此它小於快速但較慢的訪問)
- Basic (RefCounted):我們保留**B的所有狀態$$ -i $$**塊與 OverlayRecent 類似,但我們在 x 更改後刪除狀態……所以我們只有最後 x 次更改
在 i7 3720QM 16GB ram 和 Geth 1.4.4 上完成的基準測試(Homestead with 1.6Mi blocks)
_____________________________________________ | Option | Disk Used | Time | Disk Written | |--------|-----------|------|---------------| | none | 19.GB | 5h00 | 1TB | | fast | 3.7GB | 1h00 | 100GB | ---------------------------------------------
在 i7 3720QM 16GB ram 和 Geth 1.5.0 不穩定的基礎上完成的基準測試(在https://gitter.im/ethereum/go-ethereum?at=574d26c010f0fed86f49b32f找到具有 1.6Mi 塊的 Homestead )
__________________________________________________ | command | Disk Used | Time | Disk Written | |-------------|-----------|------|---------------| | geth | 21GB | 5h00 | 150GB | | geth --fast | 4.2GB | 21m | 35GB | | geth export | 1.5GB | 10m | | | geth import | 21GB | 3h30 | | --------------------------------------------------
在 i7 3720QM 16GB ram 和 Parity 1.2 上完成的基準測試(Homestead with 1.6Mi blocks)
_____________________________________________ | Option | Disk Used | Time | Disk Written | |--------|-----------|------|---------------| | archive| 19.GB | 2h00 | 300GB | | fast | 3.7GB | 1h30 | 20GB | | light | 2.5GB | 2h00 | 130GB | ---------------------------------------------
注意:當您有一個帶有區塊鏈的節點時,您可以轉儲geth目錄的鏈數據,以便與您的其他電腦一起使用。我用 Linux、Windows 和 OS X 來檢查它。
注意:如果您使用 –cache 和 1024,它可能會更快。但這在我的系統上並不重要。–jitvm 也是如此
注意:乙太坊區塊鏈在交易後保存了最終狀態,但重播交易以檢查它們更安全。