18 comments

[ 3.8 ms ] story [ 32.3 ms ] thread
This might a stupid question but is this competing with Neo4j or Giraph? I didn't see a mention of comparison with either in the docs. I believe graph data storage and graph processing are two different things - is TItan doing both?
Some benchmarks against other graphdbs (but it was with Titan 0.3): http://euranova.eu/upl_docs/publications/an-empirical-compar...
Some nice changes in this release. Having built-in TTL on edges and vertices would have simplified several different system's I've worked on.
For those interested in Titan 1.0 roadmap and the evolution of the Titan OLTP/OLAP story. Titan will be implementing TinkerPop3 API http://www.tinkerpop.com/docs/current/ ... Currently, Titan 0.5.0 leverages the Faunus Gremlin compiler (http://faunus.thinkaurelius.com), but with TinkerPop3, TinkerPop3 provides an OLAP compiler for Gremlin that will make things easier for Titan as well as other graph computing engines implementing the stack http://www.tinkerpop.com/docs/current/#traversalvertexprogra...
I would love to hear about peoples experiences working with Titan (or other graph dbs, for that matter) - I've been following the project with interest for some time now.

If you don't want to comment on HN I'd really appreciate an email to craig dot glennie gmail

We are using titan at my job and we will be releasing an open source library for interacting with the graph in PHP via Gremlin call Mogwai (there seems to be a few libs with the same name and purpose, so we might change it).

We like it so far, but are having some issues with the server crashing. I'll update to this release and see if it fixes our issues.

Does this one work? I spent a bit of time playing with Titan earlier this year before passing and moving on.

IMHO the project made a critical design error by trying to be backend agnostic. From a technical perspective, that gives the worst of all worlds for everyone involved.

Yes, it works :-) Support for multiple storage backends gives Titan a lot of deployment flexibility and allows it to inherit some great features like multi DC support. Software component reuse is pretty standard these days. What lead you to the conclusion that it is the worst of all worlds?
I think you've documented some of the issues on the Titan Limitations page. For us, we couldn't get Titan to work properly, which we documented in the Issue Tracker. That lead me to the conclusion that Titan was just too complex because from my perspective it's obvious that you guys are spreading yourselves too thin with the 7 different backends.

Why do you need both a BerkeleyDB and PersistIt backend? At the absolute most you should have 2 or 3. Single Machine, AP Cluster, ACID Cluster.

7 backends means 7 different database products, with the same API facade. Duh right? Well the problem is that constrains your API to a least common denominator feature set, limiting access to the unique attributes and capabilites of the underlying backend. Not to mention completely abstracting away memory/disk issues. This is a really big issue with your approach. You have some sunken costs here but I think eventually you will see the value in tightening up your focus.