Likelihood to Recommend Great for REST API development, if you want a small, fast server that will send and receive JSON structures, CouchDB is hard to beat. Not great for enterprise-level relational database querying (no kidding). While by definition, document-oriented databases are not relational, porting or migrating from relational, and using CouchDB as a backend is probably not a wise move as it's reliable, but It may not always be highly available.
Read full review Titan is definitely a good choice, but it has its learning curve. The documentation may lack in places, and you might have to muster answers from different sources and technologies. But at its core, it does the job of storing and querying graph databases really well. Remember that titan itself is not the whole component, but utilizes other technologies like cassandra, gremlin, tinkerpop, etc to do many other things, and each of them has a learning curve. I would recommend titan for a team, but not for a single person. For single developer, go with
Neo4j .
Read full review Pros It can replicate and sync with web browsers via PouchDB. This lets you keep a synced copy of your database on the client-side, which offers much faster data access than continuous HTTP requests would allow, and enables offline usage. Simple Map/Reduce support. The M/R system lets you process terabytes of documents in parallel, save the results, and only need to reprocess documents that have changed on subsequent updates. While not as powerful as Hadoop, it is an easy to use query system that's hard to screw up. Sharding and Clustering support. As of CouchDB 2.0, it supports clustering and sharding of documents between instances without needing a load balancer to determine where requests should go. Master to Master replication lets you clone, continuously backup, and listen for changes through the replication protocol, even over unreliable WAN links. Read full review Titan is really good for abstraction of underlying infrastructure. You can choose between different storage engine of your choice. Open source, backed by community, and free. Supports tinkerpop stack which is backed by apache. Uses gremlin for query language making the whole query structure standardized and open for extension if another graph database comes along in future. Read full review Cons NoSQL DB can become a challenge for seasoned RDBMS users. The map-reduce paradigm can be very demanding for first-time users. JSON format documents with Key-Value pairs are somewhat verbose and consume more storage. Read full review The community is lacking deep documentation. I had to spend many nights trying to figure many things on my own. As graph databases will grow popular, I am sure this will be improved. Not enough community support. Even in SO you might not find many questions. Though there are some users in SO who quickly answer graph database questions. Need more support. Would love an official docker image. Read full review Likelihood to Renew Because our current solution S3 is working great and CouchDB was a nightmare. The worst is that at first, it seemed fine until we filled it with tons of data and then started to create views and actually delete.
Read full review Usability Couchdb is very simple to use and the features are also reduced but well implemented. In order to use it the way its designed, the ui is adequate and easy. Of course, there are some other task that can't be performed through the admin ui but the minimalistic design allows you to use external libraries to develop custom scripts
Read full review Implementation Rating it support is minimal also hw requirements. Also for development, we can have databases replicated everywhere and the replication is automagical. once you set up the security and the rules for replication, you are ready to go. The absence of a model let you build your app the way you want it
Read full review Alternatives Considered Read full review To be honest, titan is not as popular as
Neo4j , though they do the same thing. In my personal opinion, titan has lot of potential, but
Neo4j is easier to use. If the organization is big enough, it might choose titan because of its open source nature, and high scalability, but
Neo4j comes with a lot of enterprise and community support, better query, better documentation, better instructions, and is also backed by leading tech companies. But titan is very strong when you consider standards. Titan follows gremlin and tinkerpop, both of which will be huge in future as more graph database vendors join the market. If things go really well, maybe
Neo4j might have to support gremlin as well.
Read full review Return on Investment It has saved us hours and hours of coding. It is has taught us a new way to look at things. It has taught us patience as the first few weeks with CouchDB were not pleasant. It was not easy to pick up like MongoDB. Read full review Steep learning curve. Your engineers would have to spend lots of time learning different components before they feel comfortable. Have to plan ahead. Maybe this is the nature of graph databases, but I found it difficult to change my schemas after I had data in production. It is free, so time is the only resource you have to put in titan. Read full review ScreenShots