
Intro to the course & Instructor
Scope of the course
What is ELK stack
Introduction to Elasticsearch
Why use elasticsearch
Common use cases for Elasticsearch
Explain configuration over code and use of configuration in ELK stack
Important system requirements
Learn how to download Elasticsearch from the elastic.co website
Extracting files to run Elasticsearch
Important for windows platform users
Important Security Restrictions on Windows
Learn how to locally run Elasticsearch on Windows
Instruction to run Elasticsearch
How to run elasticsearch on docker
default certificate warning
Verify Elasticsearch is running inside a container on local machine
Default configuration of Elasticsearch
Commands for setting password and getting enrollment tokens
Verify Local installation of Elasticsearch
Solving Certificate warning on Chrome
Review of the installation steps
Download Kibana
Setup Kibana and run in browser
Running Kibana as containerized App
How to download Logstash
Examine Logstash Installation
Important note about logstash
A simple pipeline example via logstash
Download FileBeats from elastic.co
learn about Installing Filebeats
Note about Beats.
Demo on how to use Filebeats to ingest from a log file into Elasticsearch
Review of the installation section
Kibana to elasticsearch connection issues
Issue with starting zookeeper
Distributed Systems (Elasticsearch)
Learn how Elasticsearch is setup on top of Leucene and the API it provides
Explain Rest API
Learn basics of JSON
Understanding JSON and creating a JSON document
Starting Elasticsearch and Kibana if not already started. This is optional lesson.
Using Kibana Dev tools for queries
Explain Cluster, nodes, index, shards, documents and fields
Inside the cluster, Index, Cluster, Nodes, shards and fields
Description on Inverted Index
Detailed explaination on partitioning, indices and shards
Using the Cluster API to get cluster informaton
Some information about Segments and what they are
Introduction to Analyzers and what role they play in indexing and text analysis
What are mappings including dynamic and explicit mappings
TD/IDF, Score and Relevance
Important for next few lessons
Using POST requests and learning about issues with duplicates
Learn to avoid duplicates when inserting documents
Using PUT to insert documents
Getting a document
Bulk Insert
Searching for documents
Undestand document scoring
Learn to use Boosting Parameters
Boosting query to control relevancy and how scoring algorithm works
Understand term query
Bool queries and Filters
Using filters with bool query
Learn to use Fuzzy Queries
Text vs Keyword Type
Document update.
Updating fields and documents
Deleting a document
Learn about explicit mapping and index creation
Learn about reindexing documents
Important Information
Learn how to use ElasticDump to import csv file in index
Exporting from ES index to a File
Reference to other section
Learn about NDJSON format
How to load (index) JSON data onto Elasticsearch and dealing with standard JSON
A short introduction to data views
Understand GROK
Example of GROK Pattern
Learn about simple architecture of how to insert documents into Elasticsearch index using the bulk api and python client
Bulk Insert demo
Learn to use SQL with ElasticSearch
How to work with built-in analyzers
Building custom analyzers
Learn how Ngram tokenizer works
Learn about Edge Ngrams and why they are so useful
Learn about runtime fields
ILM (Creating a policy)
Applying a policy
Learn to work with Aggregations
Introduction to Kibana
Learn about data views
How to use KIbana Dashboards
Learn about Index Management and Lifecycle
Learn what are data shippers and why Beats are called lightweight data shippers
beats and logstash, when to use what?
Learn about configuring beats
What is heartbeat and what it is used for
Download and Install heartbeat
Configuring Local installation of heartbeat
Testing Heartbeat Configuration for errors
Installing the Heartbeat Dashboard
Running Heartbeat and visualizing data using Kibana
Filebeat review. How to configure and run filebeat
Understand what are data streams
Introduction to Logstash and its plugins
Logstash Configuration to develop pipelines
Example of Logstash pipeline
Pros & Cons of Logstash
Intro to data modelling and why we need data modelling. What benefits it offers
Data Modelling Intro including discussion on steps to perform NoSQL data modelling.
Comparision of relational and non relational way of modelling data
Data Modelling Patterns
Important instructions
Simple case study presented
App Joins : How they work
Demo of application join in action via Console Dev Tools
Loading data for Inner Objects
How inner objects work
Inner Object Demo in Console
More explanation of flattening
Loading data for nested Objects example
Nested Types
Nested Objects demo and queries
Define new Index. Put documents and query data
Parent Child relationships introduction
Demo of parent child relationship
What is Denormalisation?
Queries for Denormalization
Denormalization Demo in Console
How inversion pattern works
Data Modelling considerations
What we will be looking at in this section
Architecture example
Loading plant data vua kibana
Checking and verify the Plant index mapping are as expected. We changed the mappings in the last lesson while loading plant data via Kibana
Learn how to setup and run NodeJS and Javascript application utilizing Elasticsearch
Javascript Application built
Required Packages
making a connection to the elasticsearch cluster running on the local machine
Server side Code Explaination (NodeJS)
Front end Javascript review
Final Review of the section
What is binary data and how ES supports binary data
Second applicaiton we will be building in this section
Creation of Indec with Binary field
Code to load data into index
verify data is in the index
Server side component
Client side application (Map with Data)
Application demo (Map)
This course has a broader scope and covers not just the ELK stack but also integration of Elasticsearch with other technologies that are commonly used in the industry to build efficient, scalable and powerful architectures. The course starts with the basics and guides the student on the ELK stack, provides useful information on how to install various components of the ELK stack. Certain parts of the lessons are intentially repeated to reinforce the ideas and help with improved learning. This course can be taken by both beginners and experienced Professionals to learn the technology or refresh previous knowledge. The course covers the latest version 8 of the ELK stack however do note the minor versions are being released almost every 2 months therefore, the version on the course may be slightly behind but all that is discussed in the course should work with the latest minor version of ELK stack.
It is highly recommended that student has background in software development or possesses programming skills. For those who do not, they can follow along or just watch the lessons. The course has been desgined to enable student to learn the exciting stack and help them understand how they can adopt ELK stack in their current & future projects.