An intermediate course that teaches full-text indexing and search using the RediSearch module.

Register for this course
This course is self-paced. You can access all of the course materials at any time. You'll need to complete all homework and the final exam by the end date, but you're free to do so at your own pace.

What you’ll learn

This intermediate course covers RediSearch, the in-memory search engine built as a Redis Module.

The course begins with a deep dive into the fundamentals of search engines. We then cover the structures and operations of RediSearch.

We’ll focus extensively on the RediSearch query language. We’ll look at the ins and outs of schema creation and document ingestion.

You’ll also learn about the built-in aggregations engine: we’ll introduce the aggregation pipeline system and go over grouping and reducing, sorting, and the transformation syntax.

Finally, we’ll round out the course with an overview of synonyms and suggestions.

What you’ll build

This course will center around a real-time building permit search tool. In this way, you’ll learn how to use the many features of RediSearch to index and query a real-world data set.

The course will be presented in a language-agnostic fashion, with most exercises using the interactive Redis CLI.

Course Outline

Week 1Week 2Week 3
  • Overview and Introduction
  • What is a module?
  • Search Engines Concepts
  • Secondary Indexes
  • Redis vs RediSearch
  • Introducing the Query Language
  • Simple Queries
  • Combining Clauses
  • Managing fields
Week 3
  • Queries
  • Text fields
  • Numeric fields
  • Tags
  • Geospatial
Week 4 Week 5Week 6
  • Understanding Document Scores and Weights
  • Complex Queries
  • Building a Full-Text Search Engine
    • Creating a schema
    • Indexable vs non-indexable
    • Schema options
    • Text options
    • Numeric Options
    • Tag options
    • Altering schemas
  • Managing Documents
    • Adding and removing documents
    • Synonyms
    • Autocomplete
  • Final Exam


  • Web Browser: Firefox 39.0+ or Chrome 43+ (Internet Explorer is currently not supported)
  • Operating System: Mac OS X 10.7+ 64-bit, Ubuntu 14.04+ 64-bit, or Windows 8+ (64-bit)
  • Access to and (i.e. non-blocked access)

Course Instructors

Kyle Davis

HSET kyle:davis position "Head of Developer Advocacy"
HSET kyle:davis company "Redis Labs"
HSET kyle:davis education-bachelors "University of Southern Indiana"
HSET kyle:davis education-masters "University of Central Missouri"
HSET kyle:davis using-redis-since 2012
HSET kyle:davis favourite-language "Node.js"
HSET kyle:davis second-favourite-language "Rust"
HSET kyle:davis lives-in "Edmonton, Alberta, Canada"

Alvin Richards

Alvin is Chief Product Officer at Redis Labs, and has held various executive roles, most recently as the Field Chief Technology Officer at MariaDB, Vice President of Product at Aerospike and engineering lead at MongoDB. He has worked with SaaS startups, enterprise storage (NetApp) and byte-code virtualization and containers (Docker). Alvin’s early experience as a software engineer at Oracle provided a springboard for his career success building and leading engineering teams across the globe.

Alvin holds a computer science degree from Thames Valley University and a Bachelor of Arts in photography from Nottingham Trent University, both in Great Britain.