Hi Johan and thanks for your answer. I think that I have figured out the major concepts behind PersistenceSource and I have a partially working prototype of Neo4j using Cassandra. As you stated it, I had to make some minor modifications to Neo4j core to handle my own PersistenceSource. I really want to keep my work compatible with future versions of Neo4j, would it be possible to include back the possibility to choose that source ?
Some concepts remain unclear to me and I still have some unanswered questions. - Why do you use a property index ? It seems to me that it is used to store an integer id / property key correspondence and then use it to store / retrieve properties. Is it tightly coupled to the way nioneo handles properties or am I missing something more important ? - PersistenceSource, Transaction and Command have a clear role in the xaframework. But I don't really see the difference between XaDataSource and XaConnection. - I don't understand the Logicallog and what this process is used for. Thanks in advance, Jawad On Tue, May 18, 2010 at 1:22 PM, Johan Svensson <jo...@neotechnology.com>wrote: > Hi, > > Have a look at org.neo4j.kernel.impl.nioneo.xa package. To implement a > new persistence source start by creating new implementations of the > NeoStoreXaDataSource and NeoStoreXaConnection classes. It is no longer > possible to swap in a different persistence source using configuration > (used to be) but if you modify the code in > org.neo4j.kernel.GraphDbInstance.start method to register > YourImplNeoStoreXaDataSource instead of the nioneo one (with same > name) it should work. > > Back when we had Neo4j running on different relational databases > (Postgres, Informix, MySQL) one big problem was that when the number > of total relationships in the graph increased the time to figure out > what relationships a specific node had also took longer time > (regardless if that node had few relationships). It is important to > have a getRelationships method were execution time is connected to > number of relationships on that node to maintain high traversal speed > as the graph increase in size. > > Regards, > Johan > > On Sat, May 15, 2010 at 8:03 PM, Jawad Stouli <ja...@citizenplace.com> > wrote: > > > > > > Hi everyone, > > > > I would be very interested in getting more information > > that would help me implement new persistence sources. I have read (there: > > http://www.mail-archive.com/user@lists.neo4j.org/msg00006.html) that it > > should not be that difficult (or, at least, it is possible) but I still > > have some difficulties while navigating through the sources to understand > > exactly how it should be done. > > > > Besides, I have read that using MySQL was > > less efficient than Nioneo. Was the difference really important ? > > > > Best, > > > > > > Jawad > _______________________________________________ > Neo mailing list > User@lists.neo4j.org > https://lists.neo4j.org/mailman/listinfo/user > _______________________________________________ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user