Can MongoDB Make NoSQL Fun Again?
MongoDB became the most popular NoSQL database because developers really like writing applications for it, according to MongoDB CEO Max Schireson. But when it comes to operating the database clusters, there was something to be desired. With today’s release of MongoDB version 2.6, the company is aiming to make running a NoSQL database as enjoyable as developing for it.
MongoDB got a head start in the burgeoning NoSQL database business and jumped out to an early lead. Millions of dollars in venture capital fueled efforts to build and market an alternative to standard relational databases, and the market responded. Today, MongoDB is the highest ranked NoSQL database at DB-Engines.com, number five among all databases, and soon will bump off PostgreSQL to own the number four spot, according to Schireson.
“There’s just a ton of momentum around the product,” Schireson told Datanami in an interview last week. “That’s the reason why hundreds of thousands of engineers are signing up for seven-week online MongoDB training classes. That’s the reason why it’s the number two fastest growing job skill out there, behind HTML5 but ahead of things like Hadoop and iPhone and Android. And it’s the reason that it represents about half of NoSQL market total, with the rest of it being fragmented among 30 other players.”
There’s no doubt that MongoDB has been successful. But along with that $1-billion valuation comes a giant target on its back. The CEOs of Couchbase and MarkLogic, its two biggest competitors in the document-oriented NoSQL market, along with the CEO of NewSQL competitor Clustrix, have taken shots at MongoDB in hopes of exploiting cracks in the top dog’s armor and boosting the market presence of their own offerings.
Version 2.6 is all about shoring up some of those weak points, most notably around the operational side of MongoDB. “I think it’s much easier to manage a MongoDB server than it is to manage an Oracle server. That said, it’s still complex to manage 100 nodes of MongoDB,” Schireson said. “Not only does it have to be fast and agile to build applications, but it should be easy to operate them. Deploying them, operating them, upgrading them, maintaining them–it needs to be easy. Our goal is to have the operations people love operating MongoDB as much as developers love building applications against it. I think there will be a huge step forward in that regard with this release.”
With version 2.6, MongoDB is delivering point in time recovery as a fully supported feature in its MongoDB Management Service (MMS) component, which the company first unveiled two years ago. It also made single-click provisioning and hot upgrades capabilities available as alpha features in MMS version 1.4. These alpha features are being tested by a select group of customers, the company said.
Kelly Stirman, the company’s director of product marketing, says he used the new provisioning feature to create a 500 node cluster with a few clicks of the mouse. “It did result in me getting in trouble for spending so much money at Amazon, but it was fun to do,” he said.
When it’s available, the new hot upgrade capability will allow administrators to “seamlessly upgrade large clusters without downtime,” Schireson said. “The Holy Grail for an administrator would be to push a button and the cluster upgrades itself without any downtime to the end user. And we’re delivering on that. We’re making a lot of progress.”
|MongoDB CEO Max Schireson|
The new index intersection feature that MongoDB delivered in its query planner bolsters the database’s formidable indexing capabilities, Stirman said. “If you were building an application on MySQL, it would be very common to have different indexes. It’s very much the same idea in MongoDB. We have a really rich set of index options,” including geospatial, sparse, unique, compound, time to list, and text search, he said.
The new index intersection feature gives developers another option to use instead of compound indexes, which are fast but have other costs associated with them. “The more indexes you have, the more load you’re moving in the systems during writes and other operations,” Stirman explained. “With index intersection, you can just have the [minimum number] of indexes on the fields, and skip the compound indexes. It won’t be quite as fast as having the compound index defined ahead of time, but you have fewer indexes you’re maintaining, and that has its own set of advantages.”
The two other major new features include support for text search and new security capabilities, including support for field-level security, customizable auditing, LDAP and x509 authentication, collection-level authorization, and user-defined roles. “You won’t need a security exemption from some security committee to run applications,” Stirman said.
The text search function supports for more than 200 languages (15 of them in an advanced way), and eliminates the need to add and support a secondary text-search engine into applications built on MongoDB. “With 2.6, they can just turn on a search index in MongoDB, and they can use MongoDB for search and not have to worry about managing a whole separate infrastructure for their application,” Stirman said.
MongoDB 2.6 may not solve all the issues that customers have with the database. The company took a lot of heat last year when it posted a “scaling checklist” guide that warned of possible problems that could crop up as a database exceeds 100GB. While the company may not have addressed all of those concerns yet, the operational issues are squarely on the company’s radar, and that’s good news for the company and its 1,000+ users.