NethermindEth / nethermind

A robust execution client for Ethereum node operators.
https://nethermind.io/nethermind-client
GNU General Public License v3.0
1.28k stars 446 forks source link

Blocks & Receipts DB sizes #4790

Open MarekM25 opened 2 years ago

MarekM25 commented 2 years ago

Our blocks and receipts DBs look far from optimal.

Geth db: image

Nethermind db: image

But keep in mind that we're using ancient barriers for receipts. So we need ~200GB for receipts from ~4 million blocks, while geth is using ~120 GB for 15 million blocks. After having some first conclusions, it would be great to discuss the solution with the team. This issue is more like a project/epic, and we can create smaller issues (investigate issue, optimize receipts_db, optimize blocks_db, migrate receipts, migrate blocks). The hardest part might be migration.

LukaszRozmej commented 2 years ago

The difference is that we are using a storage format that is optimized for the node operation and not storage size. We should potentially change that. It will have some performance hit.

kamilchodola commented 1 month ago

To be closed most likely as we improved blocks and receipts a lot over time.

@LukaszRozmej @MarekM25 correct me if im wrong

kamilchodola commented 1 month ago

Migration is probably a thing we do not have