Как спроектировать key-value store на Go?

Senior
84 просмотров
AFK Offer AI

LSM tree: запись в memtable (sorted map), при заполнении — flush на диск как SSTable. Чтение: проверить memtable → immutable memtable → SSTables (bloom filter для fast miss). Compaction: merge SSTables для уменьшения read amplification. WAL для durability. Go: sync.RWMutex для memtable, горутина для compaction, mmap для чтения SSTables.

Следующий вопрос

Как реализовать push notification на Go?