elasticsearch从入门到出门-02-简单的CRUD
操作背景:
电商网站上面的一个商品的增删改查:
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接口!算是简单的入门了!
梦想一定要有,万一实现了!
学习笔记
elasticsearch从入门到出门-02-简单的CRUD的更多相关文章
- elasticsearch从入门到出门-08-Elasticsearch容错机制:master选举,replica容错,数据恢复
假如: 9 shard,3 node Elasticsearch容错机制:master选举,replica容错,数据恢复 最佳分配情况: 这样分配之后,不管其中哪个node 宕机这个es 依然可以提供 ...
- elasticsearch从入门到出门-01windows上安装使用
elasticsearch 1.安装JDK,至少1.8.0_73以上版本,java -version2.下载和解压缩Elasticsearch安装包,目录结构3.启动Elasticsearch:bin ...
- elasticsearch从入门到出门-06-剖析Elasticsearch的基础分布式架构
这个图来自中华石杉:
- elasticsearch从入门到出门-05-集群之踩坑
自己搭的集群, 设备: win10 + ubuntu 16 的虚拟机一个: 下载的版本:elasticsearch-5.2.0 win10 解压下就好了,不说了. ubuntu 上,我想说多了都是泪! ...
- elasticsearch从入门到出门-04-入门的几个需求练手
第一个分析需求:计算每个tag下的商品数量 GET /ecommerce/product/_search{ "aggs": { "group_by_tags&qu ...
- elasticsearch从入门到出门-03-多种搜索
1.query string search 2.query DSL 3.query filter 4.full-text search 5.phrase search 6.highlight sear ...
- 学习Sharding JDBC 从入门到出门-02:源码揣测
sjdbc有读写分离的功能,要使用这个功能,在创建数据源对象是要使用类:MasterSlaveDataSource,并且设置主备数据源和数据库名称 这个对象有下面的属性: name:数据库的名称 ma ...
- Elasticsearch从入门到放弃:文档CRUD要牢记
在Elasticsearch中,文档(document)是所有可搜索数据的最小单位.它被序列化成JSON存储在Elasticsearch中.每个文档都会有一个唯一ID,这个ID你可以自己指定或者交给E ...
- hibernate入门-基本配置及简单的crud操作
框架来说主要是需要写大量的配置文件,hibernate相比mybatis来说更强大,移植性更好: 1.类和数据库的映射配置:配置文件命名一般--类名.hbm.xml (user.hbm.xml),与实 ...
随机推荐
- JAVA反射机制--怎么不受泛型束缚给数组赋值
在Java中,声明数组的时候我们经常会写泛型限制用户输入或者获取的数据.如:ArrayList<String> list = new ArrayList<>(); String ...
- hibernate学习系列-----(4)hibernate基本查询上篇:HQL基本查询
紧接着上一篇,今天继续hibernate的学习总结,来聊一聊hibernate的基本查询方法,先说说HQL(hibernate Query Language):它是官方推荐的查询语言.在开始写代码之前 ...
- bat 处理文件路径 (所在目录,文件名,文件后缀名,完整文件名,无后缀路径)
echo off setlocal enabledelayedexpansion set "EXCEL_DIR=%cd%\excel" for /R %EXCEL_DIR% %%f ...
- ionic中actionsheet在安卓中显示样式问题
可以看到在浏览器上是正常的,在安卓上的样式没了 建议不要直接去动ionic的css文件,容易影响全局 方法:注释掉_action-sheet.sass中文件123行,针对安卓样式去写的样sass 保存 ...
- 标准库Allocator的使用(一)
上一篇我们提到了new运算符以及它的工作步骤,其实无非是把两项工作独立出来: 1.申请原始内存 2.执行构造函数 delete也涉及了两个工作: 1.执行析构函数 2.释放原始内存 其实标准库提供了另 ...
- R 包的安装,使用,更新
R包的使用方法 包就是提供了种类繁多的函数,当然还有它的一些数据集,可以使用这些函数来操作这些数据集,来学习使用. library(),当前的工作环境里,可以使用的包 包的帮助文档:help(pack ...
- Bestcoders
Senior's Fish Time Limit: 14000/7000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) T ...
- C#制作ActiveX控件中调用海康SDK的问题
事情是这样的,有一台海康威视的摄像头,客户需要一个ActiveX控件嵌入到网页中,通过点击按钮开始录制和结束录制来进行视频的录制和保存,关于海康摄像头的二次开发在此就不多说了,可以参考SDK中的说明. ...
- C# 使用UUID生成各种模式方法
UUID简单说明 常见的方式.可以利用数据库也可以利用程序生成,一般来说全球唯一. 优点: 1)简单,代码方便. 2)生成ID性能非常好,基本不会有性能问题. 3)全球唯一,在遇见数据迁移,系统数据合 ...
- angularjs事件传递$on、$emit和$broadcast
如何在作用域之间通信呢? 1.创建一个单例服务,然后通过这个服务处理所有子作用域的通信. 2.通过作用域中的事件处理通信.但是这种方法有一些限制:例如,你并不能广泛的将事件传播到所有监控的作用域中.你 ...