introduction to elasticsearch
TRANSCRIPT
![Page 1: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/1.jpg)
![Page 2: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/2.jpg)
§ § § § § §
Agenda
![Page 3: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/3.jpg)
Why Elasticsearch?
![Page 4: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/4.jpg)
Fuzzy Searches
![Page 5: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/5.jpg)
Relevant Searches
![Page 6: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/6.jpg)
Pagination
![Page 7: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/7.jpg)
Aggregations
![Page 8: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/8.jpg)
§ § § § § §
Derivatives
![Page 9: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/9.jpg)
Suggestions
![Page 10: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/10.jpg)
Elasticsearch vs RelationalDB
Node 1
index = books
index = blogs
RDBMS
database = books
database = blogs
type = travel
type = cooking
type = travel
type = cooking
table= travel
table= cooking
table = travel
table = cooking
![Page 11: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/11.jpg)
Scaling & Sharding
Node 1
primary shard 1
primary shard 2
primary shard 3
primary shard 4
primary shard 5
![Page 12: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/12.jpg)
Scaling & Sharding contd..
Node 1
Node 2
Node 3
primaryshard 1
primary shard 2
replica shard 3
primaryshard 3
primaryshard 4
replica shard 5
replica shard 2
primary shard 5
replica shard 4
replica shard 1
![Page 13: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/13.jpg)
How to use Elasticsearch?
Application
Database Elasticsearch
![Page 14: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/14.jpg)
http://www.elasticsearch.org/download
Installation
![Page 15: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/15.jpg)
CRUD Operations
![Page 16: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/16.jpg)
Create
curl –XPUT localhost:9200/books/travel/1 –d ‘ { ”title": "Journey's of a Life Time - 500 Best Trips", "author": "National Geographic", "releaseDate": "2013-10-25T19:00" }
![Page 17: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/17.jpg)
Get
![Page 18: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/18.jpg)
Mapping
![Page 19: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/19.jpg)
Update
![Page 20: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/20.jpg)
Concurrency Control
Document , version 1
Document , version 2
Document , version 2
FAIL
SUCCESS
![Page 21: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/21.jpg)
Delete
![Page 22: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/22.jpg)
§
§ § § § § §
Search
![Page 23: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/23.jpg)
Search
![Page 24: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/24.jpg)
Query Search & Pagination
![Page 25: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/25.jpg)
Search
![Page 26: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/26.jpg)
Analyzers
Character Filtering
Tokenizer
Lowercase
Stopwords
Synonyms
“I Love to Travel & Work.”
Analyzed Data
“I Love to Travel and Work”
“I”, “Love”, “to”, “Travel”, “and”, “Work”
“i”, “love”, “to”, “travel”, “and”, “work”
“i”, “love”, “travel”, “work”
“i”, “like”, “travel”, “work”
![Page 27: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/27.jpg)
Inverted Index
Terms Documents Frequencies
i id1 id1 -> 1
like id1, id3 id1 -> 1, id3 -> 5
travel id1, id2 id1 -> 3, id2 -> 2
work id2, id3, id5 id2 -> 3, id3 -> 1, id5 -> 2
![Page 28: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/28.jpg)
Inverted Index An inverted index is a data structure that maps a word to a document.
![Page 29: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/29.jpg)
Full Text Search "author": { "type": "string” “index”: “analyzed”, “analyzer”: “french” }
Exact String Search "author": { "type": "string” “index”: “not_analyzed” }
Not Searchable "author": { "type": "string” “index”: “no” } }
Analyzers available in Elasticsearch
![Page 30: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/30.jpg)
§ § § §
Types of Queries
![Page 31: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/31.jpg)
Request with Query & Filters
![Page 32: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/32.jpg)
Filters vs Queries exact match full text search
binary yes/no relevance scoring
fast relatively slow
cacheable not cacheable
![Page 33: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/33.jpg)
§
§
Aggregations
![Page 34: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/34.jpg)
Handling Typos with N-Grams
Uni-gram = e, l, a, s, t, i, c
Bi-gram = el, la, as, st, ti, ic
Tri-gram = ela, las, ast, sti, tic
![Page 35: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/35.jpg)
Handling Typos with N-Grams
![Page 36: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/36.jpg)
Autocomplete with Edge Grams
Search Results
travel
training
transfer
![Page 37: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/37.jpg)
§ § § § §
§ § §
§ §
Battle Tested Lessons
![Page 38: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/38.jpg)
§ § § § § § § §
Battle Tested Lessons contd..
![Page 39: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/39.jpg)
Let’s Connect
![Page 40: Introduction to Elasticsearch](https://reader030.vdocuments.net/reader030/viewer/2022032422/55a9ec071a28ab2e638b47f2/html5/thumbnails/40.jpg)