The following assumes that elasticsearch is running on the localhost on port 9200.
How do I learn more? https://www.elastic.co/guide/en/elasticsearch/reference/current/_executing_searches.html
curl -XGET 'localhost:9200/_cat/health?v&pretty' curl -XGET 'localhost:9200/_cat/nodes?v’
curl -XGET 'localhost:9200/_cat/indices?v&pretty’
This will give you, by default, the first 20 results as prettified JSON
curl –XGET ‘localhost:9200/index/_search?pretty’
Only get results that match certain criteria:
curl -XGET 'localhost:9200/index/_search?pretty' -H 'Content-Type: application/json' –d’{"query": { "match": { "field": "value" } } }'
curl -XGET 'localhost:9200/index/_search?pretty' -H 'Content-Type: application/json' –d’{ "query": { "bool": { "must": [ { "match": { "address": "mill" } }, { "match": { "address": "lane" } } ] } } }'
Search index
, matching all, and sorting by field
curl -XGET 'localhost:9200/index/_search?q=*&sort=field:asc&pretty’
Search index
, matching all, and sorting by field
curl -XGET 'localhost:9200/index/_search?pretty' -H 'Content-Type: application/json' -d’ { "query": { "match_all": {} }, "sort": [ { "field": "asc" } ] }'
Only give one result back from searching index
:
curl -XGET 'localhost:9200/index/_search?q=*&size=1&pretty'
Give back one result, starting at search result 10, from index
curl -XGET 'localhost:9200/bank/_search?q=*&size=1&from=10&pretty'
Finding distinct entities
curl -XGET 'localhost:9200/bank/_search?pretty' -H 'Content-Type: application/json' -d' { "size": 0, "aggs": { "group_by_state": { "terms": { "field": "state.keyword" } } } }'
curl -XPUT 'localhost:9200/newindex?pretty’
Insert the JSON document (after the -d) into the index with the id newid
:
curl –XPUT ‘localhost:9200/index/external/newid?pretty’ –d’{“field”:”data”}’
mongoimport --db dbname --collection whichcollection --file mydata.json
curl -XPOST 'http://localhost:9200/dbname' -d @mydata.json
curl -XPOST 'http://localhost:9200/dbname/_bulk' —data-binary @mydata.json
curl -XDELETE 'localhost:9200/students?pretty'