Hi, all.

 

Here are a few questions and comments that I'd welcome feedback on :

 

Questions:

 

-          If you delete the reference node (id = 0), how can you recreate
it?

-          If you have a number of "loose" or disjoint graphs structured as
trees with a single root node, is there a best practice for
tracking/iterating only the top level node(s) of these disjoint graphs?  Is
relating them to the reference node and doing a first level traversal the
best way?

-          We would like to treat our properties as slightly more complex
than a simple type (they might have a last modified date, validity flag, and
so on) - given the choice between adding properties to track this state or
using nodes and relationships for these entities, what are the pros and cons
of each approach?

-          One aspect of our application will store nodes that can be
considered similar to event logs.  There may be many thousands of these
nodes per "event stream".  We would like to be able to traverse the entries
in chronological order, very quickly.  We were considering the following
design possibilities:

o   Simply create a node for each "stream" and a node for each entry, with a
relationship between the stream and the entry, then implement our own sort
routine

o   Similar to the above, but create a node for each "day", and manage
relationships to allow traversal by stream and/or day

o   Create a node for each stream, a node for each entry and treat the
entries as a forward-only linked list using relationships between the
entries (and of course a relationship between the stream and the "first"
entry)

-          Has the fact that the node id is an "int" rather than a "long"
been an issue in any implementations?  Are node id's reused if deleted (I
suspect not, but just wanted to confirm).

-          Any whitepaper/best practices for high availability/load-balanced
scenarios?  We were considering using a message queue to send "deltas"
around between nodes or something similar.

-          We'll be hosting Neo inside a servlet engine.  Plan was to start
up Neo within the init method of an autoloading servlet.  Any other
recommendations/suggestions?  Best practice for ensuring a clean shutdown?

-          Anyone used any kind of intermediate index or other approach to
bridge multiple Neo instances?

-          Any GUI tools for viewing/navigating the graph structure?  We are
prototyping one in Adobe Flex, curious if there are others.

 

Comments/observations:

-          I love the fact that you can delete nodes and relationships from
inside an iterator.  I always hated the way I had to separately maintain a
list of "things to be deleted" when traversing XML DOMs, for example.  Nice
capability!

-          Neo seems FAST!

-          It's a bit of a major mindset change, but once the lightbulb goes
on, the potential seems limitless!

 

Thanks in advance for guidance.

 

Rick

_______________________________________________
Neo mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to