MongoDB - The Complete Developer's Guide 2023
0.00 (0)
Software Development / Database Development

MongoDB - The Complete Developer's Guide 2023

Master MongoDB Development for Web & Mobile Apps

6 Students enrolled
Intermediate
English
This course includes:
  • 30h 33m
  • 274 Lectures
  • 338 Downloadable assets
  • Full lifetime access
  • Access on Mobile and TV
  • Certificate on completion

Overview

What will students learn in your course?
  • Learn what document databases are and how data is organized with MongoDB
  • Learn how to perform CRUD operations with MongoDB
  • Don't stop at the basics - learn all about writing complex MongoDB queries, in-depth and with practical examples!
  • Write efficient and well-performing queries to fetch data in the format you need it
  • Use all features MongoDB offers you to work with data efficiently
What are the requirements or prerequisites for taking your course?
  • NO prior knowledge on databases (of any kind) is required
  • General web development or mobile development knowledge will help you but is not a must-have
  • You can use any operating system - Windows, macOS, Linux, it'll all work!
Who is the course for?
  • Developers or data scientists who plan on (or are already) working with MongoDB
  • Everyone who's interested in NoSQL databases
  • Both beginner and advanced MongoDB users who want to explore all the core features
Description
Course tags

Course content

  • 19 Sections
  • 274 Lectures
  • 30h 33m Total length
Module Introduction
0:09:13
Understanding Databases, Collections & Documents
0:06:54
The Shell & MongoDB Drivers for Different Languages
0:09:13
Creating Databases & Collections
0:06:12
Understanding JSON Data
0:09:13
Comparing JSON & BSON
0:06:12
Create, Read, Update, Delete (CRUD) & MongoDB
0:07:30
Finding, Inserting, Deleting & Updating Elements
0:06:12
Understanding "insertMany()"
0:06:12
Diving Deeper Into Finding Data
0:07:30
"update" vs "updateMany()"
0:07:30
Understanding "find()" & the Cursor Object
0:03:41
Understanding Projection
0:09:13
Embedded Documents & Arrays - The Theory
0:06:12
Working with Embedded Documents
0:06:54
Working with Arrays
0:06:12
Accessing Structured Data
0:07:30
Time to Practice - The Basics & CRUD Operations
0:09:13
Wrap Up
0:03:41
Useful Resources & Links
0:07:30
Resetting Your Database
0:06:12
Module Introduction
0:09:13
Why Do We Use Schemas?
0:07:30
Structuring Documents
0:09:13
Data Types - An Overview
0:03:41
Data Types in Action
0:07:30
Data Types & Limits
0:03:41
How to Derive your Data Structure - Requirements
0:09:13
Understanding Relations
0:06:12
One To One Relations - Embedded
0:07:30
One To One - Using References
0:07:30
One To Many - Embedded
0:07:30
One To Many - Using References
0:09:13
Many To Many - Embedded
0:07:30
Many To Many - Using References
0:09:13
Summarizing Relations
0:06:54
Using "lookUp()" for Merging Reference Relations
0:07:30
Planning the Example Exercise
0:06:54
Implementing the Example Exercise
0:07:30
Understanding Schema Validation
0:06:54
Adding Collection Document Validation
0:07:30
Changing the Validation Action
0:07:30
Wrap Up
0:03:41
Useful Resources & Links
0:07:30
Module Introduction
0:06:54
Finding Available Options
0:07:30
Setting "dbpath" & "logpath"
0:03:41
Exploring the MongoDB Options
0:06:12
MongoDB as a Background Service
0:07:30
Using a Config File
0:07:30
Shell Options & Help
0:06:54
Useful Resources & Links
0:09:13
Module Introduction
0:03:41
Exploring the MongoDB Compass
0:06:12
Useful Resources & Links
0:06:54
Module Introduction
0:07:30
Creating Documents - An Overview
0:06:12
Understanding "insert()" Methods
0:06:54
Working with Ordered Inserts
0:07:30
Understanding the "writeConcern"
0:07:30
The "writeConcern" in Practice
0:06:54
What is Atomicity?
0:06:54
Time to Practice - Create Operations
0:06:12
Importing Data
0:06:12
Wrap Up
0:06:12
Useful Resources & Links
0:03:41
Module Introduction
0:09:13
Methods, Filters & Operators
0:07:30
Operators - An Overview
0:03:41
Query Selectors & Projection Operators
0:03:41
Understanding "findOne()" & "find()"
0:09:13
Working with Comparison Operators
0:06:12
Querying Embedded Fields & Arrays
0:03:41
Understanding "$in" and "$nin"
0:03:41
"$or" and "$nor"
0:07:30
Understanding the "$and" Operator
0:07:30
Using "$not"
0:06:54
Diving Into Element Operators
0:09:13
Working with "$type"
0:03:41
Understanding Evaluation Operators - "$regex"
0:07:30
Understanding Evaluation Operators - "$expr"
0:09:13
Time to Practice - Read Operations
0:06:54
Diving Deeper Into Querying Arrays
0:06:54
Using Array Query Selectors - "$size"
0:06:12
Using Array Query Selectors - "$all"
0:07:30
Using Array Query Selectors - "$elemMatch"
0:07:30
Time to Practice - Array Query Selectors
0:07:30
Understanding Cursors
0:03:41
Applying Cursors
0:09:13
Sorting Cursor Results
0:09:13
Skipping & Limiting Cursor Results
0:07:30
Using Projection to Shape our Results
0:06:12
Using Projection in Arrays
0:06:54
Understanding "$slice"
0:09:13
Useful Resources & Links
0:03:41
Module Introduction
0:03:41
Updating Fields with "updateOne()", "updateMany()" and "$set"
0:03:41
Updating Multiple Fields with "$set"
0:07:30
Incrementing & Decrementing Values
0:06:12
Using "$min", "$max" and "$mul"
0:03:41
Getting Rid of Fields
0:06:12
Renaming Fields
0:07:30
Understanding "upsert()"
0:03:41
Time to Practice - Update Operations
0:07:30
Updating Matched Array Elements
0:06:54
Updating All Array Elements
0:06:12
Finding & Updating Specific Fields
0:07:30
Adding Elements to Arrays
0:07:30
Removing Elements from Arrays
0:07:30
Understanding "$addToSet"
0:06:54
Wrap Up
0:06:54
Useful Resources & Links
0:06:54
Module Introduction
0:07:30
Understanding "deleteOne()" & "deleteMany()"
0:06:12
Deleting All Entries in a Collection
0:07:30
Useful Resources & Links
0:07:30
Module Introduction
0:03:41
What Are Indexes & Why Do We Use Them?
0:06:54
Adding a Single Field Index
0:09:13
Indexes Behind the Scenes
0:09:13
Understanding Index Restrictions
0:07:30
Creating Compound Indexes
0:06:12
Using Indexes for Sorting
0:03:41
Understanding the Default Index
0:06:12
Configuring Indexes
0:07:30
Understanding Partial Filters
0:06:12
Applying the Partial Index
0:09:13
Understanding the Time-To-Live (TTL) Index
0:07:30
Query Diagnosis & Query Planning
0:07:30
Understanding Covered Queries
0:06:54
How MongoDB Rejects a Plan
0:06:12
Using Multi-Key Indexes
0:07:30
Understanding Text Indexes
0:06:54
Text Indexes & Sorting
0:06:54
Creating Combined Text Indexes
0:06:54
Using Text Indexes to Exclude Words
0:06:12
Setting the Default Language & Using Weights
0:07:30
Building Indexes
0:06:54
Wrap Up
0:06:12
Useful Resources & Links
0:06:54
Module Introduction
0:03:41
Adding GeoJSON Data
0:06:12
Running Geo Queries
0:09:13
Adding a Geospatial Index to Track the Distance
0:07:30
Adding Additional Locations
0:06:54
Finding Places Inside a Certain Area
0:06:12
Finding Out If a User Is Inside a Specific Area
0:03:41
Finding Places Within a Certain Radius
0:06:12
Time to Practice - Geospatial Data
0:06:12
Wrap Up
0:06:12
Useful Resources & Links
0:06:54
Module Introduction
0:06:54
What is the Aggregation Framework?
0:06:12
Getting Started with the Aggregation Pipeline
0:06:54
Using the Aggregation Framework
0:09:13
Understanding the Group Stage
0:06:54
Diving Deeper Into the Group Stage
0:09:13
Time to Practice - The Aggregation Framework
0:09:13
Working with $project
0:09:13
Turning the Location Into a geoJSON Object
0:09:13
Transforming the Birthdate
0:06:12
Using Shortcuts for Transformations
0:07:30
Understanding the $isoWeekYear Operator
0:09:13
$group vs $project
0:06:12
Pushing Elements Into Newly Created Arrays
0:03:41
Understanding the $unwind Stage
0:06:12
Eliminating Duplicate Values
0:06:54
Using Projection with Arrays
0:09:13
Getting the Length of an Array
0:06:54
Using the $filter Operator
0:09:13
Applying Multiple Operations to our Array
0:06:12
Understanding $bucket
0:06:54
Diving Into Additional Stages
0:09:13
How MongoDB Optimizes Your Aggregation Pipelines
0:09:13
Writing Pipeline Results Into a New Collection
0:03:41
Working with the $geoNear Stage
0:03:41
Wrap Up
0:06:12
Useful Resources & Links
0:03:41
Module Introduction
0:06:54
Number Types - An Overview
0:09:13
MongoDB Shell & Data Types
0:06:12
Understanding Programming Language Defaults
0:06:54
Working with int32
0:06:12
Working with int64
0:03:41
Doing Maths with Floats int32s & int64s
0:09:13
What's Wrong with Normal Doubles?
0:06:12
Working with Decimal 128bit
0:06:54
Wrap Up
0:06:12
Useful Resources & Links
0:03:41
Module Introduction
0:06:54
Understanding Role Based Access Control
0:06:54
Roles - Examples
0:06:12
Creating a User
0:03:41
Built-In Roles - An Overview
0:06:12
Assigning Roles to Users & Databases
0:03:41
Updating & Extending Roles to Other Databases
0:07:30
Time to Practice - Security
0:03:41
Adding SSL Transport Encryption
0:06:54
Encryption at REST
0:07:30
Wrap Up
0:06:54
Useful Resources & Links
0:07:30
Module Introduction
0:06:12
What Influences Performance?
0:03:41
Understanding Capped Collections
0:06:54
What are Replica Sets?
0:09:13
Understanding Sharding
0:06:12
Deploying a MongoDB Server
0:06:12
Using MongoDB Atlas
0:09:13
Backups & Setting Alerts in MongoDB Atlas
0:06:12
Connecting to our Cluster
0:06:12
Wrap Up
0:06:12
Useful Resources & Links
0:06:54
Module Introduction
0:09:13
What are Transactions?
0:07:30
A Typical Usecase
0:03:41
How Does a Transaction Work?
0:07:30
Useful Resources & Links
0:03:41
Module Introduction
0:06:12
Splitting Work Between the Driver & the Shell
0:03:41
Preparing our Project
0:03:41
Installing Visual Studio Code
0:07:30
Installing the Node.js Driver
0:09:13
Connecting Node.js & the MongoDB Cluster
0:09:13
Storing Products in the Database
0:09:13
Storing the Price as 128bit Decimal
0:06:12
Fetching Data From the Database
0:06:12
Creating a More Realistic Setup
0:03:41
Getting a Single Product
0:03:41
Editing & Deleting Products
0:03:41
Implementing Pagination
0:06:54
Adding an Index
0:06:12
Signing Users Up
0:06:54
Adding an Index to Make the Email Unique
0:07:30
Adding User Sign In
0:06:54
Wrap Up
0:06:54
Useful Resources & Links
0:06:54
Module Introduction
0:06:54
Stitch & MongoDB Realm
0:06:54
What is Stitch?
0:06:12
Preparations
0:06:54
Start Using Stitch
0:06:12
Adding Stitch to our App & Initializing It
0:06:12
Adding Authentication
0:07:30
Sending Data Access Rules
0:06:54
Fetching & Converting Data
0:06:12
Deleting Products
0:07:30
Finding a Single Product
0:06:54
Adding Products
0:06:54
Updating Products
0:03:41
Switching to User Email & Password Authentication
0:03:41
Adding User Sign Up & Confirmation
0:06:12
Adding User Login
0:06:12
Rules & Real Users
0:07:30
The Current State of Authentication
0:07:30
Functions & Triggers
0:09:13
Wrap Up
0:03:41
Useful Resources & Links
0:06:54
Course Roundup
0:07:30
Course Slides
0:09:13
Bonus: More Content!
0:06:54

About tutor

Dwight Vandervort
3.80 (5)

Dwight Vandervort

Courses 3

Hello, everyone!! I'm originally from Dominican Republic, and while I'm a self-proclaimed nerd of Biology, Accounts and English with a solid academic foundation, I prefer to make my training sessions as practical, hands-on, and engaging as possible. I enjoy using real materials to help my students improve their active vocabulary, as well as competency-based scenarios to practice functional subjects commonly used in the workplace. I love teaching Biology, Accounts and English and would love to share my teachings with you.

View profile