tag:blogger.com,1999:blog-2632979000196645905.comments2010-03-13T22:19:05.410+00:00SemanticCAnonymoushttp://www.blogger.com/profile/14276724887861380619noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-2632979000196645905.post-70503744804861108912010-03-13T19:49:17.226+00:002010-03-13T19:49:17.226+00:00Hi Peter and SemanticC,
Very long, pure graph tra...Hi Peter and SemanticC,<br /><br />Very long, pure graph traversals are probably going to be faster in neo since it uses linked lists. For shorter ones, where most of the data is already in the cache, performance is going to be comparable.<br /><br />However, I object to the "more pragmatic" bit :) I think it's quite the opposite. If you need a graph where all you do is massive traversals, then neo is more "pragmatic" and I would highly recommend it. If you need a database that is also designed to cover other common aspects in "real world" applications, such as typing, an evolving schema, n-ary relations as in SQL, if you need to store objects and the ability to customize that storage to your needs (e.g. blobs or value graphs), if you need more general querying capabilities other than traversals, well I would say hgdb is much more "pragmatic" :)<br /><br />Best,<br />BorisBorislav Iordanovhttps://www.blogger.com/profile/01780885752802085533noreply@blogger.comtag:blogger.com,1999:blog-2632979000196645905.post-84947506318105189242010-03-13T19:13:25.164+00:002010-03-13T19:13:25.164+00:00Peter,
Thank you very much for these comments. It ...Peter,<br />Thank you very much for these comments. It looks like I have inadvertently found myself more things to do! I will have to follow up over the next few days by implementing some of the Tutorial type examples for both projects to see how that helps my understanding and comprehension of the respective APIs. Please bear in mind that at this stage I am 'playing'. I do want to get a web site up that demonstrates something along the lines mentioned in my post 'Knowledge Combinatorics'. This makes heavy use of Tapestry, AJAX, Node.js, any ejb server for legacy - which I mock out for demo purposes. It is my intention that AJAX requests return data from a NoSQL backend, the high performance seems a good match, and the ability to define functions or methods against the datastore what I am looking for. I very much doubt I will have time to be thorough in my investigation at this stage. I will just plumb for one of the stores that I have most success in programming against. The web site is a demonstrator project. I will inform anyone I have contact with on the way when it is up. (Wish me luck!)<br />AdamAnonymoushttps://www.blogger.com/profile/14276724887861380619noreply@blogger.comtag:blogger.com,1999:blog-2632979000196645905.post-26902796889816338722010-03-13T18:43:26.763+00:002010-03-13T18:43:26.763+00:00Hi SemanticC,
Boris and me briefly tried to get a ...Hi SemanticC,<br />Boris and me briefly tried to get a grip on the main differences/similarities at NOSQL Live.<br />While there is no comparison available, just briefly:<br /><br />- HypergraphDB is has a very generic model that lets any ID point to any other ID on top of a Berkely DB (or probably any) K/V store, which permits any upper model layer, amongst others a graph, hypergraph or relational model.<br /><br />- Neo4j is a bit more pragmatic and implements a Property Graph model (well, academically speaking a "multi labeled directed graph" with an optimized storage layer where the references between nodes, relationships and properties actually exist as persistent references, leading to very good performance in real world scenarios since there is no storage impendance penalty for traversing the graph beside disk IO. Traversal is a contact time operatoin independent on the size of the graph. An artikel on that is in the making.<br /><br />You can use both HGDB and Neo4j for modeling of RDF Triple- and Quadstores. While HGDB will let you build anything on nested K/V store lookups, Neo4j is projecting any model onto the property graph, so the traversal speeds of > 1M nodes/relationships per second on normal HW can help solve interesting problems.<br /><br />For a deeper discussion, please contact me off-list or Skype!Anonymoushttps://www.blogger.com/profile/08648014346248909032noreply@blogger.com