Raccolta dei rifiuti
2 risposta
- voti
-
- 2019-01-30
Ogninodo Tezosmantiene una rappresentazione dello stato corrente del libromastro. Questo statoinclude cose come l'archiviazione di ogni contratto,l'equilibrio di diversiindirizzi,ecc. L'obiettivo dellablockchain è consentire a una rete decentralizzata dipartecipanti di raggiungereil consenso su ciò che è quello stato.
Poiché la catenapuò avere riorganizzazioni,a volte ènecessario chei noditorninoindietroneltempo di alcuniblocchie calcolino uno stato diverso. Perfare ciòin modoefficiente,devonoesserein grado di ricordare rapidamente qualera lo statofino apochiisolatifa.
Nell'attualeimplementazione,ilnodo ricorda ogni singolo statoin cui èpassato. Questo èin aggiunta a ricordaretuttii blocchi!
Garbage collection significaeliminaregli statipassati chenon sonopiùnecessari alnodoe occupare spazioprezioso su disco. Inbase allaprogettazione,ilprotocollonon consente riorganizzazionipiù lunghe di 5 cicli,quindi è sicuro scartaretuttigli statipiù vecchi. Tuttavia,gli statipossonoessere scartatiin modopiù aggressivopoiché sonomoltoimprobabiligrandi riorganizzazioni.
Inpratica,unbuon approccio consistenelmemorizzare alcuni stati recenti come unpozzoe alcuni vecchie rari. Se si verifica una lunga riorganizzazione,ilnodo sceglierà lo stato di cui è a conoscenzaprima delpunto di riorganizzazionee ricostruirà lo statofino a quelpunto.
Quando vengonomantenuti sologli ultimi 5 cicli,lo spazio su disco occupato è almeno 10 volteinferiore.
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.
-
- 2019-02-22
Se seiinteressato a uno studio sull'impatto deimiglioramenti dello spazio di archiviazione,consulta qui (c'è anche un collegamento verso unnodotezosefficientein termini di archiviazione).
If you are interested in a study on the impact of storage improvements, see here (there is also a link towards a storage-efficient tezos node).
Ho sentito che ci sonopianiper lagarbage collectionper lablockchain di Tezos.Cosa significaesattamente questo?Cosa sono questi "rifiuti" che devonoessere raccolti,perché sono lìin primo luogo?Lagarbage collection viene utilizzata soloperi nodinon completi opertuttii nodi?Quanto spazio risparmieremo dalla raccolta dei rifiuti?