ES基本操作

查询各个节点状态
API:GET /_cat/nodes?v

查询各个索引状态
GET /_cat/indices?v


创建索引
API:PUT 索引名?pretty
PUT movie_index?pretty


查询某个索引的分片情况
GET/_cat/shards/movie_index

删除索引
API:DELETE /索引名
DELETE /movie_index

现在向索引movie_index中放入文档,文档ID分别为1,2,3
PUT /movie_index/movie/1
{ "id":100, 
  "name":"operation red sea", 
  "doubanScore":8.5, 
  "actorList":[ {"id":1,"name":"zhang yi"},
                {"id":2,"name":"hai qing"},
                {"id":3,"name":"zhang han yu"}]}
                
                
PUT /movie_index/movie/2
{ "id":200,
  "name":"operation meigong river", 
  "doubanScore":8.0, 
  "actorList":[ {"id":3,"name":"zhang han yu"}]}
  
  
PUT /movie_index/movie/3
{ "id":300, 
  "name":"incident red sea", 
  "doubanScore":5.0, 
  "actorList":[ {"id":4,"name":"zhang san feng"}]}
  
  
  
根据文档id查看文档
API:GET /索引名/类型名/文档id
GET /movie_index/movie/1?pretty

查询所有文档
API:GET /索引名/_searchKinana中默认显示10条,
可以通过size控制
GET /movie_index/_search
{
  "size":10
}

根据文档id删除文档
API:DELETE /索引名/类型名/文档id
DELETE /movie_index/movie/3

注意:删除索引和删除文档的区别?
➢删除索引是会立即释放空间的,不存在所谓的“标记”逻辑。 
➢删除文档的时候,是将新文档写入,同时将旧文档标记为已删除。
磁盘空间是否释放取决于新旧文档是否在同一个segment file里面,
因此ES后台的segment merge在合并segment file的过程中有可能触发旧文档的物理删除。
➢也可以手动执行POST /_forcemerge进行合并触发


替换文档
PUT(幂等性操作)
当我们通过执行PUT /索引名/类型名/文档id命令的添加时候,
如果文档id已经存在,那么再次执行上面的命令,ElasticSearch将替换现有文档。
POST(非幂等性操作)
创建文档时,ID部分是可选的。如果没有指定,Elasticsearch将生成一个随机ID,然后使用它来引用文档。

根据文档id更新文档
除了创建和替换文档外,ES还可以更新文档中的某一个字段内容。
注意,Elasticsearch实际上并没有在底层执行就地更新,而是先删除旧文档,再添加新文档。
API:
POST /索引名/类型名/文档id/_update?pretty

  "doc": { "字段名": "新的字段值" } doc固定写法
}
需求:把文档ID为3中的name字段更改为“wudang”:
POST /movie_index/movie/3/_update?pretty

"doc": {"name":"wudang"}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Elasticsearch是一个开源的分布式搜索和分析引擎,它可以用于存储、搜索和分析大量的数据。以下是一些Elasticsearch的基本操作: 1. 安装和启动Elasticsearch:首先,你需要从Elasticsearch官方网站下载和安装Elasticsearch。安装完成后,你可以使用命令行或者图形界面来启动Elasticsearch。 2. 创建索引:在Elasticsearch中,数据存储在索引中。你可以使用PUT请求来创建一个新的索引。例如,使用curl命令可以发送以下请求来创建一个名为"my_index"的索引: ``` curl -XPUT 'localhost:9200/my_index' ``` 3. 添加文档:一旦索引创建好了,你可以使用POST请求来向索引中添加文档。文档是以JSON格式表示的数据。以下是向名为"my_index"的索引添加一个文档的示例请求: ``` curl -XPOST 'localhost:9200/my_index/_doc' -d ' { "title": "Elasticsearch Basics", "content": "This is a basic introduction to Elasticsearch" }' ``` 4. 搜索文档:你可以使用GET请求来搜索索引中的文档。以下是一个搜索名为"my_index"的索引中包含关键字"elasticsearch"的文档的示例请求: ``` curl -XGET 'localhost:9200/my_index/_search?q=elasticsearch' ``` 5. 更新文档:使用POST请求可以更新索引中的文档。以下是更新名为"my_index"的索引中ID为1的文档的示例请求: ``` curl -XPOST 'localhost:9200/my_index/_doc/1/_update' -d ' { "doc": { "content": "This is an updated content" } }' ``` 6. 删除文档:使用DELETE请求可以删除索引中的文档。以下是删除名为"my_index"的索引中ID为1的文档的示例请求: ``` curl -XDELETE 'localhost:9200/my_index/_doc/1' ``` 这些是Elasticsearch的一些基本操作。你可以根据需要进一步探索和学习更多高级功能和API。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值