to
Group Of Nodes
Instance Of ES
Can approximate a database
Can simulate a table
Like a row
Auto balanced
$ curl -XPUT 'http://localhost:9200/twitter/' -d '{
"settings" : {
"index" : {
"number_of_shards" : 3,
"number_of_replicas" : 2
}
}
}'
Also configurable for perf
$ cur -XPOST 'http://localhost:9200/store/order?routing=user123' -d '
{
"productName":"sample",
"customerID":"user123"
}'
Synchronous update scheme
Async configurable
Extremely robust features
$ cur -XPOST 'http://localhost:9200/store/order' -d '
{
"items": ["foo", "bar", "baz"],
"customid": 1234,
"approved": true,
"coupon": {
"type": "buy1get1"
}
}'
$ cur -XPOST 'http://localhost:9200/store/order/_search' -d '
{
"query": {
"term": {
"coupon.type": "buy1get1"
}
}
}'
Natural Language Processing
Geo points and Geo shapes
Store, Search and Retreive multiple formats.
/*...*/
"properties" : {
"name" : {
"type" : "multi_field",
"fields" : {
"name" : {
"type" : "string",
"index" : "analyzed"},
"stemmed" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "snowball"},
"untouched" : {
"type" : "string",
"index" : "not_analyzed"}
/*...*/
For Free!
Functionally composable DSL
Find more documents like yours
Reverse indexing with queries
Plan ahead
Know your data
Stay consistent
Still backwards compatible
Isolate it
Firewall required