1. 查询所有的索引
[root@Server01 cx]# curl '10.0.0.5:9200/_cat/indices?v' health status index pri rep docs.count docs.deleted store.size pri.store.size yellow open customer 5 1 2 0 6.6kb 6.6kb yellow open bank 5 1 1000 0 442.1kb 442.1kb
2. 查询bank表中的所有数据
[root@Server01 cx]# curl '10.0.0.5:9200/bank/_search?q=*&pretty' { "took" : 41, "timed_out" : false, "_shards" : { "total" : 5, "successful" : 5, "failed" : 0 }, "hits" : { "total" : 1000, "max_score" : 1.0, "hits" : [ { "_index" : "bank", "_type" : "account", "_id" : "25", "_score" : 1.0, "_source" : { "account_number" : 25, "balance" : 40540, "firstname" : "Virginia", "lastname" : "Ayala", "age" : 39, "gender" : "F", "address" : "171 Putnam Avenue", "employer" : "Filodyne", "email" : "virginiaayala@filodyne.com", "city" : "Nicholson", "state" : "PA" } }, { "_index" : "bank", "_type" : "account", "_id" : "44", "_score" : 1.0, "_source" : { "account_number" : 44, "balance" : 34487, "firstname" : "Aurelia", "lastname" : "Harding", "age" : 37, "gender" : "M", "address" : "502 Baycliff Terrace", "employer" : "Orbalix", "email" : "aureliaharding@orbalix.com", "city" : "Yardville", "state" : "DE" } }, { "_index" : "bank", "_type" : "account", "_id" : "99", "_score" : 1.0, "_source" : { "account_number" : 99, "balance" : 47159, "firstname" : "Ratliff", "lastname" : "Heath", "age" : 39, "gender" : "F", "address" : "806 Rockwell Place", "employer" : "Zappix", "email" : "ratliffheath@zappix.com", "city" : "Shaft", "state" : "ND" } }, { "_index" : "bank", "_type" : "account", "_id" : "119", "_score" : 1.0, "_source" : { "account_number" : 119, "balance" : 49222, "firstname" : "Laverne", "lastname" : "Johnson", "age" : 28, "gender" : "F", "address" : "302 Howard Place", "employer" : "Senmei", "email" : "lavernejohnson@senmei.com", "city" : "Herlong", "state" : "DC" } }, { "_index" : "bank", "_type" : "account", "_id" : "126", "_score" : 1.0, "_source" : { "account_number" : 126, "balance" : 3607, "firstname" : "Effie", "lastname" : "Gates", "age" : 39, "gender" : "F", "address" : "620 National Drive", "employer" : "Digitalus", "email" : "effiegates@digitalus.com", "city" : "Blodgett", "state" : "MD" } }, { "_index" : "bank", "_type" : "account", "_id" : "145", "_score" : 1.0, "_source" : { "account_number" : 145, "balance" : 47406, "firstname" : "Rowena", "lastname" : "Wilkinson", "age" : 32, "gender" : "M", "address" : "891 Elton Street", "employer" : "Asimiline", "email" : "rowenawilkinson@asimiline.com", "city" : "Ripley", "state" : "NH" } }, { "_index" : "bank", "_type" : "account", "_id" : "183", "_score" : 1.0, "_source" : { "account_number" : 183, "balance" : 14223, "firstname" : "Hudson", "lastname" : "English", "age" : 26, "gender" : "F", "address" : "823 Herkimer Place", "employer" : "Xinware", "email" : "hudsonenglish@xinware.com", "city" : "Robbins", "state" : "ND" } }, { "_index" : "bank", "_type" : "account", "_id" : "190", "_score" : 1.0, "_source" : { "account_number" : 190, "balance" : 3150, "firstname" : "Blake", "lastname" : "Davidson", "age" : 30, "gender" : "F", "address" : "636 Diamond Street", "employer" : "Quantasis", "email" : "blakedavidson@quantasis.com", "city" : "Crumpler", "state" : "KY" } }, { "_index" : "bank", "_type" : "account", "_id" : "208", "_score" : 1.0, "_source" : { "account_number" : 208, "balance" : 40760, "firstname" : "Garcia", "lastname" : "Hess", "age" : 26, "gender" : "F", "address" : "810 Nostrand Avenue", "employer" : "Quiltigen", "email" : "garciahess@quiltigen.com", "city" : "Brooktrails", "state" : "GA" } }, { "_index" : "bank", "_type" : "account", "_id" : "222", "_score" : 1.0, "_source" : { "account_number" : 222, "balance" : 14764, "firstname" : "Rachelle", "lastname" : "Rice", "age" : 36, "gender" : "M", "address" : "333 Narrows Avenue", "employer" : "Enaut", "email" : "rachellerice@enaut.com", "city" : "Wright", "state" : "AZ" } } ] } }
took – Elasticsearch执行查询的毫秒响应时间
timed_out – 是否超时
_shards – 查询过的分片,包含成功的分片和失败的分片
hits – 搜索结果
hits.total – 符合搜索结果的记录数
hits.hits – 默认显示前10条搜索结果
_score and max_score - ignore these fields for now
3. 另外一种查询全部结果的方法
curl -XPOST '10.0.0.5:9200/bank/_search?pretty' -d ' { "query": { "match_all": {} } }'
4. 分页排序的检索例子
[root@Server01 cx]# curl -XPOST '10.0.0.5:9200/bank/_search?pretty' -d ' { "query": { "match_all": {} }, "from": 10, "size": 3, "sort": { "balance": { "order": "desc" } } }' { "took" : 8, "timed_out" : false, "_shards" : { "total" : 5, "successful" : 5, "failed" : 0 }, "hits" : { "total" : 1000, "max_score" : null, "hits" : [ { "_index" : "bank", "_type" : "account", "_id" : "255", "_score" : null, "_source" : { "account_number" : 255, "balance" : 49339, "firstname" : "Iva", "lastname" : "Rivers", "age" : 38, "gender" : "M", "address" : "470 Rost Place", "employer" : "Mantrix", "email" : "ivarivers@mantrix.com", "city" : "Disautel", "state" : "MD" }, "sort" : [ 49339 ] }, { "_index" : "bank", "_type" : "account", "_id" : "524", "_score" : null, "_source" : { "account_number" : 524, "balance" : 49334, "firstname" : "Salas", "lastname" : "Farley", "age" : 30, "gender" : "F", "address" : "499 Trucklemans Lane", "employer" : "Xumonk", "email" : "salasfarley@xumonk.com", "city" : "Noxen", "state" : "AL" }, "sort" : [ 49334 ] }, { "_index" : "bank", "_type" : "account", "_id" : "751", "_score" : null, "_source" : { "account_number" : 751, "balance" : 49252, "firstname" : "Patrick", "lastname" : "Osborne", "age" : 23, "gender" : "M", "address" : "915 Prospect Avenue", "employer" : "Gynko", "email" : "patrickosborne@gynko.com", "city" : "Takilma", "state" : "MO" }, "sort" : [ 49252 ] } ] } }
5. 添加文档,如果id存在则更新文档
[root@Server01 data]# curl -XPUT '10.0.0.5:9200/customer/external/1?pretty' -d ' > {"name":"John Doe"}' { "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 1, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 }, "created" : true } [root@Server01 data]# curl -XPUT '10.0.0.5:9200/customer/external/1?pretty' -d ' {"name":"Jane Doe"}' { "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 2, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 }, "created" : false }
6. 不指定Id时创建文档,可以发现自动生成一个随机Id
[root@Server01 data]# curl -XPOST '10.0.0.5:9200/customer/external?pretty' -d '{"name": "Jane Doe"}' { "_index" : "customer", "_type" : "external", "_id" : "AVTh63KZ4Pj5B2ZQ2voK", "_version" : 1, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 }, "created" : true }
7. 修改文档
[root@Server01 data]# curl -XPOST '10.0.0.5:9200/customer/external/2/_update?pretty' -d '{"doc":{"name":"favourite boy","age":18}}' { "_index" : "customer", "_type" : "external", "_id" : "2", "_version" : 3, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 } }
8. 在开启javascript后,可以使用JS脚本更新文档
[root@Server01 data]# curl -XPOST '10.0.0.5:9200/customer/external/2/_update?pretty' -d '{"script":"ctx._source.age+=5"}'
9. 删除文档
[root@Server01 data]# curl -XDELETE '10.0.0.5:9200/customer/external/1?pretty' { "found" : true, "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 4, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 } }
10. 批量更新文档
[root@Server01 data]# curl -XPOST '10.0.0.5:9200/customer/external/_bulk?pretty' -d ' {"index":{"_id":"1"}} {"name": "John Doe" } {"index":{"_id":"2"}} {"name": "Jane Doe" }' { "took" : 33, "errors" : false, "items" : [ { "index" : { "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 3, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 }, "status" : 200 } } ] } [root@Server01 data]# curl -XPOST '10.0.0.5:9200/customer/external/_bulk?pretty' -d ' > {"update":{"_id":"1"}} > {"doc": { "name": "John Doe becomes Jane Doe" } } > {"delete":{"_id":"2"}} > ' { "took" : 34, "errors" : false, "items" : [ { "update" : { "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 4, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 }, "status" : 200 } }, { "delete" : { "_index" : "customer", "_type" : "external", "_id" : "2", "_version" : 5, "_shards" : { "total" : 2, "successful" : 1, "failed" : 0 }, "status" : 200, "found" : true } } ] }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。