Switch to the store?

Learning MongoDB Schema, Indexes and Queries [Video]

More Information
  • A collection schema matters in a schema-less system; or, when to stop de-normalizing data relationships
  • How a data schema impacts scale
  • Introduction to database indexing: concepts and terminology
  • How indexes increase operational overhead but improve query performance
  • MongoDB Indexes vs. index properties
  • Advanced index concepts and indexing best-practices
  • CRUD commands from the MongoDB client; how to combine simple JavaScript with BSON queries to populate sample tables, and how to use queries effectively to maintain your database
  • Administrative queries; how to delete collections or even entire databases.
  • How to apply indexes, or query to see what indexes already exist. 
  • Perform a quick backup and recovery of your collections

MongoDB makes it possible to store and process large sets of data in ways that increase business value. The flexibility of unstructured, schema-less, storage, combined with robust querying and post-processing functionality, make MongoDB a compelling solution for enterprise big data needs.

We need to discuss database schemas. Yes, MongoDB is touted as schema-less but here's where we show that proper design is what allows our collections to scale. Indexing is something everyone talks about, but few understand. We'll explain MongoDB indexing, and index properties because a successful indexing strategy is a key to performance and scaling. Finally, we'll talk about CRUD commands from the MongoDB client and how to write effective queries.

Taking this course will help you understand supported standards and data types in MongoDB, and best practices to design collections to scale and index them. Also, you will learn some basic CRUD commands.

Style and Approach

Through real-world and best-practice data schemas, we show you how design impacts performance and show you how to scale your system. We demonstrate the effective use of MongoDB queries for inserting, updating, deleting, and fetching data.

  • A practical demonstration of the different storage types available to MongoDB and when to use them.
  • Determine good design schemas for your collections; when to stop denormalization when designing collections.
  • Indexing, next to architecture, is key in scaling your MongoDB database. Learn how, when and why to use indexing and also learn all about CRUD queries (Create, Read, Update, Delete) using the MongoDB client to put data in and get data out.
Course Length 6 hours 27 minutes
Date Of Publication 30 Aug 2018
Schema – Traditional Definition and How It’s Applied To MongoDB
Denormalization Defined as a Corollary to Data Normalization
MongoDB Data Types
Index Properties – How Index Properties Can Enhance or Fine-Tune Existing Indexes
Index Properties – How Index Properties Can Enhance or Fine-Tune Existing Indexes (Continued)
Index Management
Index Management (Continued)
Index Management – Demo
Create – How to Create New Databases and New Collections
Create – How to Create New Databases and New Collections (Continued)
Demo for Create Command
Read – How to Fetch Data from a Collection
Read – How to Fetch Data from a Collection (Continued)
Demo for Read Command
Update – How to Update Existing Records Within a Single Query
Update – How to Update Existing Records Within a Single Query (Continued)
Demo for Update Command
Demo for Update Command (Continued)
Delete – How to Permanently Remove Data from Your Collection
Demo for Delete Command
Aggregation –How to Write Aggregation Queries
Demo for Aggregation
Demo for Aggregation (Continued)
Moving Your Database to Another Location
Demo One – Moving a Database to Another Machine
Demo Two – Moving a Database to Another Machine
Moving a Collection to Another Database
Demo One – Moving a Collection to Another Database
Quick and Easy Backup and Recovery
Demo – Backup and Recovery
Dropping Collections and Databases
Demo – Dropping Collections and Databases


Micheal Shallop

Micheal Shallop started programming in 1981 on a Tandy TRS-80 Model 1 and hasn’t stopped since. He graduated in 1991 from Oklahoma State University with an Honors degree in Computer Science. In his career, he’s coded in many programming languages and has used a variety of databases, relational and otherwise. He was the technical author of a patent awarded in 2011 for his work on real-time data collection, aggregation, and forecasting in a conventional (automotive) business.
He is currently working for givingassistant.org, designing and writing a back-end, event-driven, object-oriented, data-agnostic framework utilizing AMQP as the data transport vector and PHP 7.1 as the primary language. He has been programming in PHP for MongoDB since 2010 and has been the architect of several systems, mostly back-end frameworks.
Micheal is interested in anything with a programming language behind it. Most recently, he has been experimenting with Arduino programming on the Raspberry Pi, and writing a social media site in Python. He is also technically skilled in RabbitMQ, general database tech, Python, C/C++, Linux