前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Elasticsearch的CRUD操作

Elasticsearch的CRUD操作

作者头像
苦咖啡
发布2018-04-28 11:29:30
6270
发布2018-04-28 11:29:30
举报
文章被收录于专栏:我的博客我的博客
代码语言:javascript
复制
1、添加信息	

PUT http://192.168.56.201:9200/demo/employee/1?op_type=create
{
	"first_name" : "John",
	"last_name" :  "Smith",
	"age" :        25,
	"about" :      "I love to go rock climbing",
	"interests": [ "sports", "music" ]
}
PUT http://192.168.56.201:9200/demo/employee/1/_create
{
	"first_name" : "John",
	"last_name" :  "Smith",
	"age" :        25,
	"about" :      "I love to go rock climbing",
	"interests": [ "sports", "music" ]
}

2、删除信息

DELETE  http://192.168.56.201:9200/megacorp/employee/1

3、搜索信息

3.1、搜索所有
GET http://192.168.56.201:9200/megacorp/employee/_search
3.2、搜索指定ID
GET http://192.168.56.201:9200/megacorp/employee/1
3.3、按照关键词搜索
GET http://192.168.56.201:9200/megacorp/employee/_search?q=last_name:Smit
其中last_name是要搜索的字段,Smith是该字段的值
3.4 使用Query  DSL查询
GET http://192.168.56.201:9200/megacorp/employee/_search
{
    "query" : {
        "match" : {
            "last_name" : "Smith"
        }
    }
}

4、更新或添加信息

PUT http://192.168.56.201:9200/demo/employee/1
{
	"first_name" : "John",
	"last_name" :  "Smith",
	"age" :        25,
	"about" :      "I love to go rock climbing",
	"interests": [ "sports", "music" ]
}
如果不存在则新建

5、乐观并发控制
在更新或者删除时可以使用_version参数来控制

6、更新部分文档部分内容
POST http://192.168.56.201:9200/demo/employee/1/_update
{
	"first_name" : "John",
	"tags":["test"]
}

7、冲突重试
POST http://192.168.56.201:9200/demo/employee/1/_update?retry_on_conflict=5
使用场景:更新文章点击次数

8、检索多个文档
GET /_mget
{
   "docs" : [
      {
         "_index" : "website",
         "_type" :  "blog",
         "_id" :    2
      },
      {
         "_index" : "website",
         "_type" :  "pageviews",
         "_id" :    1,
         "_source": "views"
      }
   ]
}
相同index和type
GET /website/blog/_mget
{
   "ids" : [ "2", "1" ]
}

9、批量操作
POST _bulk?pretty
{ "delete": { "_index": "website", "_type": "blog", "_id": "123" }} 
{ "create": { "_index": "website", "_type": "blog", "_id": "123" }}
{ "title":    "My first blog post" }
{ "index":  { "_index": "website", "_type": "blog" }}
{ "title":    "My second blog post" }
{ "update": { "_index": "website", "_type": "blog", "_id": "123", "_retry_on_conflict" : 3} }
{ "doc" : {"title" : "My updated blog post"} }

备注:每行使用换行符分开,bulk操作不是原子性的;批量要注意每次提交的文档大小
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年6月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档