Video description
In the evolving world of tech, MongoDB paired with Node.js stands out as a powerful combination for robust data storage and management. These two giants, when integrated, provide developers with an unmatched toolkit, revolutionizing database operations to be scalable, flexible, and efficient.
This course carefully guides you through the nuances of integrating MongoDB with Node.js, starting with the essentials of moving from shell operations to leveraging drivers. Discover the world of storing intricate product details in the database, mastering the art of handling 128bit decimals for precision, and fetching the exact piece of information you need. But it doesn't stop there. Delve into more advanced topics like user authentication with Stitch, crafting specific data access rules, and even adding products with ease. This course offers a step-by-step walkthrough, ensuring that by the end, you're well-equipped to handle real-world scenarios with confidence.
Embarking on this learning journey will not only equip you with technical knowledge but will also shape your perspective on efficient database management. With each section, you'll find yourself becoming more adept, with lessons building upon one another, culminating in a comprehensive roundup. Embark on this transformative journey with us and redefine your technical prowess.
What You Will Learn
- Grasp MongoDB's data organization and document database concepts
- Master CRUD operations in MongoDB
- Craft efficient, tailored data retrieval queries
- Learn MongoDB integration with Node.js, pagination, and user authentication
- Understand the structure of the aggregation framework
- Learn to work with numeric and geospatial data
Audience
This course is meticulously crafted for developers and data scientists poised to work with MongoDB or those already familiar with it. If you have an interest in diving into the realm of NoSQL databases, this course is tailor-made for you. Catering to both novices and seasoned MongoDB users, it's designed to provide a comprehensive exploration of MongoDB's core features. As for prerequisites, there's no need for prior knowledge in any form of databases. However, a general understanding of web or mobile development can be advantageous, though it's not compulsory.
About The Author
Maximilian Schwarzmüller: Maximilian Schwarzmüller: A professional web developer and instructor, he has never stopped learning new programming skills and languages since the age of 13. In his early days, he started creating websites simply for fun. This passion has remained and shaped his decision to work as a freelance web developer and consultant. Although he started web development on the backend (PHP with Laravel and NodeJS), he has progressed to becoming a front-end developer using modern frameworks such as React, Angular, and VueJS 2 in many projects.
The most rewarding experience for him is to see how people find new and better jobs, build exciting web applications, acquire amazing projects, or simply enjoy their hobby with the help of his content.
Publisher resources
Table of contents
-
Chapter 1 : Introduction
- 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
-
Chapter 2 : 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
- Assignment 1: Time to Practice - The Basics CRUD Operations
- [Solution] Assignment 1: Time to Practice - The Basics CRUD Operations
- Wrap Up
-
Chapter 3 : 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
- Chapter 4 : Exploring the Shell and the Server
- Chapter 5 : Using the MongoDB Compass to Explore Data Visually
-
Chapter 6 : Diving into Create Operations
- Module Introduction
- Creating Documents - An Overview
- Understanding "insert()" Methods
- Working with Ordered Inserts
- Understanding "writeConcern"
- "writeConcern" in Practice
- What is Atomicity?
- Assignment 2: Time to Practice - Create Operations
- [Solution] Assignment 2: Time to Practice - Create Operations
- Importing Data
- Wrap Up
-
Chapter 7 : Read Operations - A Closer 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"
- Assignment 3: Time to Practice - Read Operations
- [Solution] Assignment 3: Time to Practice - Read Operations
- Diving Deeper into Querying Arrays
- Using Array Query Selectors - "$size"
- Using Array Query Selectors - "$all"
- Using Array Query Selectors - "$elemMatch"
- Assignment 4: Time to Practice - Array Query Selectors
- [Solution] Assignment 4: Time to Practice - Array Query Selectors
- Understanding Cursors
- Applying Cursors
- Sorting Cursor Results
- Skipping and Limiting Cursor Results
- Using Projection to Share Our Results
- Using Projection in Arrays
- Understanding "$slice"
-
Chapter 8 : 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()"
- Assignment 5: Time to Practice - Update Operations
- [Solution] Assignment 5: Time to Practice - Update Operations
- 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
- Chapter 9 : Understanding Delete Operations
-
Chapter 10 : 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
-
Chapter 11 : Working with Geospatial Data
- Module Introduction
- Adding GeoJSON Data
- Running Geo Queries
- Adding a Geospatial Index to Track the Distance
- Adding Additional Locations
- Finding Places Inside a Certain Area
- Finding Out if a User is Inside a Specific Area
- Finding Places Within a Certain Radius
- Assignment 6: Time to Practice - Geospatial Data
- [Solution] Assignment 6: Time to Practice - Geospatial Data
- Wrap Up
-
Chapter 12 : 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
- Assignment 7: Time to Practice - The Aggregation Framework
- [Solution] Assignment 7: Time to Practice - The Aggregation Framework
- 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
- Chapter 13 : Working with Numeric Data
-
Chapter 14 : MongoDB and Security
- Module Introduction
- Understanding Role-Based Access Control
- Roles - Examples
- Creating a User
- Built-In Roles - An Overview
- Assigning Roles to Users and Databases
- Updating and Extending Roles to Other Databases
- Assignment 8: Time to Practice – Security
- [Solution] Assignment 8: Time to Practice - Security
- Adding SSL Transport Encryption
- Encryption at REST
- Wrap Up
- Chapter 15 : Performance, Fault Tolerancy, and Deployment
- Chapter 16 : Transactions
-
Chapter 17 : 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
-
Chapter 18 : 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
- Chapter 19 : Roundup
Product information
- Title: MongoDB - The Complete Developer's Guide
- Author(s):
- Release date: October 2018
- Publisher(s): Packt Publishing
- ISBN: 9781789954012
You might also like
book
MongoDB: The Definitive Guide, 3rd Edition
Manage your data with a system designed to support modern application development. Updated for MongoDB 4.2, …
video
Getting Started with MongoDB and NoSQL LiveLessons
4+ Hours of Video Instruction Overview The need for unstructured data management has grown beyond what …
video
Node.js API Masterclass with Express and MongoDB
This course will help you to create an extensive, in-depth backend API for DevCamper, a Bootcamp …
video
Node.js - The Complete Guide
Node.js is one of the most popular and modern server-side programming languages and is used widely …