Details
Overview
This hands-on, instructor-led in-classroom course is
designed for software developers and engineers who need to develop
search and analytics applications using Elasticsearch. Students learn the
internals of Elasticsearch from a developer’s perspective, including how
to write search queries, perform text analysis, define mappings, perform
aggregations, work with search results, and implement suggesters. Upon
finishing this course, you will receive a Certificate of Completion.
Audience
This course is designed for software developers and engineers who need to
build search and analytics solutions using Elasticsearch.
Duration (Classroom Training)
2 Day | Class is scheduled from 9 a.m. to 5 p.m.
Language
English
Prerequisites
- No prior knowledge of Elasticsearch is required
- Students should be software developers familiar with programming
concepts
- Students should be familiar with running commands from a command
line or terminal
Requirements (Classroom Training)
- Laptop with connectivity to Wifi
- Mac, Linux OS, or Windows 7 or later
- A modern web browser
- Java version 1.8u20 or later installed
- At least 20% free disk space
Modules
Introduction to Elasticsearch
- Learn about Elasticsearch and Lucene, the components of Elasticsearch, and
how to index documents using the REST and Bulk APIs
- Hands-on Lab : Index a dataset, then search the data using
The Search API
- Learn how to write and submit queries, how the scoring and relevance of
matching documents is calculated, and how to boost relevance at query time
- Hands-on Lab: Write various queries that search documents
using Search API queries like match, range and bool
Text Analysis
- We walk through the details of how full text is analyzed and indexed in
Elasticsearch, including a discussion of the various analyzers and filters and
how to configure them
- Hands-on Lab : Perform the steps for configuring text analysis
in Elasticsearch; use the Analyze API to see how the built-in analyzers work;
define custom analyzers by configuring character filters, tokenizers and token
filter
Mappings
- Learn how Elasticsearch mappings are used to define how your documents
and fields are stored and indexed, including how to define multi-fields, custom
analyzers, and index templates
- Hands-on Lab : Define a custom mapping for a new index; use an
index template to customize a mapping
More Search Features
- Learn how Elasticsearch mappings are used to define how your documents
and fields are stored and indexed, including how to define multi-fields, custom
analyzers, and index templates
- Hands-on Lab: See how a terms query works in Elasticsearch;
write multi_match and more_like_this queries; see how the fuzziness parameter
works and how to highlight search terms
The Distributed Model
- Understand how Elasticsearch scales and distributes data across a cluster,
including a discussion on shards, how to startup a multi-node cluster, and how
data replication works in Elasticsearch
- Hands-on Lab : Startup a multi-node cluster and see how
documents indexed into Elasticsearch are distributed across shards in the
cluster
Working with Search Results
- Learn how to perform common tasks when working with search results like
sorting, pagination, and performing scroll searches
- Hands-on Lab : Run queries that involve controlling the results of
searches using relevance boosting, sorting, and pagination
Suggesters
- Learn how to provide autocomplete suggestions for users, as well as “did you
mean” suggestions when users misspell terms in their queries
- Hands-on Lab : Implement a “did you mean” and autocomplete
solution using suggesters
Aggregations
- An introduction to aggregations, including a discussion the different types of
aggregations, how to perform metric and bucket aggregations, and details on
how to use some of the more common aggregations
- Hands-on Lab: Perform various metrics and bucket aggregations
on the products index and also on some stock market trade data
More Aggregations
- We take a deeper dive into aggregations and discuss scope, using post_filter
for faceting, creating histograms, finding the top hits of an aggregation, and an
example of the significant terms aggregation
- Hands-on Lab: Perform various advanced bucket and metrics