NoSQL Database Basics

Go to class
Write Review

Free Online Course: NoSQL Database Basics provided by edX is a comprehensive online course, which lasts for 5 weeks long, 2-3 hours a week. The course is taught in English and is free of charge. Upon completion of the course, you can receive an e-certificate from edX. NoSQL Database Basics is taught by Rav Ahuja, Ramesh Sannareddy and Steve Ryan.

Overview
  • This course will provide you with technical hands-on knowledge of NoSQL databases and Database-as-a-Service (DaaS) offerings. With the advent of Big Data and agile development methodologies, NoSQL databases have gained a lot of relevance in the database landscape. Their main advantage is the ability to effectively handle scalability and flexibility issues raised by modern applications.

    You will start by learning the history and the basics of NoSQL databases and discover their key characteristics and benefits. You will learn about the four categories of NoSQL databases and how they differ from each other.

    You will explore the architecture and features of several different implementations of NoSQL databases, namely MongoDB, Cassandra, and IBM Cloudant.

    Throughout the course you will get practical experience using these NoSQL databases to perform standard database management tasks, such as creating and replicating databases, loading and querying data, modifying database permissions, indexing and aggregating data, and sharding (or partitioning) data.

    The course ends with a hands-on project to test your understanding of some of the basics of working with several NoSQL database offerings.

Syllabus
  • Module 1 – Introducing NoSQL

    • Basics of NoSQL

    o Overview of NoSQL

    o Characteristics of NoSQL Databases

    o NoSQL Database Categories – Key-Value

    o NoSQL Database Categories – Document

    o NoSQL Database Categories – Column

    o NoSQL Database Categories – Graph

    o Database Deployment Options

    o Choosing an Appropriate Data Layer

    • Working with Distributed Data

    o ACID vs BASE

    o Distributed Databases

    o The CAP Theorem

    o Challenges in Migrating from RDBMS to NoSQL Databases

    Module 2 – Introducing MongoDB – An Open-Source NoSQL Database

    • Basics of MongoDB

    o Overview of MongoDB

    o Advantages of MongoDB

    o Use Cases for MongoDB

    o Lab: Getting Started with MongoDB

    • Getting Started with MongoDB

    o CRUD Operations

    o Lab: MongoDB CRUD

    o Indexes

    o Lab: MongoDB Indexing

    o Aggregation Framework

    o Lab: MongoDB Aggregation

    o Replication & Sharding

    o Accessing MongoDB from Python

    o Lab: Accessing MongoDB from Python

    Module 3 – Introducing Apache Cassandra – An Open-Source NoSQL Database

    • Cassandra Basics

    o Overview of Cassandra

    o Architecture of Cassandra

    o Key Features of Cassandra

    o Cassandra Data Model - Part 1

    o Cassandra Data Model - Part 2

    o Introduction to Cassandra Query Language (cqlsh)

    o Lab: Using the CQL Shell (cqlsh)

    • Working with Cassandra

    o CQL Data Types

    o Keyspace Operations

    o Lab: Keyspace Operations

    o Table Operations

    o Lab: Table Operations

    o CRUD Operations - Part 1

    o CRUD Operations - Part 2

    o Lab: CRUD Operations

    Module 4 – Introducing IBM Cloudant – A NoSQL DBaaS

    • Cloudant Basics

    o Overview of Cloudant

    o Cloudant Architecture and Key Technologies

    o Cloudant Benefits and Solutions

    o Deployment Options for Cloudant

    o Lab: Sign up for IBM Cloud account

    o Lab: Create an instance of IBM Cloudant

    • Working with Cloudant

    o Dashboards in Cloudant

    o Lab: Dashboards in Cloudant

    o Working with Databases in Cloudant

    o Lab: Working with Databases in Cloudant

    o HTTP API Basics

    o Working with the HTTP API

    o Query Optimization with Indexes

    o Lab: Querying Data using the HTTP API

    o How to Access Documentation and Support Resources

    Module 5 – Final Project – Working with NoSQL Databases

    • Peer-Graded Final Assignment

    o Lab: Setup & Practice Assignment

    o Project Overview

    o Lab: Final Assignment Project

    o Project Submission & Peer Review

    • Final Quiz