In my role as Chief Technology Officer of Rakuten Kobo, I help our teams evaluate and adopt new technologies. Document Databases is one of those technologies we adopted a few years ago.
Last week, I sat down (virtually) with Oren Eini (Ayende Rahien) - the founder and CEO of Hibernating Rhinos (the makers of RavenDB) and discussed our journey from exploratory testing of different technologies to the challenges of adopting a new technology.
You can watch the webinar here:
The key takeaways are:
Having a robust technology evaluation process is important. Put contenders through their paces, really prove your proof of concepts. Do exploratory testing and have some fun with destructive exploratory testing.
For our criteria, we were looking for a few things: Along with the usual Reliability and Performance metrics, we wanted to see frugal resource usage, and most importantly a great development and operations experience.
Our incumbent technology (Couchbase) was failing us. We put it up against MongoDB and RavenDB. Both of them blew Couchbase out of the water in almost all respects. A white paper that the RavenDB folks put together was based on our evaluation.
MongoDB and RavenDB turned out to be very similar for the Reliabilty and Performance metrics, but we chose RavenDB because it had a much better development and operations experience.
In the years since, we’ve been very happy with our choice. We have many critical workloads running on it, our developers and ops folks are happy, and we started making use of other features such as attachments, subscriptions, and ETL’s to simplify our apps and other infrastructure. The unit testing story is also extremely helpful and the recent release of ETL to RabbitMQ will help us a lot.