Information Retrieval in MongoDB Data storage, Indexing and Querying Kaustubh Dhokte (NB97699) University Of Maryland Baltimore County CMSC 676: Information Retrieval
Agenda ´ Introduction to MongoDB ´ MongoDB Architecture ´ MongoDB Storage Architecture ´ Indexing in MongoDB ´ MongoDB Query Engine
MongoDB ´ Database Engine ´ Open Source ´ Distributed ´ Full Fledged ´ Text Search ´ Aggregation ´ Cloud Based
MongoDB Architecture
MongoDB Architecture ´ RDBMS or Document Based? ´ SQL or NoSQL? ´ Dynamic ´ Horizontally Scalable ´ Sharding ´ Fault Tolerant ´ Replica Sets ´ Load Balanced
MongoDB Storage Architecture
MongoDB Storage Architecture
MongoDB Data Model ´ Databases ´ Collections ´ Indexes ´ BSON http://bsonspec.org/ MongoDB Query Language ´ Database drivers of popular languages
MongoDB Storage Engines ´ WiredTiger (Default) ´ MMAPv1 (Deprecated in latest version of MongoDB) ´ In-memory ´ Non-persistent ´ Encrypted ´ 3rd Party Integrations ´ E.g. RocksDB
MongoDB Indexing
MongoDB Indexing ´ Index Data Structure: B-Tree ´ Primary Indexes: _id ´ Secondary (User defined indexes) ´ Single Field ´ Compound Index ´ Multikey ´ Text ´ Hashed
MongoDB Indexes Properties ´ Unique ´ Partial ´ TTL indexes
MongoDB Query Engine
MongoDB Query Engine
Query Planner ´ Inputs ´ Predicate ´ Projection ´ Sort ´ Outputs Blueprint of what happens in query execution
Query Planner ´ Index Selection ´ IXSCAN ´ COLLECTIONSCAN ´ AND/OR ´ Access: Plan Generation ´ Analysis: Sort, Project
Query Planner ´ Selecting Best Plan ´ One Work Unit: ´ One index key ´ One document ´ Results Produced per work unit executed ´ Plan Ranking ´ Plan Caching
References ´ https://www.researchgate.net/figure/MongoDB-architecture- researchgate-2018_fig2_330841309 ´ https://www.mongodb.com/blog/post/building-applications-with- mongodbs-pluggable-storage-engines-part-1 ´ https://www.slideshare.net/NorbertoLeite/mongodb-internals-55965341 ´ https://docs.mongodb.com/manual/
Thank You
Recommend
More recommend