commit 7d8d1eaf0c66fbf8a6e4c0238d78edbb06f2b3c3 Author: Bulat-Ziganshin Date: Sat Jul 2 15:28:02 2022 +0300 Initial Blockstores page diff --git a/Blockstores.md b/Blockstores.md new file mode 100644 index 0000000..31d7c22 --- /dev/null +++ b/Blockstores.md @@ -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) +