WA2773

MongoDB for Administrators Training

MongoDB is an open source document-oriented NoSQL (Not Only SQL) database written in C++.  Effective use of MongoDB, understanding its data structures and optimal ways to program to its API aids in creating high-performance and robust solutions in small start-ups and big companies alike.
Course Details

Duration

2 days

Prerequisites

Familiarity with Java programming and using Eclipse environment.

Skills Gained

Become proficient with MongoDB Administration.
Course Outline
  • Introduction to MongoDB
    • MongoDB
    • MongoDB Features
    • MongoDB on the Web
    • Positioning of MongoDB
    • MongoDB Applications
    • MongoDB Data Model
    • MongoDB Limitations
    • MongoDB Use Cases
    • MongoDB Query Language (QL)
    • The CRUD Operations
    • The
    • find
    • Method
    • The
    • findOne
    • Method
    • A MongoDB Query Language (QL) Example
    • Inserts
    • MongoDB vs Apache CouchDB
  • MongoDB Data Model
    • The BSON Data Format
    • Database Terminology
    • MongoDB Data Model
    • The _id Primary Key Filed Considerations
    • Indexes
    • (Traditional) Data Modeling in RDBMS
    • Data Modeling in MongoDB
    • An Example of a Data Model in MongoDB
    • MongoDB Data Modeling
    • A Sample JSON Document Matching the Schema
    • To Normalize or Denormalize?
    • MongoDB Limitations
    • Data Lifecycle Management
    • Data Lifecycle Management: TTL
    • Data Lifecycle Management: Capped Collections
  • MongoDB Architecture
    • MongoDB Nexus Architecture
    • Blending the Best of Both Worlds
    • What Makes MongoDB Fast?
    • Pluggable Storage Engines
    • Data Sharding
    • Sharding in MongoDB
    • Data Replication
    • A Sample Sharded Cluster Diagram
    • GridFS
    • Getting a File from GridFS
    • MongoDB Security
    • Authentication
    • Data and Network Encryption
  • MongoDB Administration
    • The Admin Shell
    • Getting Help
    • Admin Commands
    • Starting MongoDB
    • The mongod Web UI
    • Running MongoDB JavaScript Scripts
    • Shell Helper to JavaScript Equivalent Map
    • A MongoDB Script Example
    • Connecting to MongoDB
    • User Authentication
    • Authentication Options
    • Import / Export Operations
    • MongoDB Extended JSON and Strict Mode
    • Examples of Strict Mode Encoding
    • Examples of Data Import / Export
    • The Robo3T (formerly RoboMongo) Tool
    • Robo3T Connections
    • Connection Manager
    • Viewing Databases, Collections and Documents
    • Edit Capabilities
    • Admin Shell
  • Working with Data in MongoDB
    • Reading Data in MongoDB
    • The Query Interface
    • Query Syntax is Driver-Specific
    • Projections
    • Query and Projection Operators
    • MongoDB Query to SQL Select Comparison
    • Cursors
    • Cursor Expiration
    • Writing Data in MongoDB
    • An Insert Operation Example
    • The Update Operation
    • Limiting Return Data
    • Data Sorting
    • Aggregating Data
    • Aggregation Stages
    • Accumulators
    • Map-Reduce
  • Indexes in MongoDB
    • Indexes in MongoDB
    • Creating an Index
    • Listing Existing Indexes
    • The Sort Order
    • Using the Explain() Method
    • Main Index Types
    • The _id Field
    • Single and Compound Indexes
    • Multikey Indexes
    • Other Index Types
    • Index Properties
  • Accessing MongoDB from Node.js
    • Getting Started
    • The Connection URL
    • Obtaining a Collection
    • Inserting Documents
    • Updating a Document
    • Querying for Documents
    • Deleting a Document
    • Connection Pooling
  • MongoDB Java Client
    • Accessing MongoDB from a Java Client
    • The MongoDB Java Driver
    • Using the Synchronous Driver in a Java Application
    • Connecting to MongoDB
    • Connecting to a Standalone Instance
    • Connection Options and the MongoClientURI
    • Using MongoClientURI
    • Connecting to a Replica Set
    • Connecting to a Sharded Cluster
    • Connection Configuration
    • Connecting and Accessing a Collection
    • Create a Collection
    • Insert a Document
    • Update
    • Update Operators
    • Read (Find)
    • Read (Find) Multiple Documents
    • Delete
    • BSON Library
    • Impedance Mismatch
    • Morphia Object Mapper
    • Setup
    • Connecting
    • Mapping
    • Simple Mapping
    • Saving Data
    • Queries
  • Securing MongoDB
    • Security Overview
    • Your Mileage May Vary
    • Security is Your Responsibility
    • First Things First
    • MongoDB Security
    • A MongoDB Security Checklist
    • Enable Access Control and Enforce Authentication
    • Configure Role-Based Access Control
    • Create an Admin User
    • Create a Database User
    • Enable Authentication
    • Encrypt Communication
    • Encrypt and Protect Data
    • Limit Network Exposure
    • Audit System Activity
    • Run MongoDB with a Dedicated User
    • Run MongoDB with Secure Configuration Options
    • Compliance
  • MongoDB Ops Manager APIs
    • Ops Manager Introduction
    • Features
    • Architecture
    • Architecture Diagram
    • The Public API
    • Configure Public API Access
    • Generating a Public API Key
    • Managing Public API Keys
    • API Whitelisting
    • Quick Review of RESTful Services
    • Supported HTTTP Methods
    • Response Codes
    • Optional Query Parameters
    • Resource Categories
    • Root
    • Making a Request
    • Root Example
  • Lab Exercises
    • Lab 1. Learning the MongoDB Lab Environment
    • Lab 2. The MongoDB Database Operations
    • Lab 3. The MongoDB Admin Shell
    • Lab 4. Import Export Operations in MongoDB
    • Lab 5. Working with Data in MongoDB
    • Lab 6. Using MongoDB
    • Lab 7. CRUD Operations with the MongoDB Java Driver
    • Lab 8. Aggregation with the MongoDB Java Driver
    • Lab 9. x509 Authentication in MongoDB
    • Lab 10. MongoDB Authentication
    • Lab 11. Project – A RESTful API for MongoDB in NodeJS