Course Outline

  1. Introduction to MongoDB
    1. Introduction to NoSQL databases
    2. Reasons for the emergence of non-relational databases
    3. Features of MongoDB
    4. Advantages and disadvantages of MongoDB
    5. Technologies and solutions related to MongoDB
    6. Using Mongo Shell and Robo 3T
  2. Basic Queries and Data Structure
    1. Types of stored data
    2. Insert
    3. Save
    4. Remove
    5. Update
    6. Find / FindOne
    7. Role and properties of the query result cursor
    8. Sorting, skip, limit
    9. Query selectors
    10. Creating logical conditions
  3. Advanced Queries
    1. Data projection mechanism
    2. $regex
    3. Operations on arrays and sets
    4. FindAndModify and the $inc operator
    5. Positional operator and ArrayFilter
  4. Storage Engines
    1. Overview of internal storage engines available with MongoDB
    2. Features, advantages, and disadvantages of the MMAPv1 engine
    3. Features, advantages, and disadvantages of the WiredTiger engine
    4. WiredTiger write mechanism (snapshot, checkpoint)
    5. Comparison of RAM usage by different engines
  5. Document Validation
    1. Creating and modifying simple validators
    2. Validation levels
    3. Validation actions
    4. Validation using JsonSchema
  6. Data Modeling
    1. Best practices for designing models in MongoDB
    2. Advantages and disadvantages of embedded models
    3. Types and implementation methods of "relationships"
    4. Common mistakes
  7. MapReduce
    1. What is MapReduce?
    2. Structure of a MapReduce query
    3. Mapping function
    4. Reducing function
    5. Finalizing function
    6. Additional options
  8. Aggregation Framework
    1. Aggregation Pipeline
    2. Structure of an aggregating query
    3. Aggregation operators
    4. Selected grouping accumulators
    5. Unwinding arrays with $unwind
    6. Multi-operations using $facet
    7. Joining data from different collections with $lookup
    8. Aggregation mechanism limitations
  9. GridFS
    1. Storing binary data in MongoDB
    2. Metadata and chunks
    3. Using mongofiles
    4. Reasons to use GridFS
  10. Indexes in MongoDB
    1. Defining indexes
    2. Simple and compound indexes
    3. Using indexes on embedded documents
    4. Multikey (array) indexes
    5. Partial indexes
  11. Full Text Search
    1. What is Full Text Search?
    2. Creating Full Text Search indexes
    3. Handling tokenization analysis
    4. Weight fields and sorting by match
    5. $** operator
    6. Limitations
  12. Change Streams
    1. Publish-subscribe pattern
    2. Subscribing to changes in MongoDB
    3. Format of the returned document
  13. Replication
    1. Role of replication in extending MongoDB capabilities
    2. Components of a Replica Set
    3. Failover mechanism and primary node election control
    4. Role of the arbiter
    5. Construction and operation principle of oplog
    6. Administrative commands in a replication set
    7. Configuring a Replica Set
    8. Hidden and delayed nodes
    9. Node states
    10. Desynchronization issues
  14. Sharding
    1. Role of sharding in extending MongoDB capabilities
    2. Config server
    3. Query router
    4. Choosing a sharding key
    5. Data partitioning
    6. Administrative commands in a cluster
    7. Configuring a cluster
  15. Administrative and Diagnostic Tools
    1. Backup creation strategies (mongodump, mongorestore)
    2. Diagnosing MongoDB operation (mongostat, mongotop, listing active operations)
    3. Monitoring the replication process
    4. (optional) Client libraries
    5. JavaDriver
      1. Configuring the driver
      2. Driver API, BSON handling
      3. MongoDB + Spring Data
    6. CSharpDriver
      1. Configuring the driver
      2. Driver API, BSON handling
      3. Asynchronous operations

Requirements

  • Experience working with MongoDB
  • Programming experience is helpful but not required.

Audience

  • Database administrators
  • Systems administrators
  • Operations and DevOps professionals
 28 Hours

Number of participants


Price Per Participant (Exc. Tax)

Testimonials (1)

Provisional Courses

Related Categories