ElasticSearch索引操作

创建索引

<!--索引命名必须小写,不能以下划线开头-->

<!--PUT /索引名称-->
PUT /es_db
#创建索引时可以设置分片数和副本数
PUT /es_db
{
    "settings" : {
        "number_of_shards" : 3,
        "number_of_replicas" : 2
    }
}
#修改索引配置
PUT /es_db/_settings
{
    "index" : {
        "number_of_shards" : 2,
        "number_of_replicas" : 1
    }
}

查询索引

<!--GET /索引名称-->

GET /es_db
#es_db是否存在
HEAD /es_db

删除索引

<!--ELETE /索引名称-->
DELETE /es_db

添加(索引)文档

<!--[PUT | POST] /索引名称/[_doc  | _create ]/id-->

POST和PUT都能起到创建/更新的作用,PUT需要对一个具体的资源进行操作也就是要确定id才能进行更新/创建,而POST是可以针对整个资源集合进行操作的,如果不写id就由ES生成一个唯一id进行创建新文档,如果填了id那就针对这个id的文档进行创建/更新

修改文档

<!--[PUT | POST] /索引名称/_doc/id-->
#全量更新,整个json都会替换,如果文档存在,现有文档会被删除,新的文档会被索引
POST /索引名称/_update/id
#update不会删除原来的文档,而是实现真正的数据更新



<!--POST /索引名称/_doc/1?if_seq_no=version&if_primary_term=id-->
#当在高并发环境下使用乐观锁机制修改文档时,要带上当前文档的_seq_no和_primary_term进行更新
#如果版本号不对,会抛出版本冲突异常

查询文档

#根据id查询文档
GET /索引名称/_doc/id
#条件查询 _search
GET /索引名称/_doc/_search

删除文档

DELETE /索引名称/_doc/id

批量操作文档

<!--对文档进行批量写操作是通过_bulk的API来实现的
请求方式:POST
请求地址:_bulk
请求参数:通过_bulk操作文档,一般至少有两行参数(或偶数行参数)
第一行参数为指定操作的类型及操作的对象(index,type和id)
第二行参数才是操作的数据-->
{"actionName":{"_index":"indexName", "_type":"typeName","_id":"id"}}
{"field1":"value1", "field2":"value2"}
#actionName:表示操作类型,主要有create,index,delete和update

批量读取
#mget可以通过id,也可以可以指定不同的index
GET /es_db/_mget
#msearch可以通过字段查询来进行一个批量的查找
GET /es_db/_msearch

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值