SlideShare a Scribd company logo
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Elasticsearch and MIT Sloan Data Analytics Hackathon
Cambridge, MA - May 10, 2014
Elasticsearch
Quick Introduction
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
About Me
• Igor Motov
• Developer at Elasticsearch Inc.
• Github: imotov
• Twitter: @imotov
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
About Elasticsearch Inc.
• Founded in 2012
By the people behind the Elasticsearch and Apache Lucene
http://www.elasticsearch.com
Headquarters: Amsterdam and Los Altos, CA
• We provide
Training (public & onsite)
Development support
Production support subscription (SLA)
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
About Elasticsearch
• Real time search and analytics engine
JSON-oriented, Apache Lucene-based
• Automatic Schema Detection
Enables control of it when needed
• Distributed
Scales Up+Out, Highly Available
• Multi-tenancy
Dynamically create/delete indices
• API centric
Most functionality is exposed through an API
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Basic Concepts
• Cluster
a group of nodes sharing the same set of indices
• Node
a running Elasticsearch instance (typically JVM process)
• Index
a set of documents of possibly different types
stored in one or more shards
• Type
a set of documents in an index that share the same schema
• Shard
a Lucene index, allocated on one of the nodes
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Basic Concepts - Document
• JSON Object
!
!
!
!
!
!
• Identified by index/type/id
{
"rank": 21,
"city": "Boston",
"state": "Massachusetts",
"population2010": 617594,
"land_area": 48.277,
"density": 12793,
"ansi": 619463,
"location": {
"lat": 42.332,
"lon": 71.0202
},
"abbreviation": "MA"
}
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Downloading elasticsearch
• http://www.elasticsearch.org/download/
Windows Everything else
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
What’s in a distribution?
.
├── LICENSE.txt
├── NOTICE.txt
├── README.textile
├── bin
│   ├── elasticsearch
│   ├── elasticsearch.in.sh
│   └── plugin
├── config
│   ├── elasticsearch.yml
│   └── logging.yml
├── data
│   └── elasticsearch
├── lib
│   ├── elasticsearch-x.y.z.jar
│   ├── ...
│   └──
└── logs
   ├── elasticsearch.log
   └── elasticsearch_index_search_slowlog.log
executable scripts
node config files
data storage
libs
log files
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Configuration (multicast)
• Configuration config/elasticsearch.yml
cluster.name: "elasticsearch-imotov"
unique	

name
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Configuration (stand-alone)
• Configuration config/elasticsearch.yml
cluster.name: "elasticsearch-imotov"
network.host: "127.0.0.1"
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["localhost:9300", "localhost:9301", “localhost:9302"]
unique	

name
listen only	

on localhost
disable	

multicast
search for other	

nodes on localhost
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Starting elasticsearch
• Foreground
!
!
• Background
$ bin/elasticsearch
$ bin/elasticsearch -d
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Is it running?
{
"status" : 200,
"name" : "Kamal",
"version" : {
"number" : "1.1.1",
"build_hash" : "f1585f096d3f3985e73456debdc1a0745f512bbc",
"build_timestamp" : "2014-04-16T14:27:12Z",
"build_snapshot" : false,
"lucene_version" : "4.7"
},
"tagline" : "You Know, for Search"
}
$ curl -XGET "http://localhost:9200/?pretty"
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Communicating with Elasticsearch
• REST API
Curl
Ruby
Python
PHP
Perl
JavaScript (community supported)
• Binary Protocol
Java
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Pick your client
• Java
included in distribution
• Ruby, PHP, Perl, Python
http://www.elasticsearch.org/blog/unleash-the-clients-ruby-
python-php-perl/
• Everything Else
http://www.elasticsearch.org/guide/clients/
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Indexing a document
$ curl -XPUT "http://localhost:9200/test-data/cities/21" -d '{
"rank": 21,
"city": "Boston",
"state": "Massachusetts",
"population2010": 617594,
"land_area": 48.277,
"density": 12793,
"ansi": 619463,
"location": {
"lat": 42.332,
"lon": 71.0202
},
"abbreviation": "MA"
}'
{"ok":true,"_index":"test-data","_type":"cities","_id":"21","_version":1}
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Getting a document
{
"_index" : "test-data",
"_type" : "cities",
"_id" : "21",
"_version" : 1,
"exists" : true, "_source" : {
"rank": 21,
"city": "Boston",
"state": "Massachusetts",
"population2010": 617594,
"land_area": 48.277,
"density": 12793,
"ansi": 619463,
"location": {
"lat": 42.332,
"lon": 71.0202
},
"abbreviation": "MA"
}
}
$ curl -XGET "http://localhost:9200/test-data/cities/21?pretty"
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Updating a document
$ curl -XPUT "http://localhost:9200/test-data/cities/21" -d '{
"rank": 21,
"city": "Boston",
"state": "Massachusetts",
"population2010": 617594,
"population2012": 636479,
"land_area": 48.277,
"density": 12793,
"ansi": 619463,
"location": {
"lat": 42.332,
"lon": 71.0202
},
"abbreviation": "MA"
}'
{"ok":true,"_index":"test-data","_type":"cities","_id":"21","_version":2}
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Searching
$ curl -XGET 'http://localhost:9200/test-data/cities/_search?pretty' -d '{
"query": {
"match": {
"city": "Boston"
}
}
}'
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Searching
{
"took" : 5,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"failed" : 0
},
"hits" : {
"total" : 1,
"max_score" : 6.1357985,
"hits" : [ {
"_index" : "test-data",
"_type" : "cities",
"_id" : "21",
"_score" : 6.1357985, "_source" : {"rank":"21","city":"Boston",...}
} ]
}
}
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Range Queries
$ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{
"query": {
"range": {
"population2012": {
"from": 500000,
"to": 1000000
}
}
}
}'
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Boolean Queries
$ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{
"query": {
"bool": {
"should": [{
"match": { "state": "Texas"}
}, {
"match": { "state": "California"}
}],
"must": {
"range": {
"population2012": {
"from": 500000,
"to": 1000000
}
}
},
"minimum_should_match": 1
}
}
}'
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
MatchAll Query
$ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{
"query": {
"match_all": { }
}
}'
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Sorting and Paging
$ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{
"query": {
"match_all": { }
},
"sort": [
{"state": {"order": "asc"}},
{"population2010": {"order": "desc"}}
],
"from": 0,
"size": 20
}'
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Analysis
• By default string are
- Divided into words (tokens)
- All tokens are converted to lower-case
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Analysis Example
• “Elasticsearch is a powerful open source search
and analytics engine.”
1. elasticsearch
2. is
3. a
4. powerful
5. open
6. source
7. search
8. and
9. analytics
10. engine
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Customizing the mapping
curl -XPUT 'http://localhost:9200/my_index/' -d '{
"settings": {
"index": {
"number_of_shards": 1,
"number_of_replicas": 0
}
},
"mappings": {
"my_type": {
"properties": {
"description": { "type": "string" },
"sku": { "type": "string", "index": "not_analyzed" },
"count": { "type": "integer" },
"price": { "type": "float" },
"location": { "type": "geo_point" }
}
}
}
}'
exact	

match
analyzed	

text
geo	

location
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Elasticsearch Reference
• http://www.elasticsearch.org/guide/
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Ideas for hackathon
• Explore data
wikipedia
twitter
enron emails
• Play with Kibana
• Build Elasticsearch plugins
• Get prizes
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
Elasticsearch Meetup
http://www.meetup.com/Elasticsearch-Boston/
Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited
We are hiring
http://www.elasticsearch.com/about/jobs/

More Related Content

PDF
Hopper Elasticsearch Hackathon
PPTX
Example-driven Web API Specification Discovery
PDF
Interactive Visualization With Bokeh (SF Python Meetup)
PDF
Bokeh Tutorial - PyData @ Strata San Jose 2015
PPTX
Building Next-Generation Web APIs with JSON-LD and Hydra
KEY
JSON-LD: JSON for Linked Data
PDF
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
PDF
Fencyt
Hopper Elasticsearch Hackathon
Example-driven Web API Specification Discovery
Interactive Visualization With Bokeh (SF Python Meetup)
Bokeh Tutorial - PyData @ Strata San Jose 2015
Building Next-Generation Web APIs with JSON-LD and Hydra
JSON-LD: JSON for Linked Data
Full-Text Search Explained - Philipp Krenn - Codemotion Rome 2017
Fencyt

Viewers also liked (20)

DOC
Case study questions_6
PDF
Lets talk about user centered design
PPTX
week4-measuring data
PPTX
Higiene y seguridad industrial
PPT
Camtasia getting started guide
PPTX
áLbum fotográfico EAD
PDF
Young marketers 3 the final round + nguyễn thanh nhàn
PPTX
Victimas del desplazamiento forzado
PDF
European union: a quick explaination
PPTX
Influence of Mobile Money on Transactions in Africa; Focus East Africa
PPTX
Week3 intro to computer (history of comps, comps in everyday life)
PPTX
Actividad 1
PDF
vida saludable
PPTX
Challenges of Monetary Policy Communication
PPTX
Acción comunicativa no violenta
PPT
Windows Phone 8 - What's new
PPTX
Compuestos que dañan el organismo
PPTX
Proceso de paz
DOC
Cônicas e parábolas phdnet
PDF
L5 assignment: How to integrate the modern 70 year-old into a connected society.
Case study questions_6
Lets talk about user centered design
week4-measuring data
Higiene y seguridad industrial
Camtasia getting started guide
áLbum fotográfico EAD
Young marketers 3 the final round + nguyễn thanh nhàn
Victimas del desplazamiento forzado
European union: a quick explaination
Influence of Mobile Money on Transactions in Africa; Focus East Africa
Week3 intro to computer (history of comps, comps in everyday life)
Actividad 1
vida saludable
Challenges of Monetary Policy Communication
Acción comunicativa no violenta
Windows Phone 8 - What's new
Compuestos que dañan el organismo
Proceso de paz
Cônicas e parábolas phdnet
L5 assignment: How to integrate the modern 70 year-old into a connected society.
Ad

Similar to Elasticsearch Quick Introduction (20)

PPTX
ElasticSearch - Introduction to Aggregations
PDF
Philipp Krenn | Make Your Data FABulous | Codemotion Madrid 2018
PDF
Philipp Krenn "Make Your Data FABulous"
PDF
Hypermedia APIs and HATEOAS
PPTX
Lies you have been told about REST
PPTX
Intro to Big Data - Orlando Code Camp 2014
PPTX
Elasticsearch
PDF
Real-time search in Drupal with Elasticsearch @Moldcamp
PPTX
Understanding N1QL Optimizer to Tune Queries
PDF
Anwendungsfaelle für Elasticsearch
PDF
Ams adapters
PDF
Starting out with MongoDB
PDF
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
PPTX
Deep dive into N1QL: SQL for JSON: Internals and power features.
PDF
Montreal Elasticsearch Meetup
PPT
Advanced Json
PPTX
Web of things introduction
PDF
Elasticsearch intro output
KEY
Elasticsearch & "PeopleSearch"
PPTX
Soaring through the Clouds - Oracle Fusion Middleware Partner Forum 2016
ElasticSearch - Introduction to Aggregations
Philipp Krenn | Make Your Data FABulous | Codemotion Madrid 2018
Philipp Krenn "Make Your Data FABulous"
Hypermedia APIs and HATEOAS
Lies you have been told about REST
Intro to Big Data - Orlando Code Camp 2014
Elasticsearch
Real-time search in Drupal with Elasticsearch @Moldcamp
Understanding N1QL Optimizer to Tune Queries
Anwendungsfaelle für Elasticsearch
Ams adapters
Starting out with MongoDB
Java/Scala Lab: Борис Трофимов - Обжигающая Big Data.
Deep dive into N1QL: SQL for JSON: Internals and power features.
Montreal Elasticsearch Meetup
Advanced Json
Web of things introduction
Elasticsearch intro output
Elasticsearch & "PeopleSearch"
Soaring through the Clouds - Oracle Fusion Middleware Partner Forum 2016
Ad

Recently uploaded (20)

PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Cost to Outsource Software Development in 2025
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
AutoCAD Professional Crack 2025 With License Key
PDF
CCleaner Pro 6.38.11537 Crack Final Latest Version 2025
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PPTX
assetexplorer- product-overview - presentation
PDF
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
PDF
Website Design Services for Small Businesses.pdf
PPTX
history of c programming in notes for students .pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
Nekopoi APK 2025 free lastest update
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
Design an Analysis of Algorithms I-SECS-1021-03
Cost to Outsource Software Development in 2025
Oracle Fusion HCM Cloud Demo for Beginners
AutoCAD Professional Crack 2025 With License Key
CCleaner Pro 6.38.11537 Crack Final Latest Version 2025
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Wondershare Filmora 15 Crack With Activation Key [2025
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
assetexplorer- product-overview - presentation
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
Website Design Services for Small Businesses.pdf
history of c programming in notes for students .pptx
CHAPTER 2 - PM Management and IT Context
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
Designing Intelligence for the Shop Floor.pdf
Digital Systems & Binary Numbers (comprehensive )
Nekopoi APK 2025 free lastest update

Elasticsearch Quick Introduction

  • 1. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Elasticsearch and MIT Sloan Data Analytics Hackathon Cambridge, MA - May 10, 2014 Elasticsearch Quick Introduction
  • 2. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited About Me • Igor Motov • Developer at Elasticsearch Inc. • Github: imotov • Twitter: @imotov
  • 3. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited About Elasticsearch Inc. • Founded in 2012 By the people behind the Elasticsearch and Apache Lucene http://www.elasticsearch.com Headquarters: Amsterdam and Los Altos, CA • We provide Training (public & onsite) Development support Production support subscription (SLA)
  • 4. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited About Elasticsearch • Real time search and analytics engine JSON-oriented, Apache Lucene-based • Automatic Schema Detection Enables control of it when needed • Distributed Scales Up+Out, Highly Available • Multi-tenancy Dynamically create/delete indices • API centric Most functionality is exposed through an API
  • 5. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Basic Concepts • Cluster a group of nodes sharing the same set of indices • Node a running Elasticsearch instance (typically JVM process) • Index a set of documents of possibly different types stored in one or more shards • Type a set of documents in an index that share the same schema • Shard a Lucene index, allocated on one of the nodes
  • 6. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Basic Concepts - Document • JSON Object ! ! ! ! ! ! • Identified by index/type/id { "rank": 21, "city": "Boston", "state": "Massachusetts", "population2010": 617594, "land_area": 48.277, "density": 12793, "ansi": 619463, "location": { "lat": 42.332, "lon": 71.0202 }, "abbreviation": "MA" }
  • 7. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Downloading elasticsearch • http://www.elasticsearch.org/download/ Windows Everything else
  • 8. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited What’s in a distribution? . ├── LICENSE.txt ├── NOTICE.txt ├── README.textile ├── bin │   ├── elasticsearch │   ├── elasticsearch.in.sh │   └── plugin ├── config │   ├── elasticsearch.yml │   └── logging.yml ├── data │   └── elasticsearch ├── lib │   ├── elasticsearch-x.y.z.jar │   ├── ... │   └── └── logs    ├── elasticsearch.log    └── elasticsearch_index_search_slowlog.log executable scripts node config files data storage libs log files
  • 9. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Configuration (multicast) • Configuration config/elasticsearch.yml cluster.name: "elasticsearch-imotov" unique name
  • 10. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Configuration (stand-alone) • Configuration config/elasticsearch.yml cluster.name: "elasticsearch-imotov" network.host: "127.0.0.1" discovery.zen.ping.multicast.enabled: false discovery.zen.ping.unicast.hosts: ["localhost:9300", "localhost:9301", “localhost:9302"] unique name listen only on localhost disable multicast search for other nodes on localhost
  • 11. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Starting elasticsearch • Foreground ! ! • Background $ bin/elasticsearch $ bin/elasticsearch -d
  • 12. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Is it running? { "status" : 200, "name" : "Kamal", "version" : { "number" : "1.1.1", "build_hash" : "f1585f096d3f3985e73456debdc1a0745f512bbc", "build_timestamp" : "2014-04-16T14:27:12Z", "build_snapshot" : false, "lucene_version" : "4.7" }, "tagline" : "You Know, for Search" } $ curl -XGET "http://localhost:9200/?pretty"
  • 13. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Communicating with Elasticsearch • REST API Curl Ruby Python PHP Perl JavaScript (community supported) • Binary Protocol Java
  • 14. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Pick your client • Java included in distribution • Ruby, PHP, Perl, Python http://www.elasticsearch.org/blog/unleash-the-clients-ruby- python-php-perl/ • Everything Else http://www.elasticsearch.org/guide/clients/
  • 15. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Indexing a document $ curl -XPUT "http://localhost:9200/test-data/cities/21" -d '{ "rank": 21, "city": "Boston", "state": "Massachusetts", "population2010": 617594, "land_area": 48.277, "density": 12793, "ansi": 619463, "location": { "lat": 42.332, "lon": 71.0202 }, "abbreviation": "MA" }' {"ok":true,"_index":"test-data","_type":"cities","_id":"21","_version":1}
  • 16. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Getting a document { "_index" : "test-data", "_type" : "cities", "_id" : "21", "_version" : 1, "exists" : true, "_source" : { "rank": 21, "city": "Boston", "state": "Massachusetts", "population2010": 617594, "land_area": 48.277, "density": 12793, "ansi": 619463, "location": { "lat": 42.332, "lon": 71.0202 }, "abbreviation": "MA" } } $ curl -XGET "http://localhost:9200/test-data/cities/21?pretty"
  • 17. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Updating a document $ curl -XPUT "http://localhost:9200/test-data/cities/21" -d '{ "rank": 21, "city": "Boston", "state": "Massachusetts", "population2010": 617594, "population2012": 636479, "land_area": 48.277, "density": 12793, "ansi": 619463, "location": { "lat": 42.332, "lon": 71.0202 }, "abbreviation": "MA" }' {"ok":true,"_index":"test-data","_type":"cities","_id":"21","_version":2}
  • 18. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Searching $ curl -XGET 'http://localhost:9200/test-data/cities/_search?pretty' -d '{ "query": { "match": { "city": "Boston" } } }'
  • 19. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Searching { "took" : 5, "timed_out" : false, "_shards" : { "total" : 1, "successful" : 1, "failed" : 0 }, "hits" : { "total" : 1, "max_score" : 6.1357985, "hits" : [ { "_index" : "test-data", "_type" : "cities", "_id" : "21", "_score" : 6.1357985, "_source" : {"rank":"21","city":"Boston",...} } ] } }
  • 20. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Range Queries $ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{ "query": { "range": { "population2012": { "from": 500000, "to": 1000000 } } } }'
  • 21. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Boolean Queries $ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{ "query": { "bool": { "should": [{ "match": { "state": "Texas"} }, { "match": { "state": "California"} }], "must": { "range": { "population2012": { "from": 500000, "to": 1000000 } } }, "minimum_should_match": 1 } } }'
  • 22. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited MatchAll Query $ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{ "query": { "match_all": { } } }'
  • 23. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Sorting and Paging $ curl -XGET "http://localhost:9200/test-data/cities/_search?pretty" -d '{ "query": { "match_all": { } }, "sort": [ {"state": {"order": "asc"}}, {"population2010": {"order": "desc"}} ], "from": 0, "size": 20 }'
  • 24. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Analysis • By default string are - Divided into words (tokens) - All tokens are converted to lower-case
  • 25. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Analysis Example • “Elasticsearch is a powerful open source search and analytics engine.” 1. elasticsearch 2. is 3. a 4. powerful 5. open 6. source 7. search 8. and 9. analytics 10. engine
  • 26. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Customizing the mapping curl -XPUT 'http://localhost:9200/my_index/' -d '{ "settings": { "index": { "number_of_shards": 1, "number_of_replicas": 0 } }, "mappings": { "my_type": { "properties": { "description": { "type": "string" }, "sku": { "type": "string", "index": "not_analyzed" }, "count": { "type": "integer" }, "price": { "type": "float" }, "location": { "type": "geo_point" } } } } }' exact match analyzed text geo location
  • 27. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Elasticsearch Reference • http://www.elasticsearch.org/guide/
  • 28. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Ideas for hackathon • Explore data wikipedia twitter enron emails • Play with Kibana • Build Elasticsearch plugins • Get prizes
  • 29. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited Elasticsearch Meetup http://www.meetup.com/Elasticsearch-Boston/
  • 30. Copyright Elasticsearch 2014. Copying, publishing and/or distributing without written permission is strictly prohibited We are hiring http://www.elasticsearch.com/about/jobs/