SwayDB
SwayDB copied to clipboard
Allow compaction, cache and file management process to be shared between multiple instances
We can very easily spawn multiple database instances like following
val map1 = swaydb.persistent.Map[Int, String, Nothing, Bag.Less]("myMap1")
val map2 = swaydb.persistent.Map[Int, String, Nothing, Bag.Less]("myMap2")
val set = swaydb.persistent.Set[String, Nothing, Bag.Less]("mySet")
val queue = swaydb.persistent.Queue[String, Nothing, Bag.Less]("myQueue")
val multiMap = swaydb.persistent.MultiMap[String, Int, String, Nothing, Bag.Less]("myMultiMap")
Right now they all these instances does not shared background processes like cache management and compaction threads. Being an embedded instance we want to share these background processes between multiple DB instances for efficient usage of CPU and so that creating many db instances like above becomes cheap.