SlideShare a Scribd company logo
Play and learn
with
Elasticsearch
Emanuil
@emanuil_tolev
I’ve done things
Used Elasticsearch since v.0.18 (2011)
Been on-call for production systems using Elasticsearch since 2013
Paired it with (mostly) Python, also Ruby and Javascript
Used it as the sole place to hold data
Also used it in a more usual way - paired with a database
Elasticsearch is
a really fast and easily scalable
Open source
Distributed
RESTful
Search and Analytics
Engine
Part of an ecosystem of tools for analytics
(massage, store and graph data)
The features of Elasticsearch
A walk through the woods. Features.
Many features that can be categorised as:
- Indexing
- Querying
- Aggregating (Analysing)
Indexing
Receive raw data
Analyse
Record
You can just throw data at it
Querying
Receive the query
Analyse the query
Search
Fetch (return results)
Control paging and sorting
Many types of query to support many use cases
Aggregating
An aggregation is some analysis over some documents
Types
Buckets are very useful
You can nest aggregations
They’re cleverly cached
You can do quite a lot with
Elasticsearch
Search
through
Natural
Language
~30 minutes to prototype
Ingredients
The text you want to search through
The searches you want to do (queries)
Elasticsearch
Preparation
Put text into Elasticsearch. No schema or
configuration necessary (for basics).
Put queries into Elasticsearch
1. Get results
Let me show you quickly.
Logs
~60 minutes to prototype
Put logs in. Run aggregations.
Get insight into app and traffic.
The Elastic Stack is geared towards
this with multiple products tackling
log formats, ingestion and analysis.
Custom
Dashboards
~180 minutes to prototype
Put data in. Run aggregations.
Get insight.
Plays really well with D3 and other
common visualisation libraries.
Can also use Kibana + Elasticsearch
Further use cases
Search
Faceting
“Did you mean?”
Autocomplete
Sounds-like suggestions
“People who buy this also buy...”
Do you have a nail? Elasticsearch is a
hammerES is not great at:
● Relational
integrity
● Transactions
Problems you should not try to solve with ES:
● Calculate inventory
● Grand totals
● Rollback-able stuff
● User accounts
Let’s play!
I was your host
and would love feedback
Emanuil Tolev
emanuil@cottagelabs.com
@emanuil_tolev on Twitter
Link to slides: http://tinyurl.com/es-intro-slides
Really, really good intro blog post to ES with use cases and further reading,
like securing your Elasticsearch: http://tinyurl.com/es-intro-blog .
US State map came from http://greasethewheels.org/cpi/ , actually a US corruption research paper.

More Related Content

Similar to Elasticsearch workshop presentation

Getting started with Laravel & Elasticsearch
Getting started with Laravel & ElasticsearchGetting started with Laravel & Elasticsearch
Getting started with Laravel & Elasticsearch
Peter Steenbergen
 
Filebeat Elastic Search Presentation.pptx
Filebeat Elastic Search Presentation.pptxFilebeat Elastic Search Presentation.pptx
Filebeat Elastic Search Presentation.pptx
Knoldus Inc.
 
An Intro to Elasticsearch and Kibana
An Intro to Elasticsearch and KibanaAn Intro to Elasticsearch and Kibana
An Intro to Elasticsearch and Kibana
ObjectRocket
 
Elasticsearch
ElasticsearchElasticsearch
Elasticsearch
Oto Brglez
 
Elastic Search Capability Presentation.pptx
Elastic Search Capability Presentation.pptxElastic Search Capability Presentation.pptx
Elastic Search Capability Presentation.pptx
Knoldus Inc.
 
Episerver and search engines
Episerver and search enginesEpiserver and search engines
Episerver and search engines
Mikko Huilaja
 
ElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learnedElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learned
BeyondTrees
 
Visualizing Austin's data with Elasticsearch and Kibana
Visualizing Austin's data with Elasticsearch and KibanaVisualizing Austin's data with Elasticsearch and Kibana
Visualizing Austin's data with Elasticsearch and Kibana
ObjectRocket
 
Getting Started with Elasticsearch
Getting Started with ElasticsearchGetting Started with Elasticsearch
Getting Started with Elasticsearch
Alibaba Cloud
 
Introduction to elasticsearch
Introduction to elasticsearchIntroduction to elasticsearch
Introduction to elasticsearch
pmanvi
 
Elastic search apache_solr
Elastic search apache_solrElastic search apache_solr
Elastic search apache_solr
macrochen
 
Elasticsearch Basics
Elasticsearch BasicsElasticsearch Basics
Elasticsearch Basics
Shifa Khan
 
ElasticSearch Meetup 30 - 10 - 2014
ElasticSearch Meetup 30 - 10 - 2014ElasticSearch Meetup 30 - 10 - 2014
ElasticSearch Meetup 30 - 10 - 2014
Alberto Paro
 
AWS October Webinar Series - Introducing Amazon Elasticsearch Service
AWS October Webinar Series - Introducing Amazon Elasticsearch ServiceAWS October Webinar Series - Introducing Amazon Elasticsearch Service
AWS October Webinar Series - Introducing Amazon Elasticsearch Service
Amazon Web Services
 
Roaring with elastic search sangam2018
Roaring with elastic search sangam2018Roaring with elastic search sangam2018
Roaring with elastic search sangam2018
Vinay Kumar
 
(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics
(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics
(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics
Amazon Web Services
 
Elastic & Azure & Episever, Case Evira
Elastic & Azure & Episever, Case EviraElastic & Azure & Episever, Case Evira
Elastic & Azure & Episever, Case Evira
Mikko Huilaja
 
Configuring elasticsearch for performance and scale
Configuring elasticsearch for performance and scaleConfiguring elasticsearch for performance and scale
Configuring elasticsearch for performance and scale
Bharvi Dixit
 
Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)
Ravi Okade
 
Overview on elastic search
Overview on elastic searchOverview on elastic search
Overview on elastic search
Asish Kumar Behera
 

Similar to Elasticsearch workshop presentation (20)

Getting started with Laravel & Elasticsearch
Getting started with Laravel & ElasticsearchGetting started with Laravel & Elasticsearch
Getting started with Laravel & Elasticsearch
 
Filebeat Elastic Search Presentation.pptx
Filebeat Elastic Search Presentation.pptxFilebeat Elastic Search Presentation.pptx
Filebeat Elastic Search Presentation.pptx
 
An Intro to Elasticsearch and Kibana
An Intro to Elasticsearch and KibanaAn Intro to Elasticsearch and Kibana
An Intro to Elasticsearch and Kibana
 
Elasticsearch
ElasticsearchElasticsearch
Elasticsearch
 
Elastic Search Capability Presentation.pptx
Elastic Search Capability Presentation.pptxElastic Search Capability Presentation.pptx
Elastic Search Capability Presentation.pptx
 
Episerver and search engines
Episerver and search enginesEpiserver and search engines
Episerver and search engines
 
ElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learnedElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learned
 
Visualizing Austin's data with Elasticsearch and Kibana
Visualizing Austin's data with Elasticsearch and KibanaVisualizing Austin's data with Elasticsearch and Kibana
Visualizing Austin's data with Elasticsearch and Kibana
 
Getting Started with Elasticsearch
Getting Started with ElasticsearchGetting Started with Elasticsearch
Getting Started with Elasticsearch
 
Introduction to elasticsearch
Introduction to elasticsearchIntroduction to elasticsearch
Introduction to elasticsearch
 
Elastic search apache_solr
Elastic search apache_solrElastic search apache_solr
Elastic search apache_solr
 
Elasticsearch Basics
Elasticsearch BasicsElasticsearch Basics
Elasticsearch Basics
 
ElasticSearch Meetup 30 - 10 - 2014
ElasticSearch Meetup 30 - 10 - 2014ElasticSearch Meetup 30 - 10 - 2014
ElasticSearch Meetup 30 - 10 - 2014
 
AWS October Webinar Series - Introducing Amazon Elasticsearch Service
AWS October Webinar Series - Introducing Amazon Elasticsearch ServiceAWS October Webinar Series - Introducing Amazon Elasticsearch Service
AWS October Webinar Series - Introducing Amazon Elasticsearch Service
 
Roaring with elastic search sangam2018
Roaring with elastic search sangam2018Roaring with elastic search sangam2018
Roaring with elastic search sangam2018
 
(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics
(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics
(BDT209) Launch: Amazon Elasticsearch For Real-Time Data Analytics
 
Elastic & Azure & Episever, Case Evira
Elastic & Azure & Episever, Case EviraElastic & Azure & Episever, Case Evira
Elastic & Azure & Episever, Case Evira
 
Configuring elasticsearch for performance and scale
Configuring elasticsearch for performance and scaleConfiguring elasticsearch for performance and scale
Configuring elasticsearch for performance and scale
 
Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)
 
Overview on elastic search
Overview on elastic searchOverview on elastic search
Overview on elastic search
 

More from Laura Steggles

HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018
Laura Steggles
 
Tech Talk - Blockchain presentation
Tech Talk - Blockchain presentationTech Talk - Blockchain presentation
Tech Talk - Blockchain presentation
Laura Steggles
 
HR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the WorkplaceHR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the Workplace
Laura Steggles
 
Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017
Laura Steggles
 
How to find and build your audience using social media
How to find and build your audience using social mediaHow to find and build your audience using social media
How to find and build your audience using social media
Laura Steggles
 
Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017
Laura Steggles
 
Functional programming with Immutable .JS
Functional programming with Immutable .JSFunctional programming with Immutable .JS
Functional programming with Immutable .JS
Laura Steggles
 
Running local, going global yolk
Running local, going global   yolkRunning local, going global   yolk
Running local, going global yolk
Laura Steggles
 
Social Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal withSocial Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal with
Laura Steggles
 

More from Laura Steggles (9)

HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018HR Insights - Tax Reforms & Spring updates 2018
HR Insights - Tax Reforms & Spring updates 2018
 
Tech Talk - Blockchain presentation
Tech Talk - Blockchain presentationTech Talk - Blockchain presentation
Tech Talk - Blockchain presentation
 
HR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the WorkplaceHR Insights - Mental Health Awareness in the Workplace
HR Insights - Mental Health Awareness in the Workplace
 
Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017Anna Denton Jones HR Insights September 2017
Anna Denton Jones HR Insights September 2017
 
How to find and build your audience using social media
How to find and build your audience using social mediaHow to find and build your audience using social media
How to find and build your audience using social media
 
Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017Anna Denton Jones HR Insights June 2017
Anna Denton Jones HR Insights June 2017
 
Functional programming with Immutable .JS
Functional programming with Immutable .JSFunctional programming with Immutable .JS
Functional programming with Immutable .JS
 
Running local, going global yolk
Running local, going global   yolkRunning local, going global   yolk
Running local, going global yolk
 
Social Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal withSocial Media and the common challenges employers have to deal with
Social Media and the common challenges employers have to deal with
 

Recently uploaded

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
ScyllaDB
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
maazsz111
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 

Recently uploaded (20)

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 

Elasticsearch workshop presentation

  • 2. I’ve done things Used Elasticsearch since v.0.18 (2011) Been on-call for production systems using Elasticsearch since 2013 Paired it with (mostly) Python, also Ruby and Javascript Used it as the sole place to hold data Also used it in a more usual way - paired with a database
  • 3. Elasticsearch is a really fast and easily scalable Open source Distributed RESTful Search and Analytics Engine Part of an ecosystem of tools for analytics (massage, store and graph data)
  • 4. The features of Elasticsearch
  • 5. A walk through the woods. Features. Many features that can be categorised as: - Indexing - Querying - Aggregating (Analysing)
  • 7. Querying Receive the query Analyse the query Search Fetch (return results) Control paging and sorting Many types of query to support many use cases
  • 8. Aggregating An aggregation is some analysis over some documents Types Buckets are very useful You can nest aggregations They’re cleverly cached
  • 9.
  • 10.
  • 11. You can do quite a lot with Elasticsearch
  • 12. Search through Natural Language ~30 minutes to prototype Ingredients The text you want to search through The searches you want to do (queries) Elasticsearch Preparation Put text into Elasticsearch. No schema or configuration necessary (for basics). Put queries into Elasticsearch 1. Get results Let me show you quickly.
  • 13. Logs ~60 minutes to prototype Put logs in. Run aggregations. Get insight into app and traffic. The Elastic Stack is geared towards this with multiple products tackling log formats, ingestion and analysis.
  • 14. Custom Dashboards ~180 minutes to prototype Put data in. Run aggregations. Get insight. Plays really well with D3 and other common visualisation libraries. Can also use Kibana + Elasticsearch
  • 15. Further use cases Search Faceting “Did you mean?” Autocomplete Sounds-like suggestions “People who buy this also buy...”
  • 16. Do you have a nail? Elasticsearch is a hammerES is not great at: ● Relational integrity ● Transactions Problems you should not try to solve with ES: ● Calculate inventory ● Grand totals ● Rollback-able stuff ● User accounts
  • 18. I was your host and would love feedback Emanuil Tolev emanuil@cottagelabs.com @emanuil_tolev on Twitter Link to slides: http://tinyurl.com/es-intro-slides Really, really good intro blog post to ES with use cases and further reading, like securing your Elasticsearch: http://tinyurl.com/es-intro-blog . US State map came from http://greasethewheels.org/cpi/ , actually a US corruption research paper.

Editor's Notes

  1. Am a consultant, specialising in performance and robust technical architecture. The right tools for the right problems, etc. Work in a loose partnership of other consultants and freelancers called Cottage Labs.
  2. About to use it a lot more with RDBMS
  3. Open source - 1-2 of the usual positives. Strong resilient community in this case. Distributed - stuff can go down and the system rebalances itself automatically. Restful - Very easy to use - only need a browser. Very good, simple HTTP API speaking in JSON. Note Search vs. Analytics distinction The Elastic Stack is more than Elasticsearch, but out of scope here.
  4. Indexing (= putting data in) Querying (= find a needle in haystack). Includes things like searching, fuzzy searching, autocompletion and instant searches (train apps). Aggregating (= analysing data and counting things)
  5. Throw data at it: ES will guess data types and enforce them for you. You can’t save a number into a field that ES has learned is a date. Of course, you can also be much more careful and thorough - use Mappings. ES will always analyse by default. Is it possible that we might not always want that? Advanced: asciifolding, tokenisation, find a document by its translation, and more. Index-time analysis and analysers Common pitfall: avoiding analysis for exact string matches
  6. Paging and sorting directly in the URL, or in JSON: ?sort ?size Queries: match, terms, geo, More Like This (takes doc as input to return similar docs)
  7. Types: matrix, metrics, bucket, pipeline Buckets are very useful, especially Terms buckets. Aggregations are cached with some very clever algorithms and great cache management by default, ensuring both low resource use and no stale results. Say we have a field called “us_state” in some data we’ve got. A Terms aggregation over that data will tell us the unique US state codes which are present in our data. If it’s a comprehensive dataset, we’ll essentially just get a list of the US states. Not that useful, right. But, you can nest aggregations so you have sub-aggregations. Which means, we could ask Show a Terms aggregation drilling further and further down into some category. Fashion may be a good metaphore, e.g. All Stock -> Shoes -> Ladies’ -> Red -> Size 6.5 TODO replace with housing example Bucketing: all the buckets criteria are evaluated on every document in the context and when a criterion matches, the document is considered to "fall in" the relevant bucket. By the end of the aggregation process, we’ll end up with a list of buckets - each one with a set of documents that "belong" to it. Metric: Aggregations that keep track and compute metrics over a set of documents. Min, max, avg, sum, ranking, geo bounds and geo centroid. (If asked) Geo bounds gives you the box containing all locations. Geo centroid gives you the center given other points. Matrix: operate on multiple fields and produce a matrix result based on the values. Experimental. Statistics (variance, covariance, correlation). Pipeline: Aggregations that aggregate the output of other aggregations and their associated metrics. More advanced.
  8. Just an example. Example aggregation using geo centroid and the number of, say, museums in the USA - the exact data is not important. But now, let’s see what bucketing the documents by US state gives us.
  9. So this is what “bucketing” is. You’ll find it very useful for building intuitive analytics dashboards and user interfaces that deal with search and discovery. I’ll give you a sneak peek of what the data, the request and the response might look like. The Elastic example is museums in Europe. https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-metrics-geocentroid-aggregation.html
  10. Predefined aggregations available. Logstash capable of understanding many log formats, and you can add custom ones.
  11. Why the ugly dashboard? Dashboards should be useful first, pretty … later. Netflix built an open source application metrics project based on Java and ES. Called Servo
  12. Searching a large number of descriptions for the best match for a specific phrase (e.g. property search, say “no pets”) and returning the best results Faceting: get a breakdown of the types of dwelling that forbid pets :( “Did you mean …?” suggestions Auto-completing a search box based on partially typed words based on previously issued searches while accounting for mis-spellings Searching text for words that sound like another word Product and information suggestions: “People who were interested in / bought this also look at…”
  13. Not great at: Instant availability in search results after indexing High cardinality & high precision analysis Problems you should not try to solve: Very limited resource projects (embedded devices, tiny websites) Elasticsearch is generally fantastic at providing approximate answers from data, such as scoring the results by quality. While Elasticsearch can perform exact matching and statistical calculations, its primary task of search is an inherently approximate task. Finding approximate answers is a property that separates Elasticsearch from more traditional databases. That being said, traditional relational databases excel at precision and data integrity.
  14. The Elastic website has a lot of blogs and videos on user stories, including top senior dogs from Netflix, Rightmove, banks, supercomputer and AI people, fighting Ebola, the BBC and many more! It was a pleasure! I hope you had fun. Please leave a comment on the meetup page or send me an email with feedback.