Hi Christian,
I'd say that your approach is close to an optimal solution, as the ADD command is pretty cheap, compared to e.g. REPLACE. If you believe that you could still run into some bottlenecks, you could have a look at, or provide us, with the output of Java's profiler (e.g. -Xrunhprof:cpu=samples),
Ok, I will look into this if we get bitten by performance issues (the longer collections do usually take a fair amount of time to be inserted, at least concurrently).
- is there a performance penalty in doing this kind of parsing concurrently?
Concurrent operations will be managed by the central transaction manager. At the time of writing this, all write operations are performed one after another, but in near future, concurrent write operations to different databases will also be run in parallel.
Excellent news. I noticed things were slowing down when we had multiple collections inserted at the same time, so this should probably help.
- are there any JVM parameters that would help speed this up? I
In general, Java will be faster when run with -server, but this option may have been chosen anyway by your Java runtime. Regarding the maximum amount of memory, there shouldn't be any noteworthy differences when adding documents.
Hope this helps, Christian
Thanks!
Manuel