SwayDB icon indicating copy to clipboard operation
SwayDB copied to clipboard

Allow compaction, cache and file management process to be shared between multiple instances

Open simerplaha opened this issue 5 years ago • 0 comments

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.

simerplaha avatar Aug 11 '20 15:08 simerplaha