ElasticSearch文档管理
系列 - ElasticSearch学习
目录
ElasticSearch 文档管理
1.单文档管理
1.1 创建文档
Tip
创建文档可以不同提前创建索引,会自动创建该索引。
1.1.1 不指定文档 ID
创建文档时不指定 ID:
POST 192.168.109.31:9200/doc-test01/doc
{
"name":"jeff",
"age":18,
"hobby":[
"eat",
"sleep",
"games"]
}
1.1.2 指定文档 ID
Note
不推荐此方式,可能存在文档 ID 冲突问题。
创建文档时指定 ID:
POST 192.168.109.31:9200/doc-test01/doc/20250821001
{
"name":"jack",
"age":18,
"hobby":[
"eat",
"sleep",
"games"]
}
1.2 查看文档
1.2.1 查看所有文档
查看所有文档:
GET 192.168.109.31:9200/doc-test01/_search
1.2.2 查看指定文档
查看指定文档:
GET 192.168.109.31:9200/doc-test01/doc/n5bLy5gB-fWg7LPpG6za
Note
非自定义 ID 文档的 ID 可以通过查询所有文档指令查询获得。
1.3 修改文档
修改文档内容:
POST 192.168.109.31:9200/doc-test01/doc/n5bLy5gB-fWg7LPpG6za/_update
{
"doc":{
"age" : 28
}
}
1.4 删除文档
删除指定 ID 的文档:
DELETE 192.168.109.31:9200/doc-test01/doc/20250821001
2.文档批量管理
2.1 文档批量创建
批量创建文件:
POST 192.168.109.31:9200/_bulk
{ "index" : { "_index" : "doc-test02"} }
{"name":"jeff","age":18,"hobby":["eat","sleep","games"]}
{ "index" : { "_index" : "doc-test02"} }
{"name":"jack","age":28,"hobby":["eat","sleep","games"]}
Important
使用 _bulk 批量创建文档时最后必须以新行结束。
2.2 文档批量查看
文档批量查看:
POST 192.168.109.31:9200/_mget
{
"docs": [
{
"_index": "doc-test02",
"_id": "pJbzy5gB-fWg7LPpH6yW"
},
{
"_index": "doc-test02",
"_id": "pZbzy5gB-fWg7LPpH6yX"
}
]
}
2.3 文档批量修改
文档批量修改:
POST 192.168.109.31:9200/_bulk
{ "update" : { "_index" : "doc-test02","_id" : "pJbzy5gB-fWg7LPpH6yW"} }
{ "doc" : {"age" : 30}}
2.4 文档批量删除
文档批量删除:
POST 192.168.109.31:9200/_bulk
{ "delete" : { "_index" : "doc-test02","_id" : "pJbzy5gB-fWg7LPpH6yW"} }
{ "delete" : { "_index" : "doc-test02","_id" : "pZbzy5gB-fWg7LPpH6yX"} }