Improve your coding skills from beginner to expert with the largest online Java e-learning platform

NoSQL Databases

with MongoDB, Neo4j and Redis
  • Big Data is a Big Deal - and you have to know NoSQL if you want to be current in the development marketplace.
  • With this video training course, you'll be getting hands on experience of MongoDB, Neo4J and Redis, three of the most popular NoSQL databases in the world.
  • If you're a Java programmer, you'll also find detailed topics on how to integrate your applications.
  • You'll also learn why and when you would use each type of database. From Document stores, to Graph Databases and Key/Value stores, you will understand the trade offs and architectures of each type.


The course is suitable for anyone who wants to learn about the exciting new wave of NoSQL databases.

Some optional chapters cover how to integrate with Java and Spring - for these chapters you will need previous knowledge - our Java Fundamentals and Spring Fundamentals courses cover all the Java and Spring knowledge you need for this course.

Contents - The video is equivalent to a live 5 day training course. The running time of the videos is approx. 17 hours.


Having problems? check the errata for this course.


Course Introduction

6m 15s
An overview of the course content and structure.


Part 1 : Introducing NoSQL

34m 52s
An introduction to NoSQL databases. We look at scalability, the difference between integration and application databases, the concept of polyglot persistence and an overview of the different types of NoSQL database


Part 2 : Introducing MongoDB

31m 51s
In this chapter we cover what MongoDB is, and get an overview of its features. We also cover the basics of the JSON syntax for documents.


Installing MongoDB

19m 39s
How to install and configure Mongo on either a Windows, Linux or Mac computer.


Mongo CRUD

46m 42s
How to use the basic operations of create, read, update and delete.


Mongo Practical 1

17m 34s
A chance to practice what we have learned so far using real world data.


Mongo Operators

35m 53s
An exploration of the main types of operators in Mongo - comparison query operators, logical query operators and update operators


Mongo Practical 2

12m 5s
A chance to practice working on some more complex queries, using operators, with our larger case-study data set.


Mongo and JavaScript

46m 41s
Using JavaScript to query our database and creating functions within our Mongo databases with the JavaScript programming language, including configuring a default editor within the Mongo client.


Mongo Practical 3

5m 48s
Practice exercise using Javascript functions with MongoDB


Mongo Aggregation

27m 26s
How to group and aggregate data from a Mongo Collection using the group method.


Mongo Practical 4

12m 26s
Practice exercise with grouping and aggregation


Mongo Profiling and Indexes

36m 59s
In this chapter we understand how to find out whether queries are efficient or not. For inefficient queries, we learn how to add indexes to our collections to improve the query performance. We also cover how to sort data.


Mongo and Java

68m 56s
How to access a Mongo database from Java, including using Jackson to map JSON to Java Objects.


Mongo Replication

52m 31s
What is replication, and how to configure a replica set. How Mongo handles network partitions (network connectivity problems) to keep your database running while maintaining data integrity.


Mongo Sharding

55m 37s
Using multiple computers to provide a distributed data store running Mongo.


Part 3 : Neo4J Introduction

14m 33s
We'll discuss what a graph database is, and why you might want to use one, and get an introduction to their terminology.


Neo4J Installation

11m 54s
How to install and configure Neo4J on either a Windows, Linux or Mac computer.


Neo4J Basic Graphs

20m 59s
We start exploring Neo4J using the older Web interface to create some basic nodes.


Neo4J - Introducing Cypher

13m 5s
We get a short tour of the Cypher language (the query language that we use to interract with Neo4J) including an overview of its syntax.


Neo4J - Cypher CRUD

48m 29s
We'll learn the basics of how to create, read, update and delete nodes and relationships with the Cypher query language. This will also give us lots of opportunities to practice using the Cypher syntax.


Neo4J Walking the Graph and Case Study

50m 31s
How to walk a graph using the Cypher query language, followed by a practical exercise using a larger real-world data set.


More Cypher

30m 55s
In this chapter we look at path analysis (finding the shortest possible path between any two nodes), where clauses and aggregations.


Neo4J Performance

28m 41s
Understanding index free adjacency, and how this affects query performance, how to profile queries, and how indexes can be created in Neo4J.


Neo4J and Java

54m 27s
Running Neo in Embedded mode, using Java code to interract with your database.


Neo4J REST Interface

34m 30s
Using Neo4J from Java, where Neo is running on a different server to your java code, using its REST API.


Part 4 : Redis Installation

23m 46s
We explore what a Key Value store is, why you might want to use one, and then work through installing Redis on Windows, Mac and Linux.


Redis Basic Operations

22m 14s
Using the command line interface to create simple key value pairs, what time complexity is, and why it matters, and we touch on key conventions.


Redis Transactions

22m 59s
How Redis handles transactions - how they differ from traditional database transactions, how to use them, and what benefits they provide.


Redis and Java

11m 34s
How to use Redis from Java using Jedis.


Redis and Lists

33m 5s
We'll introduce collections in Redis, and have an in depth look at the first type of collection - the List.


Redis and Sets

29m 9s
Using the Set collection type to compare two data sets, and how the Sorted Set works in Redis


Redis Hashes and Practical

47m 22s
We'll introduce the Hash and then there's a final programming challenge, where we'll implement a website shopping cart using redis.


Course Summary

30m 55s
We finish the course with some more general database theory (ACID transactions, and BASE) and how this applies to the databases we have seen.

Let the Course Come to You

About Us Pricing Frequently Asked Questions Contact Privacy T&Cs Affiliates and Resellers
Facebook Twitter YouTube LinkedIn