Initial Blockstores page

Bulat-Ziganshin 2022-07-02 15:28:02 +03:00
commit 7d8d1eaf0c

10
Blockstores.md Normal file

@ -0,0 +1,10 @@
_This wiki page is temporary - it's a prototype for https://github.com/status-im/nim-codex/tree/main/codex/stores/readme.md_
This directory contains implementations for blockstores. Blockstore is a storage of datablocks (seq[byte]) addressed by strings, i.e. it's a hashtable-like interface.
Modules:
- [blockstore.nim](https://github.com/status-im/nim-codex/blob/main/codex/stores/blockstore.nim) - abstract base class and API definition
- [cachestore.nim](https://github.com/status-im/nim-codex/blob/main/codex/stores/cachestore.nim) - in-memory store employing LRU cache
- [fsstore.nim](https://github.com/status-im/nim-codex/blob/main/codex/stores/fsstore.nim) - disk-based store with each block stored in separate file, backed up by [cachestore.nim](cachestore.nim) for least recently used blocks
- [networkstore.nim](https://github.com/status-im/nim-codex/blob/main/codex/stores/networkstore.nim) - retrieves data from the network (peers), backed up by local [fsstore.nim](fsstore.nim)