Elasticsearch Rest风格操作索引操作
Posted 老李笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch Rest风格操作索引操作相关的知识,希望对你有一定的参考价值。
Elasticsearch Rest风格操作(一)索引操作
基本Rest命令说明
method | url地址 | 描述 |
---|---|---|
PUT | 127.0.0.1:9200/索引名称/类型名称/文档id | 创建文档(指定文档id) |
POST | 127.0.0.1:9200/索引名称/类型名称 | 创建文档(随机文档id) |
POST | 127.0.0.1:9200/索引名称/类型名称/文档id/_update | 修改文档 |
DELETE | 127.0.0.1:9200/索引名称/类型名称/文档id | 删除文档 |
GET | 127.0.0.1:9200/索引名称/类型名称/文档id | 查询文档通过文档id |
POST | 127.0.0.1:9200/索引名称/类型名称/_search | 查询所有数据 |
1、rest风格 curl命令行操作
1.1、基础操作
# 查询ES里面有多少个库
GET _cat/indices?v
curl localhost:9200/_cat/indices?v
# GET请求-基础
curl localhost:9200/test1/test1/101
# put请求
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' \\
-d '"message":"bbbb","exchange_id":"123"' 'localhost:9200/test1/test1/101'
# POST请求-创建文档
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \\
-d '"message":"cccc","exchange_id":"123"' 'localhost:9200/test1/test1'
# POST请求-查询文档
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \\
'localhost:9200/test1/_search'
# delete请求
curl -X DELETE 'localhost:9200/test1/test1/100'
1.2、实战
# 查询索引 hao 、查询结果格式化、查询条件 name 为 xmp、返回列包括 name
curl -X POST --header 'Content-Type: application/json' \\
--header 'Accept: application/json' 'localhost:9200/hao/_search?pretty' \\
-d '"query":"match":"name":"xmp","_source":["name"]'
# 批量删除符合条件的集合
# _delete_by_query 表示:删除 根据 查询的条件
curl -X POST --header 'Content-Type: application/json' \\
--header 'Accept: application/json' 'localhost:9200/hao/_delete_by_query' \\
-d '"query":"match":"name":"png"'
2、索引
2.1、创建索引
PUT /test1/type1/1
"name":"洪七公",
"age":3
2.2、复制索引(重命名)
POST localhost:9200/_reindex
"source":
"index": "indexName"
,
"dest":
"index": "newIndexName"
rest请求
curl -X POST --header 'Content-Type: application/json' \\
--header 'Accept: application/json' 'localhost:9200/_reindex' \\
-d '"source": "index": "old_name","dest": "index": "new_name"'
3、指定字段的类型
常见字段类型
字符串类型 text , keyword
数值类型 long , integer , short , byte , double , float , half float , scalet float
日期类型 date
布尔类型 boolean
二进制类型 binary
等等 …
举例:执行如下脚本
PUT /test2
"mappings":
"properties":
"name":
"type": "text"
,
"age":
"type": "long"
,
"birthday":
"type": "date"
查看结果:
4、GET命令
GET test2
5、获取健康值
GET _cat/health
6、获取版本信息
GET _cat/indices?v
7、修改
7.1、修改方式1
POST /test1/type1/1
"name":"张三丰",
"age":33
执行:
查询:
7.2、修改方式2
POST /test1/type1/1/_update
"doc":
"name":"六小龄童"
8、删除
DELETE test2
特别鸣谢:狂神说Java
以上是关于Elasticsearch Rest风格操作索引操作的主要内容,如果未能解决你的问题,请参考以下文章
第130天学习打卡(ElasticSearch Rest风格说明 索引 文档 )
Elasticsearch 7.X RESTful 风格 索引文档映射操作
Elastisearch 简介 使用 Query DSL 映射 分词 Elasticsearch-Rest-Client