Elasticsearch workshop

CPH Conference, DGI-Byen, Tietgensgade 65, 1704 København

3, 4, 5April

Register For This Event

Elasticsearch workshop with Itamar Syn-Hershko

Itamar Syn-Hershko is a search technologies, distributed systems and architecture expert. Apache Lucene.NET committer and PMC member, Elasticsearch Consulting Partner and a Microsoft MVP. A frequent speaker at international conferences, he provides on-site training and consultancy services around the world.

Itamar teaches this intensive 3-day course on Elasticsearch through hands-on exercises. If you want to get started with Elasticsearch or strength your knowledge within what Elasticsearch has to offer, then this is the workshop for you. Below you will find the complete aganda for the 3-days.

What attendees learn

Day 1 and 2 is all about mastering how to use Elasticsearch for everything from text search to log analysis and anormaly detection.

The goal of this course is to provide an experienced developer with all the tools to succeed with integrating Elasticsearch into any type of project. You will learn:

  • How to use Elasticsearch for full-text search purposes, and query it for other usecases as well
  • Define and maintain Elasticsearch indexes, and index your data into them
  • Perform aggregation queries to drill-down into time-series data and other types of data
  • Understand where Elasticsearch shines and how to use it correctly

Developers with 3 years of experience or more. Platform doesn't matter as most of the course is hands on using the REST API using dedicated tools (Sense chrome plugin or via Kibana).

Module 1 - Starting with the basics

  • Basics of Full text search and Information Retrieval
  • Overview of the Elastic stack
  • Elasticsearch and the REST API
  • Using Elasticsearch from your favorite programming language
  • Search and the various query types
  • Hands-on experience with indexing and searching texts

Module 2 - The Analysis Chain and Index Mappings

  • The inverted index and full-text search
  • Term normalization with Analyzers, Tokenizers and TokenFilters
  • Understanding and poking into the analysis chain
  • Creating and using a custom analyzer
  • Using Index Mappings to control analysis and other index features

Module 3 - The Search API

  • Pagination and Sorting
  • Precision and Recall
  • Understanding scoring and how it is applied
  • Building smart queries that can influence scoring correctly
  • Scripting
  • Query explanation and profiling
  • Results highlighting
  • Various power query tools and a lot of good advice

Module 4 - Elasticsearch must-knows

  • Document oriented design and why it's crucial to do right with Elasticsearch
  • Suggesters
  • Record linkage via MoreLikeThis
  • Geo-spatial search
  • Multi-lingual search
  • Anomaly detection methods
  • The percolator

Module 5 - The aggregations framework, Logstash, Beats and Kibana

  • Real-time data analysis and reporting
  • The Aggregations Framework: Metric and Bucket aggregations
  • Pipeline aggregations
  • Various powerful aggregations tricks
  • Using Kibana as a powerful Web UI on top of the aggregations framework
  • Timelion
  • Logstash and Beats

Day 3 is about how to monitor and maintain a stable Elasticsearch cluster in production. This part is aimed at developers and operations people who need to be able to maintain Elasticsearch clusters in production. In this part of the course you will learn about the various parts that make up a cluster, how it operates, and many do's and dont's learned by experience over the years.


The goal of this course is to make sure you can maintain a stable cluster regardless of the load you put on it.

  • Performance, sizing, scaling out and multi-tenancy
  • Designing the right cluster topology
  • How to monitor the cluster health
  • Understand the various configurations behind the cluster
  • Maintenance and troubleshooting
  • Integration with clouds (AWS, GCP, Azure)
  • Security


Developers with 1 year of experience or more. Previous hands-on experience with Elasticsearch required - or completion of the 'Elasticsearch for Developers' course.

Module 1 - Elasticsearch under the hood

  • Lucene indexes, shards and replicas
  • The inverted index structure
  • FieldData, DocValues and TermVectors
  • Indexing, durability guarantees and it's effects on search

Module 2 - Scaling out

  • Elasticsearch Nodes and their roles
  • What it means to scale out
  • The Cluster State
  • Routing
  • Distributed search execution and search types
  • Shard allocation control
  • Tribe nodes
  • Installation and security
  • Working with cloud environments
  • Designing the cluster topology

Module 3 - Deployment, Installation and Security

  • Installation, cluster configurations, and gotchas
  • Deploying on the cloud
  • Pre-flight checklist
  • Security
  • Performing upgrades
  • Configurations and cluster state during normal operation
  • Snapshot and restore

Module 4 - Monitoring

  • What to monitor?
  • Elasticsearch's configurations and metrics
  • Monitoring the cluster health, and knowing when to react
  • Tweaking configuraitons without risking cluster stability
  • Hard and soft limits
  • Caches and cache invalidation

Module 5 - Data ingestion architecture

  • What you should use Elasticsearch for
  • Optimal shard size
  • Index Templates and Aliases
  • Index management patterms
  • Logstash, Beats and Ingest Nodes
  • Document versioning and syncing with external data sources


Please note that you need to bring your own laptop to this workshop

What is included?

3-day workshop with Itamar Syn-Hershko

Breakfast (served from 8:30), lunch and afternoon snack

Coffee and tea is available through-out the day

Price is DKK 8.900 (11.125 incl. VAT)

Do you need to pay via invoice / EAN then just reach out to Morten (email below) and he can help sort it out.

If you have any questions please feel free to reach out to Morten Christensen from the CNUG organizer team on email or twitter

Register For This Event


Location that you'll be looking for

Event Location

Get Directions


Enter Destination From under Get Directions and Click on Get Directions Button.