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.
Having problems? check the errata for this course.
1 |
Course Introduction |
Watch
6m 15s |
|
An overview of the course content and structure. | |||
2 |
Part 1 : Introducing NoSQL |
Preview
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 | |||
3 |
Part 2 : Introducing MongoDB |
Watch
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. | |||
4 |
Installing MongoDB |
Watch
19m 39s |
|
How to install and configure Mongo on either a Windows, Linux or Mac computer. | |||
5 |
Mongo CRUD |
Watch
46m 42s |
|
How to use the basic operations of create, read, update and delete. | |||
6 |
Mongo Practical 1 |
Watch
17m 34s |
|
A chance to practice what we have learned so far using real world data. | |||
7 |
Mongo Operators |
Watch
35m 53s |
|
An exploration of the main types of operators in Mongo - comparison query operators, logical query operators and update operators | |||
8 |
Mongo Practical 2 |
Watch
12m 5s |
|
A chance to practice working on some more complex queries, using operators, with our larger case-study data set. | |||
9 |
Mongo and JavaScript |
Watch
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. | |||
10 |
Mongo Practical 3 |
Watch
5m 48s |
|
Practice exercise using Javascript functions with MongoDB | |||
11 |
Mongo Aggregation |
Watch
27m 26s |
|
How to group and aggregate data from a Mongo Collection using the group method. | |||
12 |
Mongo Practical 4 |
Watch
12m 26s |
|
Practice exercise with grouping and aggregation | |||
13 |
Mongo Profiling and Indexes |
Watch
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. | |||
14 |
Mongo and Java |
Watch
68m 56s |
|
How to access a Mongo database from Java, including using Jackson to map JSON to Java Objects. | |||
15 |
Mongo Replication |
Watch
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. | |||
16 |
Mongo Sharding |
Watch
55m 37s |
|
Using multiple computers to provide a distributed data store running Mongo. | |||
17 |
Part 3 : Neo4J Introduction |
Watch
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. | |||
18 |
Neo4J Installation |
Watch
11m 54s |
|
How to install and configure Neo4J on either a Windows, Linux or Mac computer. | |||
19 |
Neo4J Basic Graphs |
Watch
20m 59s |
|
We start exploring Neo4J using the older Web interface to create some basic nodes. | |||
20 |
Neo4J - Introducing Cypher |
Watch
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. | |||
21 |
Neo4J - Cypher CRUD |
Watch
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. | |||
22 |
Neo4J Walking the Graph and Case Study |
Watch
50m 31s |
|
How to walk a graph using the Cypher query language, followed by a practical exercise using a larger real-world data set. | |||
23 |
More Cypher |
Watch
30m 55s |
|
In this chapter we look at path analysis (finding the shortest possible path between any two nodes), where clauses and aggregations. | |||
24 |
Neo4J Performance |
Watch
28m 41s |
|
Understanding index free adjacency, and how this affects query performance, how to profile queries, and how indexes can be created in Neo4J. | |||
25 |
Neo4J and Java |
Watch
54m 27s |
|
Running Neo in Embedded mode, using Java code to interract with your database. | |||
26 |
Neo4J REST Interface |
Watch
34m 30s |
|
Using Neo4J from Java, where Neo is running on a different server to your java code, using its REST API. | |||
27 |
Part 4 : Redis Installation |
Watch
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. | |||
28 |
Redis Basic Operations |
Watch
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. | |||
29 |
Redis Transactions |
Watch
22m 59s |
|
How Redis handles transactions - how they differ from traditional database transactions, how to use them, and what benefits they provide. | |||
30 |
Redis and Java |
Watch
11m 34s |
|
How to use Redis from Java using Jedis. | |||
31 |
Redis and Lists |
Watch
33m 5s |
|
We'll introduce collections in Redis, and have an in depth look at the first type of collection - the List. | |||
32 |
Redis and Sets |
Watch
29m 9s |
|
Using the Set collection type to compare two data sets, and how the Sorted Set works in Redis | |||
33 |
Redis Hashes and Practical |
Watch
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. | |||
34 |
Course Summary |
Watch
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. |