9710. Basic Queries in Elasticsearch
Elasticsearch


Notes for Elastic Search.

2. Usage

2.1 Creating

POST shop/customer/1
{
"name": "Johnny",
"address": "1234 Hillview Ave, Palo Alto",
"level": "Silver"
}

Response:

{
"_index": "shop",
"_type": "customer",
"_id": "1",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": true
}

Create another two users.

POST shop/customer/2
{
"name": "Sean",
"address": "1010 Steven Creek Ave, Cupertino",
"level": "Bronze"
}
POST shop/customer/3
{
"name": "Norah",
"address": "340 Lawrence Station Rd, Sunnyvale",
"level": "Bronze"
}

2.2 Getting

GET shop/customer/1

Response:

{
"_index": "shop",
"_type": "customer",
"_id": "1",
"_version": 1,
"found": true,
"_source": {
"name": "Johnny",
"address": "1234 Hillview Ave, Palo Alto",
"level": "Silver"
}
}

2.3 Updating

PUT shop/customer/1
{
"name": "Johnny",
"address": "1234 Hillview Ave, Palo Alto",
"level": "Golden"
}

Response:

{
"_index": "shop",
"_type": "customer",
"_id": "1",
"_version": 2,
"result": "updated",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": false
}

2.4 Deleting

DELETE shop/customer/3

Response:

{
"found": true,
"_index": "shop",
"_type": "customer",
"_id": "3",
"_version": 2,
"result": "deleted",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
}
}

Search

Get shop/customer/3

Response:

{
"_index": "shop",
"_type": "customer",
"_id": "3",
"found": false
}

2.5 Searching

a) Search all customers

GET /shop/customer/_search

Response:

{
"took": 4,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 2,
"max_score": 1,
"hits": [
{
"_index": "shop",
"_type": "customer",
"_id": "2",
"_score": 1,
"_source": {
"name": "Sean",
"address": "1010 Steven Creek Ave, Cupertino",
"level": "Bronze"
}
},
{
"_index": "shop",
"_type": "customer",
"_id": "1",
"_score": 1,
"_source": {
"name": "Johnny",
"address": "1234 Hillview Ave, Palo Alto",
"level": "Golden"
}
}
]
}
}

a) Search the customer named ‘Johnny’

GET /shop/customer/_search?q=name:Johnny

Response:

{
"took": 3,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 0.2876821,
"hits": [
{
"_index": "shop",
"_type": "customer",
"_id": "1",
"_score": 0.2876821,
"_source": {
"name": "Johnny",
"address": "1234 Hillview Ave, Palo Alto",
"level": "Golden"
}
}
]
}
}

3. Reference