NoSQL for the enterprise
Following my talk at Jazoon (which I covered in my earlier blog), I had a whirlwind trip to five Java User Groups (JUGs) in Europe and the Pacific Northwest. I would like to thank Gerd Cestan and the Stuttgart JUG, Antonoio Goncalves and the entire committee at Paris JUG, Nimret Sandhu and the Seattle JUG, Manfred Moser and the Victoria JUG and Darren Gibbons and Sam Cirka and the Vancouver JUG for hosting me. Despite glorious weather and some scheduling quirks (Germany was scheduled to play Italy in the Euro cup semi finals around the same time as I was scheduled to talk, in Vancouver there was a slight issue with booking the room at Univ. of British Columbia) most of the talks ran to packed houses indicating a very high interest level for NoSQL in general and Couchbase in particular.
What I like about Couchbase today is that it's "lean, clean and mean" very similar to Unix and Java in it's early days. The "simple, fast and elastic" theme of Couchbase resonates very well with this. There are many examples of customers who rave about the usage of memcached just like this one from Kayak. However, in talking to many of the enterprisey folks that I typically encounter in JUGs, they are concerned about long lived transactions, inner and outer joins and a host of other features that enterprises generally tend to worry about.
While I realize that some of these features are essential to make a play in the enterprise, I also worry about the inevitable feature creep or bloat. Many of the JUGgies love the recent Views feature from CouchDB that enables secondary indexing in Couchbase and satisfies use cases that are not primary key based. But, there is certainly a balancing act in adding more features and still keeping Couchbase simple, fast and elastic. I hope that developers and customers will keep pushing us in the direction of the latter even as we add some features to make it more compelling for adoption in the enterprise.