[Neo4j] 10 questions

Linan Wang tali.wang at gmail.com
Thu Sep 1 03:29:00 CEST 2011

got some questions not found simple answers from the documents. i bet
some of them are pretty primitive, bear with me  please.

1, what's the general rule for choosing properties or relationship?
say a User lives in a City, which just contains a simple int  id
value. to find users live in a city, i can do a simple traversal, of
all user nodes, or find the city node first, then collect all the
users. seems to me both ways work and share same level of performance.
(am i right here?)
2, does index operation add/remove/modify threadsafe, don't need
3, does it simple property writing operations also need to be wrapped
inside transaction? if so, in the imdb exmaple
tutor/domain/MovieImpl.java underlyingNode.setProperty is used neither
within transaction, nor put into a save method, do all setProperty
works inside a transaction?
4, what's the best practice to do bulk insertion when running (not
seed initial data)? i read post says that too many insertions within a
transaction may lead to memory problem? what's the proper mount of
insertion within a transaction?
5, is there a suggested max length for string/array property? would it
be better to put into sql?
6, say a facebook user may "likes" thousands of things, and these
things are sparsly connected. in this case, things should be modeled
as nodes or array property?
7, where can i find an example to use domain models with serverplugin?
i want to put my data in a standalone server and just use the
serverplugin, unmanaged extension. should i just put the domain models
into the same serverplugin jar?
8, the warning in the documentation about unmanaged extension is
scary. what i can see is that people may use bad ways, instead of
Iterator/IteratorWrappers. any comment on this?
9, i'm not sure if it's trival: find out users who are only 2
relationships a way (use twitter example: my followees' followers),
live in same city, group by age and gender. also retrieve all their
followees. i want to do the traversal in java, where can i find an
10, i've had horrible experience in turning jvm options. have neo4j
been running on Zing JVM, hp nonstop jvm? are they better options?

thanks in advance

Best regards

Linan Wang

More information about the User mailing list