MongoHQ review
Using MongoDB in production via MongoHQ.
We hosted our main production database with MongoHQ for about one year, and, though we recently moved to host production data ourselves, we still use MongoHQ for smaller projects and various staging databases. Here's a brief review of their service.
Background
The MongoHQ database is the main database of a social web application where members can upload photos, browse, add other members as favorite, and chat with each other. We currently handle around 1000 registrations per day. This boils down to around 3000 requests or 24000 database queries per minute. All of this is handled by a single database (no replica sets but we use a Redis cache to offload some of it).
We started off with the free plan and slowly grew with the MongoHQ plans until we were using their largest single server offering, at which point we decided to host it ourselves.
Pros
MongoHQ's database hosting is super easy to start with. We had our database up and running in no time, completely for free. Their UI is top notch and keeps improving. They added the slow queries tracker for example, which greatly helped us in identifying some missing indexes. The 3rd party integrations are nice extra - we happily use their NewRelic and PagerDuty adapters.
Cons
MongoHQ has a way to backup databases to Amazon S3. They advise only using this for databases under 15GB, as larger datasets will have a significant impact on the load of the server. Once we passed the 15GB limit, we chose to keep using the S3 backups. The larger MongoHQ plans do include snapshots, but there is no way to access them, and we knew we would want access to our database dumps at some point in the future. Our database kept growing, and in the last week, the load on the server was so significant it would take down the site while taking a backup. To be fair, this was entirely our own choice, we could have relied on the snapshots MongoHQ schedules but chose not to. MongoHQ is working on an improved backup system which might solve this issue.
Over the last year, we had to contact their support desk a few times. Their staff is professional and offers good advice - they clearly know MongoDB. The response time can use a little nudge though. Once, we failed to create a new instance through the interface when we wanted to upgrade our database. It took support 24 hours to respond to our "Things are broken, please help ASAP." ticket. Another time, when discussing an "EMERGENCY: This is a critical issue. I need a hero!" ticket it took several hours between responses. This is stressful when your database is slowly grinding to a halt.
Recommended?
Certainly. It's a great service with a really nice web interface, good insights to your MongoDB databases, and a professional staff. There is no easier way to get started, and we saved a lot of time and money in the early stages of the project, which allowed us to focus on the application layer and gradually scale up to the bigger plans.
Once a project starts growing, however, you might want to reconsider the options. The MongoHQ support is not always as fast as we would have liked and their backup system for larger databases is not (yet) what we need.