I forgot to add another recurrent issue that can be solved with indexed 
relationships: guaranteed unicity constraints.  
> From: pd_aficion...@hotmail.com
> To: user@lists.neo4j.org
> Date: Mon, 4 Jul 2011 01:55:08 +0200
> Subject: [Neo4j] Indexed relationships
> 
> 
> In the thread [Neo4j] traversing densely populated nodes we discussed the 
> problems arising when large numbers of relationships are added to the same 
> node.
> Over the weekend, I have worked on a solution for the 
> dense-relationship-nodes using SortedTree in the neo-graph-collections 
> component. After some minor tweaks to the implementation of SortedTree, I 
> have managed to get a workable solution, where two nodes are not directly 
> linked by a relationship, but by means of a BTree (entirely stored in the 
> graph). 
> Before continuing this work, I'd like to have a discussion about features, 
> since what we have now is not just a solution for the dense populated node 
> issue, but is actually a full fledges indexed relationship, which makes it 
> suitable for other purposes too. 
> An indexed relationship can for example be used to maintain a sorted set of 
> relationships in the graph, that is not necessarily huge, but large enough to 
> make sorting on internal memory too expensive an operation, or situations 
> where only one out of a large number of relationships is actually traversed 
> in most cases. 
> There are probably more use cases for in-graph indexed relationships, so I'd 
> like to know what features are desirable and what API would Neo4J users 
> appreciate.
> P.S. I still think it would be good to consider, if technically possible, 
> partitioning the relationship store per relationship type and per direction. 
> The indexed relationship solution works, but is of course slower than a 
> direct relationship, both with respect to insert time and traversal time. If 
> dense relationships are never traversed going out of the dense node, the 
> extra structure maintained by the BTree is only extra burden. 
> P.P.S. If there are people with experience to make an implementation thread 
> safe, please volunteer to help make the implementation production proof.
> Niels                                           
> _______________________________________________
> Neo4j mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user
                                          
_______________________________________________
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to