RediSearch banner image

RU201 ·

RediSearch

This course has been replaced by RU203 Querying, Indexing, and Full-Text Search.

Go to RU203  
 course image

What you’ll learn

This advanced 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 1

  • Overview and Introduction
  • What is a module?
  • Search Engines Concepts
  • Secondary Indexes
  • Redis vs RediSearch

Week 2

  • Introducing the Query Language
  • Simple Queries
  • Combining Clauses
  • Managing fields

Week 3

  • Queries
  • Text fields
  • Numeric fields
  • Tags
  • Geospatial

Week 4

  • Understanding Document Scores and Weights
  • Complex Queries
  • Building a Full-Text Search Engine
  • Tags

Week 5

  • Managing Documents
  • Synonyms
  • Autocomplete

Week 6

  • Final Exam
Course Number
RU201
Estimated Effort
~ 3 hours per week

Software Requirements

  • 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 10
  • Software: Docker, or local installs of Node.js 8.9 or above and Redis 5 or 6
  • Non-blocked access to youtube.com and university.redislabs.com
A photograph of Kyle Davis
Instructor Kyle Davis

Kyle Davis is Head of Developer Advocacy at Redis Labs. Aside from crafting code in Rust or Node.js, he presents and writes about Redis.

Kyle lives in Edmonton, Alberta, Canada.