Skip to content

Repository for a workshop on the topic - building storage engine

Notifications You must be signed in to change notification settings

SarthakMakhija/storage-engine-workshop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Idea

This repository will be used in "building storage engine" workshop. As a part of that workshop, we will build a storage engine using LSM tree, but we will not implement merge and compaction.

This repository is supposed to contain the following:

  • Implementation of Memtable
  • Implementation of SSTable
  • Implementation of concurrency, using either a single writer/multiple readers pattern or a singular update queue pattern
  • Implementation of segmented write-ahead logging
  • Implementation of transactions
  • Implementation of Bloom filter
  • Implementation of "Put", "Get", "MultiGet"
  • Implementation of "Get" and "MultiGet" in Memtable and SSTable
  • Implementation of "Update" using versioned put (Next version)

Build Status

Actions Status

Running the tests

go test -v ./...

About

Repository for a workshop on the topic - building storage engine

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages