Software Development

MongoDB Tutorial – A Scalable NoSQL DB

Course Overview

MongoDB is a cross-platform document-oriented database system and it is free and open source software. Classified as a NoSQL database, MongoDB eschews the traditional table-based relational database structure in favour of JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster.

In this course, you will get introduced to MongoDB. You will learn how to install it and how to operate it via its shell. Moreover, you will learn how to programmatically access it via Java and how to leverage Map Reduce with it. Finally, more advanced concepts like sharding and replication will be explained.

About the Author

Andriy has completed his Master Degree in Computer Science at Zhitomir Institute of Engineering and Technologies, Ukraine. For the last 15 years he has been working as the Consultant/Software Developer/Senior Software Developer/Team Lead for many successful projects.

Andriy has great experience in enterprise architecture, web development, software development practices and software platforms, object-oriented analysis and design, development of rich user interfaces, relational database management systems, NoSQL solutions and operating systems.

Lessons

MongoDB Installation – How to install MongoDB

In this lesson, you will get introduced to MongoDB. We will see an overview of its architecture and then we will install the server in various platforms, including Windows, Linux and MacOs.

MongoDB Shell Guide – Operations and Commands

In this lesson we will go through most of the commands and queries supported by MongoDB using its shell. Each section is dedicated to particular aspect of MongoDB: we start off from Shell Command Helpers, then look at Databases, Collections and Documents, move to Queries and Aggregations, and finish up with Server specific commands. MongoDB shell is the best tool out there to discover MongoDB features and manage every single aspect of your server deployments, instances, databases, collections and documents. It is based on JavaScript language for executing command and queries.

MongoDB and Java Tutorial

In this part we are going to cover the integration of MongoDB with applications written in Java. Our choice of Java is caused by its popularity but MongoDB provides bindings (or drivers) to many other languages. For the purposes of this lesson, we are going to develop a simple book store application with a goal in mind to cover most of the use cases you may encounter, emphasizing MongoDB ways to solve them.

MongoDB Sharding Guide

In this lesson we are going to cover the MongoDB Sharding functionality. Sharding is a technique used to split large amount of data across multiple server instances. It helps in solving such issues by dividing the whole data set into smaller parts and distributing them across large number of servers (or shards). MongoDB supports sharding out of the box using sharded clusters configurations. We will explore how to configure sharding with MongoDB and how to operate it.

MongoDB Replication Guide

Replication is a foundational technique to keep data safe (by providing redundancy) and highly available all the time. MongoDB supports the replication in a form of replica sets: a group of MongoDB instances that maintain the same (synchronized) data across multiple instances (servers). In this lesson, we will perform the necessary configuration for MongoDB Replication and also how it relates to Sharding. Finally, we will examine the various Replication commands and command helpers.

MongoDB MapReduce Tutorial

Map/Reduce is a framework which allows to parallelize the processing of large and very large datasets across many physical or virtual servers. This paradigm, firstly popularized by Google, has gotten a lot of traction these days, mostly because of the Big Data movement. Many NoSQL solutions aim to support integration with Map/Reduce frameworks but MongoDB goes further than that and provides its own Map/Reduce implementation integrated into the MongoDB server, available for everyone to consume.

MongoDB Security, Profiling, Indexing, Cursors and Bulk Operations Guide

In this final lesson of the course, we are going to take a look on MongoDB security model, different types of indexes, query plans and profiling, server-side cursors and bulk operations. We will discuss indexing, profiling, the use of Query cache and how to implement bulk operations.

Make sure to retweet this, let your social followers know!

Andrey Redko

Andriy is a well-grounded software developer with more then 12 years of practical experience using Java/EE, C#/.NET, C++, Groovy, Ruby, functional programming (Scala), databases (MySQL, PostgreSQL, Oracle) and NoSQL solutions (MongoDB, Redis).
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments
Back to top button