Stable Release in branch 2.0
2.0.9
Released 29 Mar 2013
(13 years ago)
SoftwareMongoDB Server
Version2.0
Status
End of life
Initial release2.0.0
11 Sep 2011
(14 years ago)
Latest release2.0.9
29 Mar 2013
(13 years ago)
End of life31 Mar 2013
(Ended 13 years ago)
Release noteshttps://www.mongodb.com/docs/manual/release-notes/2.0/
Documentationhttps://www.mongodb.com/docs/v2.0/
Downloadhttps://www.mongodb.com/try/download/community
MongoDB Server 2.0 ReleasesView full list

What Is New in MongoDB 2.0

MongoDB 2.0 delivers significant performance gains and introduces powerful new data processing capabilities. This release focuses on making the database faster and more feature-rich for production workloads.

Category Key Changes
New Features Concurrent Locking, Sparse Indexes, Geospatial Indexing, Covered Indexes
Performance Faster Inserts, Improved Index Builds, Compaction Enhancements
Improvements Better Replication, Enhanced sharding (auto-sharding), New Storage Engine
Deprecated Legacy Global Lock, Old Index Types

How did concurrency improve in MongoDB 2.0?

The biggest leap is the introduction of database-level locking, a major step up from the previous global lock. This means writes can now happen concurrently on different databases within the same mongod instance.

In practice, this dramatically improves throughput for multi-tenant applications where each tenant has its own database. You'll see fewer write operations blocking each other, leading to better overall system utilization.

What new indexing options are available?

Sparse indexes and covered indexes are two powerful additions. Sparse indexes only include documents that have the indexed field, which saves a ton of space for optional fields. Covered indexes allow queries to be answered entirely from the index without fetching the full document.

Geospatial indexing also got a huge upgrade. You can now perform complex location-based queries, which is a game-changer for mapping and real-time location applications.

Is MongoDB 2.0 faster for writes?

Yes, significantly. The new storage engine and reduced locking contention lead to much faster insert performance. Bulk writes see the most dramatic improvement, making data ingestion pipelines much more efficient.

Index builds are also non-blocking for reads in most cases now. You can build indexes on large collections without taking your application offline, which is huge for maintenance operations.

How did sharding and replication get better?

Auto-sharding became more robust and easier to manage. The balancer got smarter about moving chunks between shards, leading to better data distribution and more predictable performance in a clustered environment.

Replication enhancements make failover smoother and recovery faster. These improvements are crucial for anyone running mission-critical applications that require high availability.

FAQ

Should I expect breaking changes when upgrading to 2.0?
Most applications will run without modification, but check the release notes for deprecated features. The indexing changes might require some query adjustments if you were using old index types.

Do sparse indexes affect query performance?
They can make queries much faster when filtering on sparsely populated fields. Since the index is smaller, it can be scanned more quickly, but it only returns documents that actually have the field.

How does database-level locking work in practice?
Each database gets its own lock. Writes to different databases can proceed concurrently, but writes to collections within the same database still serialize. It's a middle ground between the old global lock and collection-level locking.

Can I use geospatial queries with sharded collections?
Not in 2.0. Geospatial indexing works only on unsharded collections in this release. You'll need to plan your data architecture accordingly if you need location-based queries on large datasets.

What's the main reason to upgrade to 2.0?
The concurrency improvements alone are worth it for any write-heavy application. The reduced lock contention means your application can handle more simultaneous operations without slowing down.

Releases In Branch 2.0

VersionRelease date
2.0.929 Mar 2013
(13 years ago)
2.0.9-rc127 Mar 2013
(13 years ago)
2.0.816 Nov 2012
(13 years ago)
2.0.8-rc026 Oct 2012
(13 years ago)
2.0.707 Aug 2012
(14 years ago)
2.0.7-rc130 Jul 2012
(14 years ago)
2.0.7-rc014 Jul 2012
(14 years ago)
2.0.604 Jun 2012
(14 years ago)
2.0.6-rc022 May 2012
(14 years ago)
2.0.508 May 2012
(14 years ago)
2.0.5-rc103 May 2012
(14 years ago)
2.0.5-rc025 Apr 2012
(14 years ago)
2.0.419 Mar 2012
(14 years ago)
2.0.4-rc006 Mar 2012
(14 years ago)
2.0.327 Feb 2012
(14 years ago)
2.0.3-rc117 Feb 2012
(14 years ago)
2.0.3-rc006 Feb 2012
(14 years ago)
2.0.214 Dec 2011
(14 years ago)
2.0.2-rc207 Dec 2011
(14 years ago)
2.0.2-rc122 Nov 2011
(14 years ago)
2.0.2-rc017 Nov 2011
(14 years ago)
2.0.122 Oct 2011
(14 years ago)
2.0.1-rc117 Oct 2011
(14 years ago)
2.0.1-rc012 Oct 2011
(14 years ago)
2.0.011 Sep 2011
(14 years ago)
2.0.0-rc207 Sep 2011
(14 years ago)
2.0.0-rc102 Sep 2011
(14 years ago)
2.0.0-rc025 Aug 2011
(14 years ago)