MongoDB for Developers
This course covers everything a database developer needs to know to successfully develop applications using MongoDB.
Removing databases, fields and others
Two Phase Commits
Auto-incrementing Sequence field
MongoDB for Administrators
This course covers everything a database administrator needs to know to successfully deploy and maintain MongoDB databases.
Diagnosing performance issues, importing and exporting data, and establishing the proper backup and restore routines, overview of the MongoDB CRUD API, the command shell, and the drivers. are also covered.
The audience of this course include people who want to:
Understand MongoDB from a developer's perspective, including its command shell, query API, and driver tools.
Deploy MongoDB in all its configurations - as a single server, with master/slave replication, as a replica set, and as a sharded cluster.
Evaluate applications and choose hardware appropriately.
Monitor MongoDB instances and integrate with standard monitoring software (Munin, Nagios, etc.)
Plan for backups and manage large data imports and exports.
Troubleshoot the most common developer issues and failure scenarios.
Each delegate will need to perform a series of practical exercises.
MongoDB Architectural Overview
Origin, design goals, key features
Process structure (mongos, mongod, config servers)
Directory / file structure
Working with the MongoDB Shell
Documents and data types
CRUD (Inserts, queries, updates, deletes)
Single-server Configuration and Deployment
Data files and allocation
Hardware and file-system recommendations
Recommendations for secure deployment
Analyzing memory and IO performance
Integration with monitoring tools: Munin / Cacti / Nagios
MongoDB's web console
Indexing and Query Optimization
Managing indexes and MongoDB indexing internals
Single / Compound / Geo indexes
Identifying sub-optimal queries. Using the query profiler.
Introduction to drivers (Java/Python/Ruby/PHP/Perl)
How the drivers and shell communicate with MongoDB
BSON and the MongoDB Wire Protocol
Troubleshooting application connections
Intro to Read and Write scalability
Replication and Durability
Using write concern for durability
Handling replication failures
How sharding works
Setting up a MongoDB shard cluster
Choosing a shard key
Sharding and indexes
Sharding and Replica Set Topologies
Administering a sharded cluster
Shard / Chunk Migration
Backup and Restore Plans
mongodump / mongorestore
mongoimport / mongoexport
Building Web Apps using the MEAN stack
By the end of this hands-on intensive training course, the students will be able to:
Store the data in NoSQL, document-oriented MongoDB database that brings performance and scalability.
Use Node.js, the server-side platform built on Google V8’s runtime for building fast, scalable network applications.
Use Express, a simple yet powerful web application development HTTP server framework built on top of Node.js.
Use AngularJS framework that offers declarative, two-way data binding for web applications.
Get acquainted with the latest web application development trends in the IT industry.
Getting started with Node.js
Node Package Manager
Modules, Controllers and Scope
Built-in and Custom Directives
Built-in and Custom Filters
Understanding the Digest Loop
Forms and Validation
AngularJS Service Types
Factories, Providers, Decorators, DI
Creating Custom Services
Consuming Ajax Web Services via $http and $resource
Routing, Redirects, and Promises
Introduction to Express
Handling Form Data
Handling Query Parameters
Cookies and Sessions
Creating and Consuming RESTful Services
Understanding NoSQL MongoDB
Update, Insert, and Upsert
Create small applications that run all in the browser without any backend code.
Day 2: Backend with node.js and MongoDB
Day 3: Example
On day 3, we would put everything together and implement a real application in a workshop fashion, also looking into more topics around a full example:
github + git,
docker for building and shipping of code,
amazon ec2 for hosting.