10gen, the MongoDB company, has announced the general availability of MongoDB 2.4, the latest release of the agile and scalable NoSQL document database.
New capabilities in MongoDB 2.4 include hash-based sharding, capped arrays, text search, geospatial enhancements and a number of other key features.
In addition, 10gen introduced MongoDB Enterprise as part of a new MongoDB Enterprise subscription level. MongoDB Enterprise contains new monitoring and security features such as Kerberos authentication and role-based privileges.
With the new hash-based sharding capability, MongoDB provides horizontal scaling by sharding data across multiple physical servers. This new option simplifies the creation of large-scale MongoDB systems. It is built on top of MongoDB’s range-based sharding.
In a blog post on the new release, Eliot Horowitz, chief technology officer and co-founder of 10gen, said, “Using a hashed shard key allows users to get a good distribution of load and data in a simple manner, in cases where documents are accessed randomly through the key space, or if the access patterns may not be totally predictable.”
Meanwhile, applications frequently provide real-time visibility into top ranking attributes, such as leaderboards and most viewed, emailed or purchased items. Capped arrays simplify development by allowing developers to easily maintain a sorted array of fixed length within documents.
“Capped arrays declare a fixed size array inside of a document,” Horowitz said. “You can also specify a sort, which will first sort the array, and then apply the trim.”
The new text search capability is still in beta. Search is the primary interface for navigating data in many applications. MongoDB’s native, real-time text search simplifies development and deployment for MongoDB users with stemming and tokenization in 15 languages, 10gen said.
In a blog post from January, the MongoDB team said, “MongoDB text search is still in its infancy and we encourage you to try it out on your data sets. Many applications use both MongoDB and Solr/Lucene, but realize that there is still a feature gap. For some applications, the basic text search that we are introducing may be sufficient. As you get to know text search, you can determine when MongoDB has crossed the threshold for what you need.”
MongoDB is an open-source, document database popular among developers and IT professionals because of its agile and scalable approach. MongoDB provides a JavaScript Object Notation (JSON) data model with dynamic schemas, extensive driver support, auto-sharding, built-in replication and high availability, full and flexible index support, rich queries, aggregation, in-place updates and GridFS for large file storage.
“MongoDB 2.4 delivers a rich array of features that users have been asking for, and the number of features and pace of innovation is a testament to our increased engineering team,” Horowitz said in a statement. “MongoDB Enterprise is suited to the growing number of large organizations that are adopting MongoDB and responds to their needs related to monitoring and security.
Regarding new geospatial enhancements, mobile and social applications and government programs rely on location and sophisticated geospatial analysis; thus, the new MongoDB 2.4 release introduces GeoJSON support, a more accurate spherical model and polygon intersections. GeoJSON is a format for encoding a variety of geographic data structures.
10gen’s MongoDB 2.4 Ships, Adds Enterprise Features
The MongoDB count operation performance has improved, including low cardinality index-based counts that are 20 times faster than prior releases of MongoDB. And performance for real-time analysis of data using MongoDB’s Aggregation Framework is now three to five times faster for most operations, 10gen said.
“In many cases, counts in MongoDB 2.4 are an order of magnitude faster than previous versions,” Eliot said. “We made numerous optimizations to the query execution engine in order to improve common access patterns. One example is in a single b-tree bucket: if the first and last entry in the bucket match a count range, we know the middle keys do as well, thus we do not have to check them individually.”
Moreover, “Capacity planning is critical to running a MongoDB cluster,” he said. “In MongoDB 2.4 we added a working set size analyzer, making it easy to measure the percentage of resources used. It will tell you how many unique pages the server has needed in the last 15 minutes, so that you can track usage over time. When the amount of data needed in 15 minutes is approaching RAM, it’s probably time to add more capacity to your cluster.”
Replication improvements are such that replication is now significantly faster for initial synchronization, providing greater flexibility and lower risk for maintaining system availability, 10gen officials said. MongoDB 2.4 intelligently determines when to initiate the election of a new primary replica during network hiccups.
In addition, 10gen changed the JavaScript engine it supports. “MongoDB 2.4 changed the JavaScript engine used for MapReduce, $where and the shell,” Horowitz said. “We have switched to V8, the JavaScript engine from Google Chrome, which improves concurrency.”
“Interest in MongoDB continues to accelerate based on its ease of use and flexibility for developers,” said Matt Aslett, research director for data management and analytics at 451 Research, in a statement. “The new operational capabilities delivered in MongoDB 2.4, including new sharding capabilities, simplified capacity planning and security features, will likely drive further adoption as more MongoDB-based applications are deployed into production.”
MongoDB Enterprise features include on-premise monitoring, visualization and alerting on more than 100 operational metrics of a MongoDB system in real time, based on the same application that powers 10gen’s popular MongoDB Monitoring Service (MMS).
And MongoDB 2.4’s two major security enhancements are Kerberos authentication and role based access control (RBAC), Horowitz said. Kerberos is part of MongoDB Enterprise and allows integration with enterprise level user management systems. RBAC allows more fine grained privilege management, he said. There are separate responsibilities for server, database and cluster administration.
“10gen has raised the bar on what to expect for quick and easy live database monitoring,” said Harun Yardymcy, a software architect at eBay, in a statement. “On-premise monitoring allows us to actively diagnose application issues quickly and easily to improve our MongoDB-powered application’s performance and ultimately provides a superior experience for our customers, which is our top priority.”
As one of the more popular new technologies, MongoDB has more than 4 million downloads, 50,000 online education registrations, 15,000 MongoDB User Group (MUG) members, 14,000 MongoDB Monitoring Service users and 10,000 attendees at MongoDB global events in 2012.
10gen has more than 600 commercial customers including many leading brands, such as Cisco, Craigslist, Disney, EA, eBay, Ericsson, Forbes, Foursquare, Intuit, LexisNexis, McAfee, MTV, Salesforce.com, Shutterfly and Telefonica. Common use cases include operational and analytical big data, content management and delivery, mobile and social infrastructure, user data management and data hub.
MongoDB 2.4 is available for download here.