I've posted the same question on Stackoverflow (which, by the way, does't seem to be the right place for this kind of question) and got a nice answer from Stefan Armbruster. Here's the answer. It may help others neo4j devs -------------------------------------------------------------------------------------
The on-disk size of your graph is in total ~32 GB. Neo4j has a two layered cache architecture. The first layer is the file buffer cache. Ideally it should have the same size as the on disk graph, so ~32GB in your case. *IMPORTANT* When running Neo4j on Windows, the file buffer cache is part of Java heap (due to the suckiness of Windows by itself). On Linux/Mac it's off heap. That is reason why I generally do not recommend production environments for Neo4j on Windows. cache_type should be hpc when using enterprise edition and soft for community. To have some reasonable amount for the second cache layer (object cache) I'd suggest to have a machine with at least 64GB RAM. Since file buffer and object cache are both on heap, make heap large and consider using G1: -Xmx60G -XX:+UseG1GC. Observe GC behaviour by uncommenting gc logging in neo4j-wrapper.conf and tweak the settings step by step. Please note that Neo4j 2.2 might come with a different file buffer cache implementation that works off heap on Windows as well. ------------------------------------------------------------------------------------- -- You received this message because you are subscribed to the Google Groups "Neo4j" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
