Data Management

Course Description

Introduction to MongoDB Architecture, NoSQL, CRUD, Schema Design, Data Modeling and Indexing. MongoDB is a highly distributed database providing high availability, horizontal scaling, and geographic distribution to the users. This program will assist you in gathering an understanding of the document oriented NoSQL database – MongoDB, its Architecture, CRUD, Schema Design, Data Modeling and Indexing while working on real world examples.

32 Hours

This course covers:

  • Mastering data modeling
  • Ingestion
  • Query
  • Sharding
  • Various Data Formats
  • MongoDB CRUD
  • Application Integration
  • Backup and Recovery

There are no specific prerequisites to participate in this MongoDB training program, however, an understanding of any programming language such as Java, basic understanding of database concepts, and the knowledge of a text editor such as ‘VI editor’ would be beneficial.

Overview - SQL/NoSQL

  • A brief into NoSQL
  • Relational versus NoSQL data stores
  • Entities, Relationships and Database modeling
  • When to use Relational and when to use NoSQL
  • Categories of NoSQL stores
  • Examples of NoSQL stores
  • NoSQL Storage Structures


Data Formats

  • Data Formats
  • JSON Data Format
  • BSON Data Format
  • Advantages of BSON

Introduction to MongoDB

  • Key Features
  • Starting and Stopping the server
  • Using the shell

MongoDB Architecture

  • Servers
  • Connections
  • Database
  • Collections
  • Documents
  • Fields
  • Indexes
  • ReplicaSet
  • Sharding


  • Insert (C)
  • Simple Query Examples (R)
  • Update (U)
  • Remove (D)


  • Indexing concepts
  • Types of Indexes
  • Indexes covering queries

Querying MongoDB

  • Query Expression Objects
  • Query Options
  • Cursors
  • Mongo Query Language
  • Cursors

Advanced querying

  • Joins
  • Projections (Retrieving a subset of fields)
  • Conditional operators
  • Aggregation
  • Grouping


  • Why Replication?
  • Difference between replication and backup
  • Replication Setups
  • Master/Slave Replication
  • Replica sets
  • Configuring ReplicaSets
  • Adding members to ReplicaSet
  • Removing members from ReplicaSet
  • Setting up an Arbiter
  • Oplogs
  • Write concerns


  • Adding admin user
  • Adding database users
  • Starting server with auth enabled
  • Using authentication
  • Replica sets and authentication
  • Role management

Application Integration

  • Develop Java application using MongoDB
  • Develop PERL programs using MongoDB


  • Idea of Sharding
  • How is sharding different from replication?
  • Shard servers
  • Config servers
  • mongos
  • Sharding with Replication
  • Configure and Setup Sharding using ReplicaSets


  • The data directory
  • fsync and lock
  • mongodump
  • mongorestore
  • bsondump
  • mongoimport
  • mongoexport


  • Data storage in GridFS
  • Data retrieval from GridFS