Course Overview
Course Content
- Understanding the basic concepts of a Database
- Database categories: What is NoSQL? Why NoSQL? Benefit over RDBMS
- Types of NoSQL Database, and NoSQL vs. SQL Comparison, ACID & Base Property
- CAP Theorem, implementing NoSQL and what is MongoDB?
- Overview of MongoDB, Design Goals for MongoDB Server and Database, MongoDB tools
- Understanding the following: Collection, Documents and Key/ Values, etc.,
- Introduction to JSON and BSON documents
- Case study discussion
- Environment setup (live Hands-on) and using various MongoDB tools available in the MongoDB Package
- Data Modelling Concepts
- Why Data Modelling? Data Modelling Approach
- Analogy between RDBMS & MongoDB Data Model, MongoDB Data Model (Embedding & Linking)
- Challenges for Data Modelling in MongoDB
- Data Model Examples and Patterns
- Model Relationships between Documents
- Model Tree Structures
- Model Specific Application Contexts
- Use Case discussion of Data modeling
- Hands-on
- MongoDB Development Architecture
- MongoDB Production Architecture
- MongoDB CRUD Introduction, MongoDB CRUD Concepts
- MongoDB CRUD Concerns (Read & Write Operations)
- Concern Levels, Journaling, etc.,
- Cursor Query Optimizations
- Query Behavior in MongoDB
- Distributed Read & Write Queries
- MongoDB Datatypes
- MongoDB CRUD Syntax & Queries
- Hands-on
- Administration concepts in MongoDB
- Monitoring issues related to Database
- Monitoring at Server, Database, Collection level, and various Monitoring tools related to MongoDB
- Database Profiling, Locks, Memory Usage, No of connections, page fault etc.,
- Backup and Recovery Methods for MongoDB
- Export and Import of Data to and from MongoDB
- Run time configuration of MongoDB
- Production notes/ best practices
- Data Managements in MongoDB (Capped Collections/ Expired data from TTL), Hands on Administrative Tasks
- Hands-on
- Introduction to Replication (High Availability)
- Concepts around Replication
- What is Replica Set and Master Slave Replication?
- Type of Replication in MongoDB
- How to setup a replicated cluster & managing replica sets etc.,
- Introduction to Sharding (Horizontal Scaling)
- Concepts around Sharding, what is shards, Key
- Config Server, Query Router etc.
- How to setup a Sharding
- Type of Sharding (Hash Based, Range Based etc.), and Managing Shards
- Hands-on
- MongoDB Package Components
- Configuration File Options
- MongoDB Limits and Thresholds
- Connection String URI Format/ Integration of any compatible tool with MongoDB API and Drivers for MongoDB
- MMS (MongoDB Monitoring Service)
- HTTP and Rest Interface
- Integration of MongoDB with Hadoop and Data Migration MongoDB with Hadoop (MongoDB to Hive)
- Integration with R
- Hands-on