操作背景:
电商网站上面的一个商品的增删改查:
es 能接受的都是JSON格式的数据
Es 提供了一套简单的集群信息健康监控的api
GET /_cat/health?v
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1496717921 10:58:41 elasticsearch yellow 1 1 11 11 0 0 11 0 - 50.0%
上面这组数据中status表示集群的健康状态:
status:
green: 表示primary shard 和replica shard 都是active状态
yellow:表示primary shard 都是active状态,但是replica shard都不是active 不可用
red: 不是所有的primary shard 和replica shard 都是active 状态。部分数据已经缺失
以上这几种之间的转换时可以通过集群进行改变!
GET /_cat/indices?v
查看集群中所有的索引:
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open ecommerce rNPN2GoGTayx66xqMHmE-Q 5 1 2 0 11.4kb 11.4kb
yellow open .kibana xjCuKCn-R7ajR6j5qK8FiQ 1 1 1 0 3.1kb 3.1kb
yellow open test_index 2syq2V15Q3ePcShzI_EyYQ 5 1 1 1 4kb 4kb
商品的CRUD操作:
这是其中的一条:
PUT ecommerce/product/3
{
"name":"zhonghua yagao"
,"desc":"This is zhonghua caoben"
,"price":25,
"producer":"zhonghua producer",
"tags":["caoben"]
}
我插入了三条数据:
这是其中一条数据插入的返回结果:
{
"_index": "ecommerce",
"_type": "product",
"_id": "3",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": true
}
2-查询语法:GET /index/type/id
这是上面截图插入的那条数据,
3-修改商品文档
基本语法:PUT /ecommerce/product/1 这是存在时候就进行更新,不存在就创建
PUT /ecommerce/product/1
{
"name" : "jiaqiangban gaolujie yagao",
"desc" : "gaoxiao meibai",
"price" : 30,
"producer" : "gaolujie producer",
"tags": [ "meibai", "fangzhu" ]
}
还可以进行部分字段进行更新:
PUT /ecommerce/product/1
{
"name" : "jiaqiangban gaolujie yagao"
}
04-删除: DELETE ecommerce/product/1 语法
总结下CRUD 的语法简单的发现到这是一个restful风格的APi接口!算是简单的入门了!
梦想一定要有,万一实现了!
学习笔记