hexresearch / hexresearch/hschain

Reducing IOPS, especially writes, in gossip ascension

Open
#290 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
4
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Whlle SQLite served its purpose well, it seems it amplifies disk writes by gossip. For example, state snapshot save, even for one save for every 50 height points induces 4/600 ratio of read/write IO operations.

We have to try something else. The idea is to try out key-value stores or other means that are closer to metal.

- [ ] remove direct specification of SQL queries, use combinators instead
- [ ] try out http://hackage.haskell.org/package/selda
- [ ] remove queries-as-text, add combinators instead.
- [ ] write a backend for Selda for key-value store.
- [ ] try out LMBD (fast, but uses B-tree, may degrade):
- [ ] http://hackage.haskell.org/package/lmdb
- [ ] http://hackage.haskell.org/package/lmdb-simple
- [ ] try out RocksDB:
- [ ] http://hackage.haskell.org/package/rocksdb-query
- [ ] http://hackage.haskell.org/package/direct-rocksdb
- [ ] http://hackage.haskell.org/package/rocksdb-haskell
- [ ] try out just files, if both storage systems above prove unsatisfactory. We may (partially) lose transactional functionality.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.