基本操作
索引<index>
创立
# 1.创立索引- PUT /索引名 ====> PUT /products- 留神: 1.ES中索引衰弱转态 red(索引不可用) 、yellwo(索引可用,存在危险)、green(衰弱) 2.默认ES在创立索引时回为索引创立1个备份索引和一个primary索引 # 2.创立索引 进行索引分片配置- PUT /products{ "settings": { "number_of_shards": 1, #指定主分片的数量 "number_of_replicas": 0 #指定正本分片的数量 }}
)
查问
# 查问索引- GET /_cat/indices?v
删除
# 3.删除索引- DELETE /索引名 =====> DELETE /products- DELETE /* `*代表通配符,代表所有索引`
映射<mapping>
创立
字符串类型: keyword 关键字 关键词 、text 一段文本
数字类型:integer long
小数类型:float double
布尔类型:boolean
日期类型:date
# 1.创立索引&映射
PUT /products{ "settings": { "number_of_shards": 1, "number_of_replicas": 0 }, "mappings": { "properties": { "title":{ "type": "keyword" }, "price":{ "type": "double" }, "created_at":{ "type": "date" }, "description":{ "type": "text" } } }}
阐明: ES中反对字段类型十分丰盛,如:text、keyword、integer、long、ip 等。更多参见https://www.elastic.co/guide/en/elasticsearch/reference/7.15/...
查问
# 1.查看某个索引的映射- GET /索引名/_mapping =====> GET /products/_mapping
文档<document>
增加文档
POST /products/_doc/1 #指定文档id { "title":"iphone13", "price":8999.99, "created_at":"2021-09-15", "description":"iPhone 13屏幕采纳6.1英寸OLED屏幕。"}
POST /products/_doc/ #主动生成文档id{ "title":"iphone14", "price":8999.99, "created_at":"2021-09-15", "description":"iPhone 13屏幕采纳6.8英寸OLED屏幕"}
{ "_index" : "products", "_type" : "_doc", "_id" : "sjfYnXwBVVbJgt24PlVU", "_version" : 1, "result" : "created", "_shards" : { "total" : 1, "successful" : 1, "failed" : 0 }, "_seq_no" : 3, "_primary_term" : 1}
查问文档
GET /products/_doc/1
{ "_index" : "products", "_type" : "_doc", "_id" : "1", "_version" : 1, "_seq_no" : 0, "_primary_term" : 1, "found" : true, "_source" : { "title" : "iphone13", "price" : 8999.99, "created_at" : "2021-09-15", "description" : "iPhone 13屏幕采纳6.1英寸OLED屏幕" }}
删除文档
DELETE /products/_doc/1
{ "_index" : "products", "_type" : "_doc", "_id" : "1", "_version" : 2, "result" : "deleted", "_shards" : { "total" : 1, "successful" : 1, "failed" : 0 }, "_seq_no" : 2, "_primary_term" : 1}
更新文档
PUT /products/_doc/sjfYnXwBVVbJgt24PlVU{ "title":"iphon15"}
阐明: 这种更新形式是先删除原始文档,在将更新文档以新的内容插入。
POST /products/_doc/sjfYnXwBVVbJgt24PlVU/_update{ "doc" : { "title" : "iphon15" }}
阐明: 这种形式能够将数据原始内容保留,并在此基础上更新。
批量操作
POST /products/_doc/_bulk #批量索引两条文档 {"index":{"_id":"1"}} {"title":"iphone14","price":8999.99,"created_at":"2021-09-15","description":"iPhone 13屏幕采纳6.8英寸OLED屏幕"} {"index":{"_id":"2"}} {"title":"iphone15","price":8999.99,"created_at":"2021-09-15","description":"iPhone 15屏幕采纳10.8英寸OLED屏幕"}
POST /products/_doc/_bulk #更新文档同时删除文档 {"update":{"_id":"1"}} {"doc":{"title":"iphone17"}} {"delete":{"_id":2}} {"index":{}} {"title":"iphone19","price":8999.99,"created_at":"2021-09-15","description":"iPhone 19屏幕采纳61.8英寸OLED屏幕"}
阐明:批量时不会因为一个失败而全副失败,而是继续执行后续操作,在返回时依照执行的状态返回!
本文由mdnice多平台公布