Course Outline

  1. Introduction to MongoDB
    1. Introduction to NoSQL databases
    2. Reasons for the creation of non-relational databases
    3. Features of MongoDB
    4. Advantages and disadvantages of MongoDB
    5. Technologies and solutions associated with 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 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 $inc operator
    5. Position operator and ArrayFilter
  4. Storage Engines
    1. Overview of internal file 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 individual engines
  5. Document Validation
    1. Creating and modifying simple validators
    2. Levels of validation
    3. Validation actions
    4. Validation using JsonSchema
  6. Data Modeling
    1. Best practices for designing models in MongoDB
    2. Advantages and disadvantages of nested models
    3. Types and implementation of “relationships”
    4. Common mistakes
  7. MapReduce
    1. What is MapReduce?
    2. MapReduce query structure
    3. Mapping function
    4. Reducing function
    5. Finalizing function
    6. Additional options
  8. Aggregation Framework
    1. Aggregation Pipeline
    2. Aggregation query structure
    3. Aggregation operators
    4. Selected grouping accumulators
    5. Splitting arrays using $unwind
    6. Multi-operations using $facet
    7. Joining data from different collections using $lookup
    8. Limitations of the aggregation mechanism
  9. GridFS
    1. Storing binary data in MongoDB
    2. Metadata and chunks
    3. Using mongofiles
    4. Reasons for using GridFS
  10. Indexes in MongoDB
    1. Defining indexes
    2. Simple and compound indexes
    3. Using indexes on nested documents
    4. Multi-key (array) indexes
    5. Partial indexes
  11. Full Text Search
    1. What is Full Text Search?
    2. Creating Full Text Search indexes
    3. Handling stem analysis
    4. Field weight and sorting by match
    5. $** operator
    6. Limitations
  12. Change streams
    1. Publish-subscribe pattern
    2. Subscribing to changes in MongoDB
    3. Format of returned document
  13. Replication
    1. Role of replication in expanding MongoDB capabilities
    2. Components of a Replica Set
    3. Failover mechanism and primary node election control
    4. Role of the arbiter
    5. Structure and operation principle of oplog
    6. Administrative commands in the replica set
    7. Replica Set configuration
    8. Hidden and delayed node
    9. Node states
    10. Desynchronization problems
  14. Sharding
    1. Role of sharding in expanding MongoDB capabilities
    2. Config server
    3. Query router
    4. Choosing a shard key
    5. Data partitioning
    6. Administrative commands in the cluster
    7. Cluster configuration
  15. Administrative and diagnostic tools
    1. Backup creation strategies (mongodump, mongorestore)
    2. Diagnostics of Mongo operation (mongostat, mongotop, listing of active operations)
    3. Replication process monitoring
    4. (Optional) Client libraries
    5. JavaDriver
      1. Driver configuration
      2. Driver API, BSON handling
      3. MongoDB + Spring Data
    6. CSharpDriver
      1. Driver configuration
      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