what's new in mongodb 2.6 at india event by company
DESCRIPTION
Matias presented new features of MongoDB 2.6 in an event at India.TRANSCRIPT
What’s New in MongoDB 2.6
Solutions Architect, MongoDB Inc.
Matias Cascallares
#MongoDBDays @mcascallares
Recent Release History
2.4 Mar‘13
2.6 Apr ’14
2.2 Aug ‘12
Aggregation Framework
Multi-Data Center Deployments
Improved Performance and Concurrency
Hash-based sharding
Text Search
V8 JavaScript engine
Faster counts
Biggest Release
Ever!
Main Improvement Areas
• Operations
• Integrated Search
• Query System
• Security
• Performance & Stability
Operations
New Wire Protocol
Client Server
write()
getLastError(w, j)
result
Version 2.4
Version 2.6
write(w, j)
result
Bulk Writes
• You need to import big set of documents
• … and you want error control
• … and you are concerned about performance
Bulk Writes - Ordered
Bulk Writes - Unordered
Maximum Time Per Query
Background Indexing and Replication
Secondary Secondary
Primary background Version
2.4 Version
2.6
Storage Allocation
• In databases with great delete ratios we can face some fragmentation
• Similar effect with those updates that increase document size
• Defragment a database can be an expensive operation
• Our goal? Reduce database fragmentation
Storage Allocation
• usePowerOf2Sizes will be the default allocation method for new collections
56 bytes
64 bytes
102 bytes
128 bytes
Integrated Search
Text Search
• Now production-ready
• Integrated with query engine
• Integrated with aggregation framework
• Multi-language document support
Features
• Language-specific tokenization and stemming
• Stop words
• Relevance ranking
• Field boosting
Supported Languages
da – Danish en – English
nl – Dutch fi – Finish
fr – French de – German
hu – Hungarian it – Italian
no – Norwegian pt – Portuguese
ro – Romanian ru – Russian
es – Spanish sv – Swedish
tr - Turkish
Integrated within find()
Integrated within aggregate()
More Text Examples
Relevance
Forcing a Language
Query System Improvements
Query System Improvements
• Index Intersection
• Aggregation Framework
• New Update Operators
Index Intersection
• Simpler ad-hoc queries
• Existing indexes can be combined to optimize a query – Less Index Maintenance – Smaller Working Set – Lower Write Overhead – More Adaptive – Able to control potential intersections using QueryShape
Index Intersection
Aggregation Framework - Output
Aggregation Framework - Explain
Aggregation Framework - Explain
Aggregation Framework - Set Operators
• $project operator in the aggregation pipeline now supports an expanded set of expressions – $setIsSubset – $setEquals – $setDifference – $setIntersection – $setUnion – $allElementsTrue – $anyElementTrue
New Update Operators
• $mul
• $min/$max
• $bit
• $currentDate
• New modifiers for $push
Security
Security
• Authentication with LDAP (Enterprise only)
• x.509 Certificates
• User defined roles
• Collection level security
• Auditing (Enterprise only)
• Windows Kerberos Support
State of Security in MongoDB 2.6
• Authentication – Who are you? – X.509 authentication and Kerberos
• Authorization – What can you do? – User Defined Roles, Collection-level Access Control
• Auditing – What have you done? – DDL, User Manipulation, Authorization failure
Roles and Collection-level Security
Auditing
• Schema actions
• Replica Set actions
• Authentication & Authorization actions
• Other actions
Auditing – Dropping a collection
Auditing – Shutting down the server
Performance & Stability
Improving Performance and Scalability
• Query router connection pooling
• Mixed SSL connections
• Expanded SNMP support
• Oplog processing is MUCH faster
• New commands for sharded environments
Thanks
Solutions Architect, MongoDB Inc.
Matias Cascallares
#MongoDBDays @mcascallares