Course Outline
Introduction to MongoDB
Introduction to databases NoSQL
Reasons for the creation of non-relational databases
Features MongoDB
Advantages and disadvantages MongoDB
Technologies and solutions related to MongoDB
Using Mongo Shell and Robo 3T
Basic queries and data structure
Types of data stored
Insert
Save
Remove
Update
Find / FindOne
The role and properties of the query result cursor
Sort, skip, limit
Query selectors
Creating logical conditions
Advanced Queries
Data projection mechanism
$regex
Operations on arrays and sets
FindAndModify and the $inc operator
Position operator and ArrayFilter
Storage Engines
Overview of internal file storage engines available with MongoDb
Features, advantages and disadvantages of the MMAPv1 engine
Features, advantages and disadvantages of the WiredTiger engine
WiredTiger recording mechanism (snapshot, checkpoint)
Comparison of RAM consumption by individual engines
Document validation
Creating and modifying simple validators
Validation levels
Validation actions
Validation using JsonSchema
Data modeling
Good Model Design Practices in MongoDB
Advantages and disadvantages of nested models
Types and implementation of “relationships”
Common mistakes
MapReduce
What is MapReduce?
MapReduce query structure
Mapping function
Reducing function
Finalizing function
Additional options
Aggregation Framework
Aggregation Pipeline
Aggregate query structure
Aggregation operators
Selected grouping accumulators
Exploding arrays with $unwind
Multioperations using $facet
Merging data from different collections using $lookup
Limitations of the aggregation mechanism
GridFS
Storage of binary data in MongoDB
Metadata and chunks
Usage of mongofiles
Rationale for using GridFS
Indexes in MongoDB
Defining indexes
Simple and complex indexes
Use indexes on nested documents
Multikey (array) indexes
Partial indexes
Full Text Search
What is Full Text Search?
Creating Full Text Indexes Search
Support for word formation analysis
Field weighting and sorting after matching
Operator $**
Limitations
Change streams
The publish-subscribe pattern
Subscribe to changes in MongoDB
Format of the returned document
Replication
The Role of Replication in Expanding Capabilities MongoDB
Elementy components of the Replica Set
Failover mechanism and Primary node selection control
The role of the arbitrator
Construction and principle of operation of the oplog
Administrative commands in the replication set
Replica Set configuration
Hidden and lagging node
Node states
Desynchronization problems
Sharding
The role of sharding in expanding possibilities MongoDB
Config server
Query router
Choosing a shard key
Data partitioning
Administrative commands in the cluster
Cluster setup
Administration and diagnostic tools
Backup strategies (mongodump, mongorestore)
Mongo performance diagnostics (mongostat, mongotop, listing of active operations)
Monitoring the replication process
(optional) Client Libraries
JavaDriver
Controller configuration
Driver API, support BSON
MongoDB + Spring Data
CSharpDriver
Controller configuration
Driver API, support BSON
Asynchronous operations
Requirements
-
Experience working with MongoDB
Programming experience is helpful but not required.
Audience
Database administrators
Systems administrators
Operations and devops professionals
Testimonials (1)
Duża wiedza trenera, dobry kontakt z ludźmi :)