Just published the first part of series of articles aimed to explain the architecture behind a kv-store engine written in Elixir and implemented with logs. During the series I describe (and implement in Elixir just for the purpose of inspection) the concepts of logs and data immutability, sequential writes, index, segments, compaction, memtable, sstable etc…
In this first part:
- What is a log?
- Making a KV persistent using a log and an index. Using an example we will use along the series, crypto market prices and trades, we are going to see how to store the values in a log using using an index.
- LogKV in Elixir. A initial super simple implementation in elixir of a Writer, an Index and a Reader.
Please let me know what you think, available here on the forum as @alvises or on Twitter as @alvisesus