2020-12-11 08:06:20 +08:00
|
|
|
# Simple Flash Key Value store
|
|
|
|
|
2020-12-14 03:16:38 +08:00
|
|
|
Tries to keep flash wear low and speed high by continuously appending
|
|
|
|
data, automatically erasing and rewriting when full.
|
2020-12-11 08:06:20 +08:00
|
|
|
|
|
|
|
## Store requirements
|
|
|
|
|
|
|
|
* Reading must be possible by memory-mapping a `&[u8]` slice
|
|
|
|
* Must support `erase()` for compaction,
|
|
|
|
* Writing must support `program()` with an offset and `&[u8]` payload
|
|
|
|
|
|
|
|
For details see `trait StoreBackend`.
|
|
|
|
|
2020-12-12 02:54:11 +08:00
|
|
|
## Ideas
|
2020-12-11 08:06:20 +08:00
|
|
|
|
|
|
|
* iterator (quadratic)
|
|
|
|
* compaction to a second backend instead on stack
|
|
|
|
* StoreBackend-configurable erased data detection
|