UDEMY
UDEMY Logo

Redis: The Complete Developer's Guide 

  • Offered byUDEMY

Redis: The Complete Developer's Guide
 at 
UDEMY 
Overview

Master Redis v7.0 with hands-on exercises. Includes Modules, Scripting, Concurrency, and Streams!

Duration

16 hours

Total fee

399

Mode of learning

Online

Credential

Certificate

Redis: The Complete Developer's Guide
 at 
UDEMY 
Highlights

  • 30-Day Money-Back Guarantee
  • Certificate of completion
  • Full lifetime access
  • Learn from 66 downloadable resources and 13 articles
Read more
Details Icon

Redis: The Complete Developer's Guide
 at 
UDEMY 
Course details

Skills you will learn
What are the course deliverables?
  • Use Redis as an incredibly fast database for a backend application
  • Extend the functionality of Redis by using custom scripts and modules
  • Add, update, and query your data using simple and flexible commands
  • Get hands-on experience by adding Redis to a complex E-Commerce project
  • Handle concurrency issues by using powerful synchronization primitives
  • Utilize data streams to add durable communication between servers
  • Host your Redis database in AWS, GCP, or Azure using Redis Cloud
  • Analyze and balance the tradeoffs of Redis's different data structures
More about this course
  • In a world with hundreds of different databases, one database rises to rule them all. Redis is an in-memory database known for its speed and simplicity. Originally used only for simple caching, its feature set has expanded to be one of the most versatile databases around. This course will teach you everything you need to know to integrate Redis into a new or existing project. Get hands-on experience with commands used to add, update, and query data Apply best practices and numerous design patterns by adding Redis to an E-Commerce app Understand and extend the internals of Redis by using modules and scripts Go beyond Redis with a deep look at fundamental concurrency issues and solutions Data structures form the heart of Redis. Rather than hiding functionality behind complex abstractions, Redis exposes several powerful data structures that developers use to store and query data. Learning about these different data structures is the key to mastering Redis. This course focuses on making sure that you understand the difference between a sorted set and a hash. After completing this course, you'll understand when to use each structure and the benefits and drawbacks to each. Don't have a background in algorithms or data structures? That's OK! Everything in this course assumes you have no prior knowledge.Almost all top companies around the world use Redis. Twitter, GitHub, Snapchat, Craigslist, StackOverflow - they all use Redis! Nearly every major web product you use on a daily basis utilizes Redis behind the scenes. And its not just large companies that use Redis - small startups do as well. To understand Redis, you must use Redis. Just memorizing commands isn't enough. You need to get your hands dirty! With that in mind, you'll work through many exercises and quizzes. In addition, throughout this entire course you will build a large E-Commerce application using Redis. Don't worry - you won't need to write any frontend code. As we learn new topics in Redis, we will add new features to our E-Commerce app. You'll get to see why and when we use each major feature of Redis. Built-in cheatsheets. Many resources about Redis show running commands in a terminal window. This approach makes it hard to remember even the most basic commands. In this course, you'll take a different approach. I built a standalone webapp called RBook just for you to use in this course. This app allows you to run commands against your own Redis instance and document them at the same time, making it easy for you to refer back to your notes in the future. Of course, you don't have to use RBook if you don't want to!Effective learning. Everything in this course is designed to make your learning process as easy as possible.At every step, I will teach you what Redis is doing internally, and help you understand how to twist and bend Redis to better suit your application's needs.Every single video in the course has an attached ZIP file containing up-to-date code, just in case you ever get stuck.Full-time teaching assistants are standing by to help answer your questions.Access to a private live chat server is included. Live help whenever you need it!Soooo much more. Here's a partial of some of the things you will do in this course:Write basic commands to store, update, and query dataPractice your skills with exercises and quizzesUse almost every major feature of Redis to build an E-Commerce appEnforce data constraints using sets, sorted sets, and lists Understand when to use each of Redis's major data structures Apply numerous design patterns to integrate Redis into an existing codebase Securely deploy a Redis instance using AWS, GCP, or Azure through Redis Cloud Collect stats and metrics sourced from a live API Communicate between different servers using Streams Master the concept of transactions to safely store data Implement a standard locking algorithm to solve concurrency issues Redis is known for being simple, but it is still hard to learn. You're given a huge toolbox with tons of features, but no clear guidance on when to use each feature. This course aims to give you direction. You'll understand why each feature exists, and when to use them in real apps. You will find learning Redis a delightful experience and pick up a tremendous amount of knowledge along the way.
Read more

Redis: The Complete Developer's Guide
 at 
UDEMY 
Curriculum

Get Started Here!

Hello and Welcome!

Join Our Community!

Course Resources

Why Use Redis?

Initial Setup

A Touch More Setup

Running RBook Locally

Commands for Adding and Querying Data

Basic Commands

Documentation on Commands

Essentials of Commands

Variations of SET

Use Case of Expiration Options

Setting Multiple Keys

GET and MGET

String Ranges

Are These Commands Even Useful?

Dealing with Numbers

Again... Why do These Commands Exist?

Completed Notes

Using a Completed Notebook

Exercises

A Few Exercises

Exercise Solutions

E-Commerce App Setup

E-Commerce App Source Code Download

Don't Skip This Video

Redis Client Libraries

First Implementation Task

Redis Design Methodology

Key Naming Methodology

Adding Page Caching

Better Key Generation

Local Redis Setup

Installing on MacOS

Installing on Windows

Hash Data Structures

Hashes in Redis

Storing and Retrieving Hashes

Deleting Hash Data

Numbers in Hashes

Completed Notes

Redis Has Gotcha's!

Slightly Unpredictable HSET and HGETALL

Issues with HSET

Issues with HGETALL

Powerful Design Patterns

App Overview

Reducing the Design to Queries

What Data Type for Each Resource

When to use Hashes

Create User Implementation

Serialization and Deserialization

Adding Serialize

Fetching a User

Implementing Sessions

Fetching a Saved Session

Creating Sessions

Serializing Date Times

Storing Items

Fetching a Single Item

Pipelining Commands

Batching Commands with Pipelines

Running Multiple Commands at the Same Time

Executing a Pipeline

Enforcing Uniqueness with Sets

Basics of Sets

Union of Sets

Intersection of Sets

Difference of Sets

Store Variations

Checking for an Element in a Set

Scanning a Set

Completed Notes

Most Common Use Cases of Sets

A Little Set Implementation

Requiring Unique User Names

Adding a Like System

How to Count the Number of Likes?

Updating Like Quantities

Showing Liked Items

Showing Common Liked Items

Organizing Data with Sorted Sets

Sorted Sets

Adding and Removing Members

Finding a Range of Scores

Removing the Highest and Lowest Members

Updating Scores

Querying a Sorted Set

Completed Notes

Practice Time with Sorted Sets!

Sorted Set Use Cases

Reminder on the Auth Flow

Storing Usernames

Kind of Storing Strings in Sorted Sets

Converting User IDs

Plan for Showing Most Viewed Items

Initializing Views on Item Creation

Incrementing View Counters

Items by Ending Soonest

Querying for Ending Soonest

From Relational Data to Redis

Loading Relational Data

Relational Data with SORT

The Sort Command

Terminology Around Sort

Specifying the BY Argument

Joining Data with Sort

A Few More Arguments

Parsing SORT Output

Completed Notes

HyperLogLog Structures

HyperLogsLogs

When to use HyperLogsLogs

HyperLogsLogs in Action

Storing Collections with Lists

Lists

Reading and Writing Data to a List

Ranges and Searches

Trimming Lists

Removing Elements

List Use Cases

Using Lists in Our App

Serializing and Deserializing Bids

Retrieving Bid Histories

More Practice with the E-Commerce App

More on Bids

Validating Bids

Updating Items with Bids

Issues with Bids

Understanding Concurrency Issues

Applying Atomic Updates

Transactions

Watching a Key with Transactions

Isolated Connections for Transactions

Solving Multiple Bids with a Transaction

Items by Price

More on Items by Price

Extending Redis with Scripting

Lua Scripting

Basics of Lua

Handling Arrays

Handling Tables

Loading and Executing Scripts

Providing Arguments

Providing Key lists

When to Use Scripts

Custom Scripts with Node-Redis

Lua Script Integration

Creating a View-Incrementing Script

Code Cleanup

Understanding and Solving Concurrency Issues

Concurrency Revisited

Issues with WATCH

Overview of a Lock

Understanding the Goal

Implementing WithLock

Using WithLock

It Works!

Automatically Expiring Locks

Another Lock Issue

Solving Accidental Unlocks

Adding an Unlock Script

One Last Issue

Providing Expiration Signals

Alternate Expiration Solution

Querying Data with RediSearch

Redis Modules

Redis Core vs Redis Stack

Using Modules in Production

Overview on Search

Creating and Using an Index

Details on Indexes

Index Field Types

Numeric Queries

Tag Queries

Text Queries

Fuzzy Search

Prefix Search

Pre-Processing Search Criteria

Search in Action

Search Implementation

The Create Index Function

When to Create the Index?

Parsing the Search Term

Executing the Search

Seeding Some Fake Data

RediSearch and TF-IDF

Applying Weights to Fields

Understanding Queries with EXPLAIN

Query Performance with PROFILE

Sorting and Searching

Updating an Existing Index

Executing the Search

Deserializing Search Results

Service Communication with Streams

Streams

Use Case of Streams

Adding Messages to a Stream

Consuming Streams with XREAD

Blocking Reads

An XREAD Shortcut

A Little Gotcha Around Streams

Reading Streams with XRANGE

Issues with Standard Streams

Consumer Groups

Creating and Inspecting Consumer Groups

Consumer Groups in Action

Claiming Expired Messages

Bonus!

Bonus!

Faculty Icon

Redis: The Complete Developer's Guide
 at 
UDEMY 
Faculty details

Stephen Grider
Designation : Engineering Architect

Other courses offered by UDEMY

549
50 hours
– / –
3 K
10 hours
– / –
549
4 hours
– / –
599
10 hours
– / –
View Other 2351 CoursesRight Arrow Icon
qna

Redis: The Complete Developer's Guide
 at 
UDEMY 

Student Forum

chatAnything you would want to ask experts?
Write here...