erigontech / erigontech/erigon
rcache vi is too big?: ef as index instead of vi
- Dominant language
- Go
- Stars
- 3.6k
- Forks
- 1.5k
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 455
Description
reason: domain/history not really designed for rcache/receipt kind of data, but we had to fit it in.
There's an opportunity to have lower sizes and faster access speed (will speed up `eth_getBlockReceipts` rpc) using different kind of index
```
499M /erigon-data/snapshots/accessor/v1.1-rcache.0-256.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.1024-1280.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.1280-1536.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.1536-1792.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.1792-2048.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.2048-2304.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.2304-2560.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.2560-2816.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.256-512.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.2816-3072.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.3072-3328.vi
499M /erigon-data/snapshots/accessor/v1.1-rcache.3328-3584.vi
```
it makes sense...recsplit is at 5bytes per key..
but maybe we can do a new type of accessor -- which just stores a elias-fano sequence (or just use the ef itself?)
Maybe it can be applied in other places too. Can be applied to receipt/rcache domain/history.
Contributor guide
Assessment
This issue has not been assessed yet.