Introduction to NoSQL
- What Is NoSQL?
- Why NoSQL databases are required.
- Types of NoSQL Database
- NoSQL vs SQL Comparison
- ACID & BASE Property
- CAP Theorem
- Benefits of NoSQL databases
- Installation
- Start and Stop the mongodb process
Architecture
- Document, Collection, Databases
- JSON and BSON
- Storage Engines (WiredTiger and MMAP)
- Read Path
- Journaling
- Write Path
- Working Set
- Capped Collection
- Oplog collection
- TTL Index
- GridFS
CRUD Operations
- Mongodb Data Types
- Inserting, Update, Deleting the documents
- Querying the documents
- Bulk insert operation
- Updating multiple document
- Limiting documents
- Filtering documents
Schema Design and Data modeling
- Dynamic Schema
- What is Data modeling?
- RDBMS and Mongodb Data modeling difference
- Embedding Document
- Reference Document
Indexes and Index management
- Index concepts in mongodb
- Types of indexes
- Indexes and its use cases
- Creating Indexes
- Managing Indexes
- Index strategies
Database Administration
- Database status
- Troubleshooting issues
- Current Operations
- Rotating log files
- Users and Roles
- DB and Collection Stats
- Explain plan
- Profiling
- Changing configuration files
- Upgrading the database
Backup and Security
- Concept of backups
- mongoexport/mongoimport
- mongodump/mongorestore
- Oplog backups
- Backups using MMS/Ops Manager
- Purpose of security
- Authentication and authorization
- Role based access control
Replication
- Concept of replication
- ReplicaSet member roles
- Voting and Electing primary
- Role of Oplog in replication
- Read and Write Concern
- Arbiter,Hidden and Delayed replica node
- Priority settings
- Replicaset nodes health check
- Concept of resyncing the nodes
- Rollbacks during failover
- Keyfile authentication
Scalability
- Concept of Scalability
- Sharding concept
- Shardkey and Chunks
- Choosing shardkey
- Sharding components
- Types of Sharding
- Balanced data distribution
- Sharded and Non-sharded collection
- Sharded Replicaset
- Tag aware sharding
Monitoring and Other Tools
- MMS Manager
- Ops Manager
- Mongo utility commands
- Mongo developer tools
- Mongodb Atlas
- Mongodb client drivers