
About Course
Objective
MongoDB is an open-source NoSQL document database that provides high performance, high availability, and automatic scaling. MongoDB provides high performance data persistence such as support for embedded data models reduces I/O activity on database system and it has indexes which support faster queries and can include keys from embedded documents and arrays.
An Overview of Big data
- What is Big Data.
- Different formats of data
- Distributed and Parallel processing of Big Data
- Different frameworks for handling Big Data
- Batch and Real Time Processing
An Overview of SQL Relational Databases
- The Role of the MySQL Database Server
- Databases, Tables, Rows and Columns
- Recap on Primary Keys and Foreign Keys Explained
Understanding of NoSQL Non-Relational Databases
- Introduction to NoSQL databases
- Landscape of NoSQL
- CAP Theorem and Eventual consistency
- Batch Time Processing v/s Real Time processing
- Difference between NoSQL and SQL databases
- Introduction to different types of NoSQL databases
- Key – value
- Columnar
- Document
- Graph based
Introduction to NoSQL MongoDB Document Databases
- Introduction to MongoDB databases
- Installation of MongoDB 3.4.9 on Linux environment RHEL (6 or 7) 64 bit
- MongoDB – deployment
- Mongo Shell
- Databases and Collections
CRUD operations
- Views
- Documents
- Data Import from JSON format
- Inserting documents
- Query documents with conditions
- Sort and Limit operations
- Updating documents
- Upsert operations
- Data export
Indexes
- Creating Indexes
- Text Indexes and Search
Aggregation Framework
- Aggregation concepts
- Aggregation Pipelines
- Shell Methods
- Query Operators
Schema Design
- Schema Design concepts for MongoDB
- One to Many and Many to Many relationships
- Embedding documents
Replication and Sharding
- Understanding Replication
- Replica sets
- Concepts of Sharding
- Impact of Sharding on performance