Agree! There should be option to have pluggable storage system for this. That way people can write + pick and choose what storage mechanism they need.
indeed, I see that this project is storing documents as js objects so is likely to overwhelm the GC when the database is in the region of 500mb or so. For things like this it's usually better to use an ArrayBuffer for storage, but this complicates the implementation significantly.
It is possible to write very fast js, but it's hard to write very fast idiomatic js
I believe that depends on the document size. Large, static stuff gets written in a separate heap. Generally, bad performance happens with tons of tiny items.
Why isn't v8 good at large heal sizes?
Good question. This has just been my experience compared to the JVM or Go. That said, it's still an amazing VM. Just don't use it for 100gb heaps...
Probably something to do with being designed to run as part of a web browser. :)