Course duration
- 2 days
Course Benefits
- Obtain an overview of the NoSQL landscape.
- Learn about MongoDB value proposition.
- MongoDB architecture.
- Learn to install and configure MongoDB.
- Learn essential system administration.
- Learn to develop solutions in Java.
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
- Summary
- 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
- Summary
- 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
- Summary
- 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
- Summary
- 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
- An Update Operation Example
- A Remove Operation Example
- Limiting Return Data
- Data Sorting
- Aggregating Data
- Aggregation Stages
- Accumulators
- An Example of an Aggregation Pipe-line
- Map-Reduce
- Summary
- 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
- Examples of Creating Indexes with Index Properties
- Summary
- 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
- Summary
- 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
- Summary
- 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
- Summary
- 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
- Pretty Print Example
- User (by name) Example
- Summary
Class Materials
Each student will receive a comprehensive set of materials, including course notes and all the class examples.
Class Prerequisites
Experience in the following is required for this MongoDB class:
- Familiarity with Java programming and using Eclipse environment.
Since its founding in 1995, InterSource has been providing high quality and highly customized training solutions to clients worldwide. With over 500 course titles constantly updated and numerous course customization and creation possibilities, we have the capability to meet your I.T. training needs.
Instructor-led courses are offered via a live Web connection, at client sites throughout Europe, and at our Geneva Training Center.
Instructor-led courses are offered via a live Web connection, at client sites throughout Europe, and at our Geneva Training Center.