Sunday 9 a.m.–12:30 p.m.

Don't be afraid to search

Honza Král

Audience level:



Creating a good search functionality for your website is perceived as hard when it doesn't have to be so.

In this tutorial we will walk through the steps required to add search using elasticsearch. We will start with the theory of search and search engines and demonstrate this by implementing a simple search on a simple django site including features like auto complete and faceted navigation.



  • what is search
  • inverted index & importance of analysis
  • elasticsearch and it's data model

Simple Search - starting with working django app add

  • simple full-text search to find the content we are looking for
  • add structured search (filters)

Advanced search techniques

  • auto-complete as you type functionality
  • faceted navigation

Extras (when we have time, otherwise just an outline with links for home study)

  • using Kibana to explore and visualize our data
  • tracking user searches to improve relevancy
  • building recommendations based on user behavior

Only free and open source tools will be used. Sample django app and data will be provided for the tutorial via a git repo. Attendees should have a working django installation on their laptop and a JVM installed.