SlideShare a Scribd company logo
Introduction elasticsearch
@somkiat
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
realtime, search
and analytics
engine
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Lucene
Distributed
Scalability
open-source
documentation
JSON
API
RESTFul
document store
High-Availability
JAVA
Plug-ins
History
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
First version 0.4 in Feb 2010
Rewrite from Compass project
Add scalability
Created by Shay Banon
Current version 1.7.1
Who use ?
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
https://www.elastic.co/use-cases
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
• Search repositories, users, issues, pull request
• Search sourcecode 130 พันล้านบรรทัด
• Track alerts, events และ logs
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
• ใ๡้ Full text seach + geolocation
• ใ๡้ feature More-like-this ในการหาคําถาม และ คําตอบ
Clients
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
• Java
• PHP
• Ruby
• Python
• JavaScript
• Go
• Scala
• .Net
• Clojure
• Erlang
• NodeJS • R
http://www.elasticsearch.org/guide/en/elasticsearch/client/community/current/clients.html
https://github.com/github-sprint3r/
elasticsearch_workshop
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Let’s start
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Installation …
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
elasticsearch
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
• real-time
• distributed
• search
• analytics
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
mapping
analysis query dsl
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
query dsl
• flexible
• powerful
• query language
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
queries
• relevance
filters
• boolean yes/no
• full text • exact values
• not cached • cached
• slower • faster
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Filter first
query remaining documents
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { . . . }

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { “match” : { “title” : “search” } }

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { “match_all” : { } }

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“filtered” : {
“query” : { … },
“filter” : { … }
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“filtered” : {
“query” : { “match” : { “title” : “search” } },
“filter” : { … }
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“filtered” : {
“query” : { “match” : { “title” : “search” } },
“filter” : { “term” : { “status” : “active” } }
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“filtered” : {
“query” : { “match_all” : { } },
“filter” : { “term” : { “status” : “active” } }
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“filtered” : {
“query” : { “match_all” : { } },
“filter” : { “term” : { “status” : “active” } }
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
How data is indexed ?
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
{
"title": "Quick brown rabbits",
"content": "Brown rabbits are commonly seen"
}
{
"title": "Keeping pets healthy",
"content": "My quick brown fox eats rabbits on 

a regular basis"
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where content like
“%brown%fox%”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Analysis
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
{
"title": "Quick brown rabbits",
"content": "Brown rabbits are commonly seen"
}
{
"title": "Keeping pets healthy",
"content": "My quick brown fox eats rabbits on 

a regular basis"
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
{
"title": [quick,brown,rabbits],
"content": [brown,rabbits,are,commonly,seen]
}
{
"title": [keeping,pets,healthy],
"content": [my,quick,brown,fox,eats,rabbits,on 

,a,regular,basis]
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
field: content
Term Document 1 Document 2
a
are
basis
brown
commonly
eats
fox
my
on
quick
rabbits
regular
seen
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
field: content
Term Document 1 Document 2
a
are
basis
brown
commonly
eats
fox
my
on
quick
rabbits
regular
seen
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Inverted indexed
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where field = “value”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where field contains “value”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where field contains “value”
term filter
“term” : {
“title” : “brown”
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“filtered” : {
“query” : { “match_all” : { } },
“filter” : { “term” : { “title” : “brown” } }
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
field: title
Term Document 1 Document 2
brown
healthy
keeping
pets
quick
rabbits
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
field: title
Term Document 1 Document 2
brown
healthy
keeping
pets
quick
rabbits
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Result
bitset[ 1, 0 ]
cache as “title:brown”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where field IN [“value1”, … ]
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
terms filter
“terms” : {
“title” : [“quick”, “pets”]
}
where field IN [“value1”, … ]
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
field: title
Term Document 1 Document 2
brown
healthy
keeping
pets
quick
rabbits
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Result
bitset[ 1, 1 ]
cache as “title:quick title:pets”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where field >= “value 1”
and field < “value 2”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
where field >= “value 1”
and field < “value 2”
range filter
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
“range” : {
“content” : {
“gte” : “a”,
“lt” : “m”
}
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
field: content
Term Document 1 Document 2
a
are
basis
brown
commonly
eats
fox
my
on
quick
rabbits
regular
seen
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Result
bitset[ 1, 1 ]
cache as “content:[a TO m]”
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
AND … OR … NOT
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
AND … OR … NOT
bool filter
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
“bool” : {
“must” : [ <filters> ],
“should” : [ <filters> ],
“must_not” : [ <filters> ],
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
how relevant is this term ?
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
how relevant is this term ?
term query
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“term” : {
“title” : “brown”
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
how relevant is this document ?
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Relevant score
Term in this document
more is better
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Relevant score
Term in all documents
less is better
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Relevant score
How long of this document ?
shorter is better
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
AND … OR … NOT
bool query
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
“bool” : {
“must” : [ <filters> ], #AND
“should” : [ <filters> ], ???
“must_not” : [ <filters> ], #NOT
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
“bool” : {
“must” : [ <filters> ], #AND
“should” : [ <filters> ], ???
“must_not” : [ <filters> ], #NOT
“minimum_should_match” : ?
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
bool filter -> True | False
bool query -> _score
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
match query
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
match query
high level query
understand mapping and analysis
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
match query
1. analyze query string
2. rewrite query
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
{ “match” : { “title” : “QUICK!” } }
title:quick
{ “term” : { “title” : “quick” } }
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
{ “match” : { “title” : “QUICK FOX!” } }
title:quick OR title:fox
{ “bool” : {
“should” : [
{ “term” : { “title” : “quick” } },
{ “term” : { “title” : “fox” } }
]
}}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Need all words must match ?
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“term” : {
“title” : “QUICK FOX!”
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“term” : {
“title” : {
“query” : “QUICK FOX!”,
“operator” : “and”
}
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{
"query": {
"bool": {
"must": [
{ "term": { "title" : "quick" } },
{ "term": { "title" : "fox" } }
]
}
}
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“match_pharse” : {
“title” : {
“query” : “QUICK BROWN”
}
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“match_pharse” : {
“title” : {
“query” : “QUICK RABBITS”
}
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“match_pharse” : {
“title” : {
“query” : “BROWN QUICK”
}
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Limit long tail ?
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{

“query” : { 

“term” : {
“title” : {
“query” : “QUICK BROWN FOX!”,
“minimum_should_match” : “75”%
}
}
}

}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
GET /_search
{
"query": {
"bool": {
"should": [
{ "term": { "title" : "quick" } },
{ "term": { "title" : "brown" } },
{ "term": { "title" : "fox" } }
],
“minimum_should_match” : 2
}
}
}
SPRINT3R
Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
Aggregation API
analytic your data
explore your data

More Related Content

Viewers also liked

Ana Mallen
Ana MallenAna Mallen
Ana Mallen
torie
 
Hamilton All About Me
Hamilton All About MeHamilton All About Me
Hamilton All About Me
jaspang
 
Tears Of A Woman
Tears Of A WomanTears Of A Woman
Tears Of A Woman
lycuong
 
PROEXPOSURE World Food Day
PROEXPOSURE World Food DayPROEXPOSURE World Food Day
PROEXPOSURE World Food Day
PROEXPOSURE CIC
 
Pptproject flipbook nmm
Pptproject flipbook nmmPptproject flipbook nmm
Pptproject flipbook nmm
jaspang
 

Viewers also liked (20)

Software Development Trends 2017 at IMC
Software Development Trends 2017 at IMCSoftware Development Trends 2017 at IMC
Software Development Trends 2017 at IMC
 
Ana Mallen
Ana MallenAna Mallen
Ana Mallen
 
Hamilton All About Me
Hamilton All About MeHamilton All About Me
Hamilton All About Me
 
Microsoft - CRM-системы как инструмент деловой деятельности и государственног...
Microsoft - CRM-системы как инструмент деловой деятельности и государственног...Microsoft - CRM-системы как инструмент деловой деятельности и государственног...
Microsoft - CRM-системы как инструмент деловой деятельности и государственног...
 
Отечественная и зарубежная законодательная и нормативная база организации вне...
Отечественная и зарубежная законодательная и нормативная база организации вне...Отечественная и зарубежная законодательная и нормативная база организации вне...
Отечественная и зарубежная законодательная и нормативная база организации вне...
 
Global Competitiveness Report 2012-2013
Global Competitiveness Report 2012-2013Global Competitiveness Report 2012-2013
Global Competitiveness Report 2012-2013
 
jMeter101
jMeter101jMeter101
jMeter101
 
Stichting Lodewijk de Raet door een multilevelbril
Stichting Lodewijk de Raet door een multilevelbrilStichting Lodewijk de Raet door een multilevelbril
Stichting Lodewijk de Raet door een multilevelbril
 
Jack Johnson - The Boxer
Jack Johnson - The BoxerJack Johnson - The Boxer
Jack Johnson - The Boxer
 
Tears Of A Woman
Tears Of A WomanTears Of A Woman
Tears Of A Woman
 
Personalia meijs en vermeulen
Personalia meijs en vermeulenPersonalia meijs en vermeulen
Personalia meijs en vermeulen
 
Het middenveld zal politiek zijn, of het zal niet zijn
Het middenveld zal politiek zijn, of het zal niet zijnHet middenveld zal politiek zijn, of het zal niet zijn
Het middenveld zal politiek zijn, of het zal niet zijn
 
Vlamigrant In 9 Verhalen (Ingekort)
Vlamigrant In 9 Verhalen (Ingekort)Vlamigrant In 9 Verhalen (Ingekort)
Vlamigrant In 9 Verhalen (Ingekort)
 
Introductie positie in de geschiedenis
Introductie positie in de geschiedenisIntroductie positie in de geschiedenis
Introductie positie in de geschiedenis
 
You Tube Optimisation
You Tube OptimisationYou Tube Optimisation
You Tube Optimisation
 
Presentatie Alicja Gescinska
Presentatie Alicja GescinskaPresentatie Alicja Gescinska
Presentatie Alicja Gescinska
 
Leilanis
LeilanisLeilanis
Leilanis
 
Thewiseoldman
ThewiseoldmanThewiseoldman
Thewiseoldman
 
PROEXPOSURE World Food Day
PROEXPOSURE World Food DayPROEXPOSURE World Food Day
PROEXPOSURE World Food Day
 
Pptproject flipbook nmm
Pptproject flipbook nmmPptproject flipbook nmm
Pptproject flipbook nmm
 

Similar to Introduction to elasticsearch fast lane

Similar to Introduction to elasticsearch fast lane (18)

TPSE2014 :: Test Driven Development
TPSE2014 :: Test Driven DevelopmentTPSE2014 :: Test Driven Development
TPSE2014 :: Test Driven Development
 
Php meetup continuous delivery with PHP
Php meetup continuous delivery with PHPPhp meetup continuous delivery with PHP
Php meetup continuous delivery with PHP
 
Sprint3r tpse2014-atdd-with-robot-framework
Sprint3r tpse2014-atdd-with-robot-frameworkSprint3r tpse2014-atdd-with-robot-framework
Sprint3r tpse2014-atdd-with-robot-framework
 
Human-in-the-Loop for Machine Learning (AIM358-R1) - AWS re:Invent 2018
Human-in-the-Loop for Machine Learning (AIM358-R1) - AWS re:Invent 2018Human-in-the-Loop for Machine Learning (AIM358-R1) - AWS re:Invent 2018
Human-in-the-Loop for Machine Learning (AIM358-R1) - AWS re:Invent 2018
 
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
[AWS Start-up ゼミ / DevDay 編] よくある課題を一気に解説! 御社の技術レベルがアップする 2018 秋期講習
 
ABD338_MirrorWeb - Powering Large-scale, Full-text Search for the UK Governme...
ABD338_MirrorWeb - Powering Large-scale, Full-text Search for the UK Governme...ABD338_MirrorWeb - Powering Large-scale, Full-text Search for the UK Governme...
ABD338_MirrorWeb - Powering Large-scale, Full-text Search for the UK Governme...
 
Search Your DynamoDB Data with Amazon Elasticsearch Service (ANT302) - AWS re...
Search Your DynamoDB Data with Amazon Elasticsearch Service (ANT302) - AWS re...Search Your DynamoDB Data with Amazon Elasticsearch Service (ANT302) - AWS re...
Search Your DynamoDB Data with Amazon Elasticsearch Service (ANT302) - AWS re...
 
Cool bonsai cool - an introduction to ElasticSearch
Cool bonsai cool - an introduction to ElasticSearchCool bonsai cool - an introduction to ElasticSearch
Cool bonsai cool - an introduction to ElasticSearch
 
ゲーム開発で活用するAWSの機械学習サービスの紹介
ゲーム開発で活用するAWSの機械学習サービスの紹介ゲーム開発で活用するAWSの機械学習サービスの紹介
ゲーム開発で活用するAWSの機械学習サービスの紹介
 
Advanced Technical SEO in 2020 - Data Science
Advanced Technical SEO in 2020 - Data ScienceAdvanced Technical SEO in 2020 - Data Science
Advanced Technical SEO in 2020 - Data Science
 
AWS 인공지능 서비스와 서버리스 서비스를 이용한 동영상 분석 서비스 구축하기 (김현수/황윤상, AWS 솔루션즈 아키텍트) :: AWS D...
AWS 인공지능 서비스와 서버리스 서비스를 이용한 동영상 분석 서비스 구축하기 (김현수/황윤상, AWS 솔루션즈 아키텍트) :: AWS D...AWS 인공지능 서비스와 서버리스 서비스를 이용한 동영상 분석 서비스 구축하기 (김현수/황윤상, AWS 솔루션즈 아키텍트) :: AWS D...
AWS 인공지능 서비스와 서버리스 서비스를 이용한 동영상 분석 서비스 구축하기 (김현수/황윤상, AWS 솔루션즈 아키텍트) :: AWS D...
 
Searching Your Data with Amazon Elasticsearch Service (ANT384) - AWS re:Inven...
Searching Your Data with Amazon Elasticsearch Service (ANT384) - AWS re:Inven...Searching Your Data with Amazon Elasticsearch Service (ANT384) - AWS re:Inven...
Searching Your Data with Amazon Elasticsearch Service (ANT384) - AWS re:Inven...
 
Understanding Graph Databases: AWS Developer Workshop at Web Summit
Understanding Graph Databases: AWS Developer Workshop at Web SummitUnderstanding Graph Databases: AWS Developer Workshop at Web Summit
Understanding Graph Databases: AWS Developer Workshop at Web Summit
 
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
Querying Data in Place with AWS Object Storage Features and Analytics Tools (...
 
Deep Learning, Demystified
Deep Learning, DemystifiedDeep Learning, Demystified
Deep Learning, Demystified
 
Deep Learning Demystified - A (Mostly) Effortless Introduction: AWS Developer...
Deep Learning Demystified - A (Mostly) Effortless Introduction: AWS Developer...Deep Learning Demystified - A (Mostly) Effortless Introduction: AWS Developer...
Deep Learning Demystified - A (Mostly) Effortless Introduction: AWS Developer...
 
AWS CodeStar 및 Cloud9을 통한 서버리스(Serverless) 앱 개발 길잡이 - 윤석찬 (AWS 테크에반젤리스트)
AWS CodeStar 및 Cloud9을 통한 서버리스(Serverless) 앱 개발 길잡이 - 윤석찬 (AWS 테크에반젤리스트)AWS CodeStar 및 Cloud9을 통한 서버리스(Serverless) 앱 개발 길잡이 - 윤석찬 (AWS 테크에반젤리스트)
AWS CodeStar 및 Cloud9을 통한 서버리스(Serverless) 앱 개발 길잡이 - 윤석찬 (AWS 테크에반젤리스트)
 
[NEW LAUNCH!] Extract Insights from Millions of Documents with Amazon Textrac...
[NEW LAUNCH!] Extract Insights from Millions of Documents with Amazon Textrac...[NEW LAUNCH!] Extract Insights from Millions of Documents with Amazon Textrac...
[NEW LAUNCH!] Extract Insights from Millions of Documents with Amazon Textrac...
 

More from Somkiat Puisungnoen

More from Somkiat Puisungnoen (20)

Next of Java 2022
Next of Java 2022Next of Java 2022
Next of Java 2022
 
Sck spring-reactive
Sck spring-reactiveSck spring-reactive
Sck spring-reactive
 
Part 2 :: Spring Boot testing
Part 2 :: Spring Boot testingPart 2 :: Spring Boot testing
Part 2 :: Spring Boot testing
 
vTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring BootvTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring Boot
 
Lesson learned from React native and Flutter
Lesson learned from React native and FlutterLesson learned from React native and Flutter
Lesson learned from React native and Flutter
 
devops
devops devops
devops
 
Angular :: basic tuning performance
Angular :: basic tuning performanceAngular :: basic tuning performance
Angular :: basic tuning performance
 
Shared code between projects
Shared code between projectsShared code between projects
Shared code between projects
 
Distributed Tracing
Distributed Tracing Distributed Tracing
Distributed Tracing
 
Manage data of service
Manage data of serviceManage data of service
Manage data of service
 
RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2
 
Visual testing
Visual testingVisual testing
Visual testing
 
Cloud Native App
Cloud Native AppCloud Native App
Cloud Native App
 
Wordpress for Newbie
Wordpress for NewbieWordpress for Newbie
Wordpress for Newbie
 
Sck Agile in Real World
Sck Agile in Real WorldSck Agile in Real World
Sck Agile in Real World
 
Clean you code
Clean you codeClean you code
Clean you code
 
SCK Firestore at CNX
SCK Firestore at CNXSCK Firestore at CNX
SCK Firestore at CNX
 
Unhappiness Developer
Unhappiness DeveloperUnhappiness Developer
Unhappiness Developer
 
The Beauty of BAD code
The Beauty of  BAD codeThe Beauty of  BAD code
The Beauty of BAD code
 
React in the right way
React in the right wayReact in the right way
React in the right way
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 

Recently uploaded (20)

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 

Introduction to elasticsearch fast lane

  • 1. Introduction elasticsearch @somkiat SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 2. realtime, search and analytics engine SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Lucene Distributed Scalability open-source documentation JSON API RESTFul document store High-Availability JAVA Plug-ins
  • 3. History SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance First version 0.4 in Feb 2010 Rewrite from Compass project Add scalability Created by Shay Banon Current version 1.7.1
  • 4. Who use ? SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance https://www.elastic.co/use-cases
  • 5. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance • Search repositories, users, issues, pull request • Search sourcecode 130 พันล้านบรรทัด • Track alerts, events และ logs
  • 6. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance • ใ๡้ Full text seach + geolocation • ใ๡้ feature More-like-this ในการหาคําถาม และ คําตอบ
  • 7. Clients SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance • Java • PHP • Ruby • Python • JavaScript • Go • Scala • .Net • Clojure • Erlang • NodeJS • R http://www.elasticsearch.org/guide/en/elasticsearch/client/community/current/clients.html
  • 9. Let’s start SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 10. Installation … SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance
  • 11. elasticsearch SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance • real-time • distributed • search • analytics
  • 12. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance mapping analysis query dsl
  • 13. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance query dsl • flexible • powerful • query language
  • 14. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance queries • relevance filters • boolean yes/no • full text • exact values • not cached • cached • slower • faster
  • 15. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Filter first query remaining documents
  • 16. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search
  • 17. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { . . . }
 }
  • 18. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { “match” : { “title” : “search” } }
 }
  • 19. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { “match_all” : { } }
 }
  • 20. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “filtered” : { “query” : { … }, “filter” : { … } } }
 }
  • 21. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “filtered” : { “query” : { “match” : { “title” : “search” } }, “filter” : { … } } }
 }
  • 22. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “filtered” : { “query” : { “match” : { “title” : “search” } }, “filter” : { “term” : { “status” : “active” } } } }
 }
  • 23. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “filtered” : { “query” : { “match_all” : { } }, “filter” : { “term” : { “status” : “active” } } } }
 }
  • 24. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “filtered” : { “query” : { “match_all” : { } }, “filter” : { “term” : { “status” : “active” } } } }
 }
  • 25. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance How data is indexed ?
  • 26. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance { "title": "Quick brown rabbits", "content": "Brown rabbits are commonly seen" } { "title": "Keeping pets healthy", "content": "My quick brown fox eats rabbits on 
 a regular basis" }
  • 27. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where content like “%brown%fox%”
  • 28. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Analysis
  • 29. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance { "title": "Quick brown rabbits", "content": "Brown rabbits are commonly seen" } { "title": "Keeping pets healthy", "content": "My quick brown fox eats rabbits on 
 a regular basis" }
  • 30. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance { "title": [quick,brown,rabbits], "content": [brown,rabbits,are,commonly,seen] } { "title": [keeping,pets,healthy], "content": [my,quick,brown,fox,eats,rabbits,on 
 ,a,regular,basis] }
  • 31. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance field: content Term Document 1 Document 2 a are basis brown commonly eats fox my on quick rabbits regular seen
  • 32. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance field: content Term Document 1 Document 2 a are basis brown commonly eats fox my on quick rabbits regular seen
  • 33. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Inverted indexed
  • 34. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where field = “value”
  • 35. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where field contains “value”
  • 36. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where field contains “value” term filter “term” : { “title” : “brown” }
  • 37. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “filtered” : { “query” : { “match_all” : { } }, “filter” : { “term” : { “title” : “brown” } } } }
 }
  • 38. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance field: title Term Document 1 Document 2 brown healthy keeping pets quick rabbits
  • 39. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance field: title Term Document 1 Document 2 brown healthy keeping pets quick rabbits
  • 40. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Result bitset[ 1, 0 ] cache as “title:brown”
  • 41. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where field IN [“value1”, … ]
  • 42. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance terms filter “terms” : { “title” : [“quick”, “pets”] } where field IN [“value1”, … ]
  • 43. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance field: title Term Document 1 Document 2 brown healthy keeping pets quick rabbits
  • 44. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Result bitset[ 1, 1 ] cache as “title:quick title:pets”
  • 45. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where field >= “value 1” and field < “value 2”
  • 46. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance where field >= “value 1” and field < “value 2” range filter
  • 47. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance “range” : { “content” : { “gte” : “a”, “lt” : “m” } }
  • 48. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance field: content Term Document 1 Document 2 a are basis brown commonly eats fox my on quick rabbits regular seen
  • 49. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Result bitset[ 1, 1 ] cache as “content:[a TO m]”
  • 50. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance AND … OR … NOT
  • 51. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance AND … OR … NOT bool filter
  • 52. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance “bool” : { “must” : [ <filters> ], “should” : [ <filters> ], “must_not” : [ <filters> ], }
  • 53. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance how relevant is this term ?
  • 54. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance how relevant is this term ? term query
  • 55. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “term” : { “title” : “brown” } }
 }
  • 56. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance how relevant is this document ?
  • 57. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Relevant score Term in this document more is better
  • 58. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Relevant score Term in all documents less is better
  • 59. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Relevant score How long of this document ? shorter is better
  • 60. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance AND … OR … NOT bool query
  • 61. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance “bool” : { “must” : [ <filters> ], #AND “should” : [ <filters> ], ??? “must_not” : [ <filters> ], #NOT }
  • 62. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance “bool” : { “must” : [ <filters> ], #AND “should” : [ <filters> ], ??? “must_not” : [ <filters> ], #NOT “minimum_should_match” : ? }
  • 63. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance bool filter -> True | False bool query -> _score
  • 64. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance match query
  • 65. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance match query high level query understand mapping and analysis
  • 66. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance match query 1. analyze query string 2. rewrite query
  • 67. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance { “match” : { “title” : “QUICK!” } } title:quick { “term” : { “title” : “quick” } }
  • 68. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance { “match” : { “title” : “QUICK FOX!” } } title:quick OR title:fox { “bool” : { “should” : [ { “term” : { “title” : “quick” } }, { “term” : { “title” : “fox” } } ] }}
  • 69. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Need all words must match ?
  • 70. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “term” : { “title” : “QUICK FOX!” } }
 }
  • 71. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “term” : { “title” : { “query” : “QUICK FOX!”, “operator” : “and” } } }
 }
  • 72. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search { "query": { "bool": { "must": [ { "term": { "title" : "quick" } }, { "term": { "title" : "fox" } } ] } } }
  • 73. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “match_pharse” : { “title” : { “query” : “QUICK BROWN” } } }
 }
  • 74. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “match_pharse” : { “title” : { “query” : “QUICK RABBITS” } } }
 }
  • 75. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “match_pharse” : { “title” : { “query” : “BROWN QUICK” } } }
 }
  • 76. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Limit long tail ?
  • 77. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search {
 “query” : { 
 “term” : { “title” : { “query” : “QUICK BROWN FOX!”, “minimum_should_match” : “75”% } } }
 }
  • 78. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance GET /_search { "query": { "bool": { "should": [ { "term": { "title" : "quick" } }, { "term": { "title" : "brown" } }, { "term": { "title" : "fox" } } ], “minimum_should_match” : 2 } } }
  • 79. SPRINT3R Siam Chamnankit Co., Ltd., Odd-e (Thailand) Co., Ltd. and Alliance Aggregation API analytic your data explore your data