MongoDB Roadmap
Transcript of MongoDB Roadmap
![Page 1: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/1.jpg)
What’s next?
Senior Solutions Architect, 10gen
Norberto Leite
![Page 2: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/2.jpg)
Recent Release History
2.2Aug ‘12
2.4 Winter ‘13
2.0Sept ‘11
1.8March ‘11
Journaling
Sharding and Replica set enhancements
Spherical geo search
Index enhancements to improve size and performance
Authentication with sharded clusters
Replica Set Enhancements
Concurrency improvements
Aggregation Framework
Multi-Data Center Deployments
Improved Performance and Concurrency
![Page 3: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/3.jpg)
2.2 Overview
![Page 4: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/4.jpg)
2.2 Release August 2012
• Concurrency: yielding + db level locking
• New aggregation framework
• TTL Collections
• Improved free list implementation
• Tag aware sharding
• Read Preferences
• http://docs.mongodb.org/manual/release-notes/2.2/
![Page 5: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/5.jpg)
Yielding and DB Locking
• Improved yielding on page fault
• Breaking down the global level lock– Lock per Database in 2.2
![Page 6: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/6.jpg)
Aggregation Framework
• Pipeline model (a bit like unix pipes)– Like a "group by"– Operators
• $project, $group, $match, $limit, $skip, $unwind, $sort
– Expressions• Logical Expressions: $and, $not, $or, $cmp ...• Math Expressions: $add, $divide, $mod ...• String Expressions: $strcasecmp, $substr,
$toLower ...• Date/Time Expressions: $dayOfMonth, $hour...• Multi-Expressions: $ifNull, $cond
• Use Cases: Real-time / inline analytics
![Page 7: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/7.jpg)
Time to Live (TTL)
• Auto expire data out of a collection
• Must be on a date datatype
• Single value is evaluated
• Use Cases: data retention, cache expiration
db.events.ensureIndex( { "timestamp": 1 }, { expireAfterSeconds: 3600 } )
![Page 8: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/8.jpg)
Tag Aware Sharding
• Distribute data based on a Tag
• Use Cases: Locality for Data by Data Center
sh.addShardTag("shard0000", "dc-emea")
sh.addTagRange("mydb.users", { country: "uk"}, { country: "ul"}, "dc-emea");
sh.addTagRange("mydb.users", { country: "by"},{ country: "bz"}, "dc-emea");
![Page 9: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/9.jpg)
Read Preferences
• Mode– PRIMARY, PRIMARY_PREFERRED– SECONDARY, SECONDARY_PREFERRED– NEAREST
• Tag Sets– Uses Replica Set tags– Passed Tag is used to find matching members
![Page 10: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/10.jpg)
2.4 and Beyond
![Page 11: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/11.jpg)
2.4 Highlights
• Security– SASL, Kerberos, Additions to privileges and auditing
• Hash-based Sharding• Geospatial Indexing: query intersecting polygons• Aggregation framework: faster and more features• V8, background secondary indexing, replica set flapping• Distribute non-sharded collections throughout cluster• MMS running in your own data center (separate)
![Page 12: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/12.jpg)
Ongoing Work
• Collection / Extent level locking
• Field level authorization
• Auditing
• Full-text query
![Page 13: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/13.jpg)
What can I do?
• MongoDB is a community driven product
– Use the product– Log feature requests– Vote for existing features
• Join the Israel MUG– http://www.meetup.com/mongo-il/
![Page 14: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/14.jpg)
Thank you!
![Page 15: MongoDB Roadmap](https://reader036.fdocuments.us/reader036/viewer/2022062418/5562533dd8b42a6c368b5151/html5/thumbnails/15.jpg)