MongoDB - The Complete Developer's Guide [Video]
- FREE Subscription Read for free
- $144.99 Video Buy
- $12.99 Video + Subscription Buy
-
What do you get with a Packt Subscription?
- Instant access to this title and 7,500+ eBooks & Videos
- Constantly updated with 100+ new titles each month
- Breadth and depth in over 1,000+ technologies
-
Free ChapterIntroduction
- Introduction
- What is MongoDB?
- The Key MongoDB Characteristics (and How They Differ from SQL Databases)
- Understanding the MongoDB Ecosystem
- General Setup Instructions and Installing MongoDB on macOS
- Installing MongoDB on Windows
- Installing the MongoDB Shell
- Time to Get Started!
- Shell Versus Drivers
- MongoDB + Clients: The Big Picture
- Course Outline
- How to Get the Most Out of the Course
-
Understanding the Basics and CRUD Operations
- Module Introduction
- Understanding Databases, Collections, and Documents
- The Shell and MongoDB Drivers for Different Languages
- Creating Databases and Collections
- Understanding JSON Data
- Comparing JSON and BSON
- Create, Read, Update, Delete (CRUD) and MongoDB
- Finding, Inserting, Deleting, and Updating Elements
- Understanding "insertMany()"
- Diving Deeper into Finding Data
- "update" Versus "updateMany()"
- Understanding "find()" and the Cursor Object
- Understanding Projection
- Embedded Documents and Arrays - The Theory
- Working with Embedded Documents
- Working with Arrays
- Accessing Structured Data
- Wrap Up
-
Schemas and Relations: How to Structure Documents
- Module Introduction
- Why Do We Use Schemas?
- Structuring Documents
- Data Types - An Overview
- Data Types in Action
- How to Derive Your Data Structure - Requirements
- Understanding Relations
- One to One Relations - Embedded
- One to One - Using References
- One to Many - Embedded
- One to Many - Using References
- Many to Many - Embedded
- Many to Many - Using References
- Summarizing Relations
- Using "lookUp()" for Merging Reference Relations
- Planning the Example Exercise
- Implementing the Example Exercise
- Understanding Schema Validation
- Adding Collection Document Validation
- Changing the Validation Action
- Wrap Up
-
Exploring the Shell and the Server
-
Using the MongoDB Compass to Explore Data Visually
-
Diving into Create Operations
-
Read Operations - A r Look
- Module Introduction
- Methods, Filters, and Operators
- Operators - An Overview
- Query Selectors and Projection Operators
- Understanding "findOne()" and "find()"
- Working with Comparison Operators
- Querying Embedded Fields and Arrays
- Understanding "$in" and "$nin"
- "$or" and "$nor"
- Understanding the "$and" Operator
- Using "$not"
- Diving into Element Operators
- Working with "$type"
- Understanding Evaluation Operators - "$regex"
- Understanding Evaluation Operators - "$expr"
- Diving Deeper into Querying Arrays
- Using Array Query Selectors - "$size"
- Using Array Query Selectors - "$all"
- Using Array Query Selectors - "$elemMatch"
- Understanding Cursors
- Applying Cursors
- Sorting Cursor Results
- Skipping and Limiting Cursor Results
- Using Projection to Share Our Results
- Using Projection in Arrays
- Understanding "$slice"
-
Update Operations
- Module Introduction
- Updating Fields with "updateOne()", "updateMany()", and "$set"
- Updating Multiple Fields with "$set"
- Incrementing and Decrementing Values
- Using "$min", "$max", and "$mul"
- Getting Rid of Fields
- Renaming Fields
- Understanding "upsert()"
- Updating Matched Array Elements
- Updating All Array Elements
- Finding and Updating Specific Fields
- Adding Elements to Arrays
- Removing Elements from Arrays
- Understanding "$addToSet"
- Wrap Up
-
Understanding Delete Operations
-
Working with Indexes
- Module Introduction
- What are Indexes and Why Do We Use Them?
- Adding a Single Field Index
- Understanding Index Restrictions
- Creating Compound Indexes
- Using Indexes for Sorting
- Understanding the Default Index
- Configuring Indexes
- Understanding Partial Filters
- Applying the Partial Index
- Understanding the Time-To-Live (TTL) Index
- Query Diagnosis and Query Planning
- Understanding Covered Queries
- How MongoDB Rejects a Plan
- Using Multi-Key Indexes
- Understanding Text Indexes
- Text Indexes and Sorting
- Creating Combined Text Indexes
- Using Text Indexes to Exclude Words
- Setting the Default Language and Using Weights
- Building Indexes
- Wrap Up
-
Working with Geospatial Data
-
Understanding the Aggregation Framework
- Module Introduction
- What is the Aggregation Framework?
- Getting Started with the Aggregation Pipeline
- Using the Aggregation Framework
- Understanding the Group Stage
- Diving Deeper into the Group Stage
- Working with $project
- Turning the Location into a GeoJSON Object
- Transforming the Birthdate
- Using Shortcuts for Transformations
- Understanding the $isoWeekYear Operator
- $group Versus $project
- Pushing Elements into Newly Created Arrays
- Understanding the $unwind Stage
- Eliminating Duplicate Values
- Using Projection with Arrays
- Getting the Length of an Array
- Using the $filter Operator
- Applying Multiple Operations to Our Array
- Understanding $bucket
- Diving into Additional Stages
- Writing Pipeline Results into a New Collection
- Working with the $geoNear Stage
- Wrap Up
-
Working with Numeric Data
-
MongoDB and Security
-
Performance, Fault Tolerancy, and Deployment
-
Transactions
-
From Shell to Driver
- Module Introduction
- Splitting Work Between the Driver and the Shell
- Preparing Our Project
- Installing Visual Studio Code
- Installing the Node.js Driver
- Connecting Node.js and the MongoDB Cluster
- Storing Products in the Database
- Storing the Price as 128bit Decimal
- Fetching Data from the Database
- Creating a More Realistic Setup
- Getting a Single Product
- Editing and Deleting Products
- Implementing Pagination
- Adding an Index
- Signing Users Up
- Adding an Index to Make the Email Unique
- Adding User Sign In
- Wrap Up
-
Introducing Stitch
- Module Introduction
- What is Stitch?
- Preparations
- Start Using Stitch
- Adding Stitch to Our App and Initializing It
- Adding Authentication
- Sending Data Access Rules
- Fetching and Converting Data
- Deleting Products
- Finding a Single Product
- Adding Products
- Updating Products
- Switching to User Email and Password Authentication
- Adding User Sign Up and Confirmation
- Adding User Login
- Rules and Real Users
- Functions and Triggers
- Wrap Up
-
Roundup
MongoDB is one of the most important databases you can work with these days. It's extremely popular and MongoDB developers are in high demand. MongoDB makes working with data simple (it's built on a philosophy that prioritizes performance and efficiency).
In this course, you'll learn all about MongoDB from scratch. No prior MongoDB or database experience is required!
You'll learn the following in detail:
-How to install and use MongoDB locally and in the cloud
-How to perform CRUD (Create, Read, Update, Delete) operations on MongoDB databases
-How to filter for data efficiently
-How to work with both the Mongo Shell and drivers (for example, Node.js driver)
-How to increase performance using indexes (and how to use the right indexes!)
-How to use the amazing "Aggregation Framework" that's built into MongoDB
-What replica sets and sharding are
-How to use MongoDB Atlas - the cloud solution offered by MongoDB
-How to use the serverless platform (Stitch) offered by MongoDB
A hands-on course where you'll learn by writing codes. A wide variety of example data and use-cases have been provided and by the end of the course, you'll have all the knowledge you need to work with MongoDB in your next project!
The code bundle for this video course is available at https://github.com/PacktPublishing/MongoDB---The-Complete-Developer-s-Guide
- Publication date:
- October 2018
- Publisher
- Packt
- Duration
- 16 hours 26 minutes
- ISBN
- 9781789954012