From 7d8d1eaf0c66fbf8a6e4c0238d78edbb06f2b3c3 Mon Sep 17 00:00:00 2001 From: Bulat-Ziganshin Date: Sat, 2 Jul 2022 15:28:02 +0300 Subject: [PATCH] Initial Blockstores page --- Blockstores.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 Blockstores.md 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) +