sdsdsdsds
索引
索引的查询
# 查看ES中的suoyin
GET /_cat/indices?v
索引的创建
# 创建索引
PUT /products
ES在创建索引的时候,会给索引建立一个备份,如果单机启动,health会为yellow,因为备份和主数据块在同一个服务器,索引无效。
如何让heal调换变绿,设置备份数量为0
# 设置备份数量为0
PUT /orders
{
"settings":{
"number_of_shards":1,
"number_of_replicas":0
}
}
删除索引
# 删除索引
DELETE /products
映射
- 字符串类型
- 数字类型
- 小数类型
- 布尔类型
- 日期类型
创建映射&创建映射
# 创建索引 products 指定mapping {id,title,price,create_at,description}
PUT /products
{
"settings":{
"number_of_replicas":0,
"number_of_shards":1
},
"mapping":{
"properties":{
"id":{
"type":"integer"
},
"title":{
"type":"keyword"
},
"price":{
"type":"double"
},
"create_at":{
"type":"date"
},
"description":{
"type":"text"
}
}
}
}
?查看索引
# 查看某个索引的映射信息 mapping
GET /products/_mapping
映射不可以修改和修改!
文档
? ? ?添加文档
es会自动给_id赋值
# 为product添加文档,手动指定id id为1
POST /products/_doc/1
{
"id":1,
"title":"小浣熊",
"price":0.5,
"create_at":"2012-11-12",
"description":"小浣熊"
}
不指定id就自动赋值UUID的一部分
? ? ? ? 文档查询
# 文档查询 基于id查询
GET /products/_doc/1
? ? ? ? 删除文档
# 删除文档 基于id删除
DELETE /products/_doc/1
? ? ? ? 更新文档
# 这种更新是先删除原文档,再将更新的文档插入
PUT /products/_doc/1
{
"title":"IPONE5"
}
# 更新文档 基于现有字段进行更新
POST /products/_doc/1/_update
{
"doc":{
"price":1.6
}
}
文档的批量操作
? ? ? ? 批处理操作并不是原子性的操作
# 文档的批量操作 _bulk
# 如自动赋值id,index后就只跟{},且文档要在一行
POST /products/_doc/_bulk
{"index":{"_id":2}}
{"id":2,"title":"商品2","price":1.8,"create_at":"2012-11-12","description":"商品2的描述"}
{"index":{}}
{"id":3,"title":"商品3","price":1.8,"create_at":"2012-11-12","description":"商品3的描述"}
# 文档批量操作 添加 更新 删除
{"index":{"_id":4}}
{"id":4,"title":"商品4","price":1.8,"create_at":"2012-11-12","description":"商品4的描述"}
{"update":{"_id":2}}
{"doc":{"description":"商品2新的描述"}}
{"delete":{"_id":2}}
|