ガベージコレクション
2 回答
- 投票
-
- 2019-01-30
各Tezosノードは、元帳の現在の状態の表現を維持します.その状態には、各契約の保管、異なるアドレスのバランスなどが含まれます.ブロックチェーンの目標は、参加者の分散型ネットワークがその状態について合意に達することを可能にすることです.
チェーンは再編成される可能性があるため、ノードが数ブロック前に戻って別の状態を計算する必要がある場合があります.これを効率的に行うには、数ブロック前の状態をすばやく思い出す必要があります.
現在の実装では、ノードはこれまでに経験したすべての状態を記憶しています.これは、すべてのブロックを覚えておくことに加えてです!
ガベージコレクションとは、ノードで不要になった過去の状態を破棄し、貴重なディスク領域を占有することを意味します.設計上、プロトコルでは5サイクルを超える再編成は許可されていないため、それより古い状態はすべて破棄しても安全です.ただし、大規模な再編成はほとんど行われないため、州はより積極的に破棄される可能性があります.
実際には、いくつかの最近の状態をウェルとして保存し、いくつかのまばらな古い状態を保存することをお勧めします.長い再編成が発生した場合、ノードは再編成ポイントの前に認識している状態を選択し、そのポイントまでの状態を再構築します.
過去5サイクルのみが保持されている場合、占有されるディスク容量は少なくとも10分の1になります.
Each Tezos node maintains a representation of the current state of the ledger. That state includes things like the storage of each contract, the balance of different addresses, etc. The goal of the blockchain is to allow a decentralized network of participants to reach consensus on what that state is.
Since the chain can have reorganizations, it's sometimes necessary for the nodes to go back in time by a few blocks and compute a different state. In order to do so efficiently, they need to be able to quickly remember what the state was as off a few blocks ago.
In the current implementation, the node remembers every single state it ever went through. This is in addition to remember all the blocks!
Garbage collection means discarding past states which are no longer needed by the node and take up valuable disk space. By design, the protocol does not allow reorganizations longer than 5 cycles, therefore it is safe to discard all states older than that. However, states can be discarded more aggressively since large reorganizations are very unlikely.
In practice, a good approach is to store a few recent states as a well and a few, sparse, old ones. If a long reorganization happens, the node will pick whichever state it knows about prior to the reorganization point and reconstruct the state up to that point.
When only the past 5 cycles are kept, the disk space occupied is at least 10 times smaller.
-
Tezosブロックチェーンのガベージコレクションの計画があると聞きました.これは正確にはどういう意味ですか?収集する必要があるこれらの「ゴミ」とは何ですか、そもそもなぜそこにあるのですか?ガベージコレクションは、フルでないノードまたはすべてのノードにのみ使用されますか?ガベージコレクションからどのくらいのスペースを節約できますか?