Introduction
  • Introduction to the course
  • Introduction to Elasticsearch
  • Overview of the Elastic Stack
  • Understanding of the Elastic Stack
  • Walkthrough of common architectures
  • Guidelines for the course Q&A
Getting Started
  • Overview of installation options
  • Running Elasticsearch & Kibana in Elastic Cloud
  • Installing Elasticsearch on macOS and Linux
  • Installing Elasticsearch on Windows
  • Exploring the Elasticsearch directory
  • Installing Kibana on macOS and Linux
  • Installing Kibana on Windows
  • Understanding the basic architecture
  • Inspecting the cluster
  • Sending queries with cURL
  • Sharding and scalability
  • Sharding
  • Understanding replication
  • Replication
  • Adding more nodes to the cluster (for development)
  • Overview of node roles
  • Wrap up
Managing Documents
  • Creating & deleting indices
  • Indexing documents
  • Retrieving documents by ID
  • Updating documents
  • Scripted updates
  • Upserts
  • Replacing documents
  • Deleting documents
  • Understanding routing
  • How Elasticsearch reads data
  • How Elasticsearch writes data
  • Understanding document versioning
  • Optimistic concurrency control
  • Update by query
  • Delete by query
  • Batch processing
  • Importing data with cURL
  • Wrap up
Mapping & Analysis
  • Introduction to this section
  • Introduction to analysis
  • Using the Analyze API
  • Understanding inverted indices
  • Introduction to mapping
  • Overview of data types
  • How the "keyword" data type works
  • Understanding type coercion
  • Understanding arrays
  • Adding explicit mappings
  • Retrieving mappings
  • Using dot notation in field names
  • Adding mappings to existing indices
  • How dates work in Elasticsearch
  • How missing fields are handled
  • Overview of mapping parameters
  • Updating existing mappings
  • Reindexing documents with the Reindex API
  • Defining field aliases
  • Multi-field mappings
  • Index templates
  • Introduction to the Elastic Common Schema (ECS)
  • Introduction to dynamic mapping
  • Combining explicit and dynamic mapping
  • Configuring dynamic mapping
  • Dynamic templates
  • Mapping recommendations
  • Stemming & stop words
  • Analyzers and search queries
  • Built-in analyzers
  • Creating custom analyzers
  • Adding analyzers to existing indices
  • Updating analyzers
  • Wrap up
Introduction to Searching
  • A word on document types
  • Search methods
  • Searching with the request URI
  • Introducing the Query DSL
  • How searching works
  • Understanding query results
  • Understanding relevance scores
  • Debugging unexpected search results
  • Query contexts
  • Full text queries vs term level queries
  • Basics of searching
Term Level Queries
  • Introduction to term level queries
  • Searching for a term
  • Searching for multiple terms
  • Retrieving documents based on IDs
  • Matching documents with range values
  • Working with relative dates (date math)
  • Matching documents with non-null values
  • Matching based on prefixes