操作背景:

  电商网站上面的一个商品的增删改查:

    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的更多相关文章

  1. elasticsearch从入门到出门-08-Elasticsearch容错机制:master选举,replica容错,数据恢复

    假如: 9 shard,3 node Elasticsearch容错机制:master选举,replica容错,数据恢复 最佳分配情况: 这样分配之后,不管其中哪个node 宕机这个es 依然可以提供 ...

  2. elasticsearch从入门到出门-01windows上安装使用

    elasticsearch 1.安装JDK,至少1.8.0_73以上版本,java -version2.下载和解压缩Elasticsearch安装包,目录结构3.启动Elasticsearch:bin ...

  3. elasticsearch从入门到出门-06-剖析Elasticsearch的基础分布式架构

    这个图来自中华石杉:

  4. elasticsearch从入门到出门-05-集群之踩坑

    自己搭的集群, 设备: win10 + ubuntu 16 的虚拟机一个: 下载的版本:elasticsearch-5.2.0 win10 解压下就好了,不说了. ubuntu 上,我想说多了都是泪! ...

  5. elasticsearch从入门到出门-04-入门的几个需求练手

    第一个分析需求:计算每个tag下的商品数量 GET /ecommerce/product/_search{  "aggs": {    "group_by_tags&qu ...

  6. elasticsearch从入门到出门-03-多种搜索

    1.query string search 2.query DSL 3.query filter 4.full-text search 5.phrase search 6.highlight sear ...

  7. 学习Sharding JDBC 从入门到出门-02:源码揣测

    sjdbc有读写分离的功能,要使用这个功能,在创建数据源对象是要使用类:MasterSlaveDataSource,并且设置主备数据源和数据库名称 这个对象有下面的属性: name:数据库的名称 ma ...

  8. Elasticsearch从入门到放弃:文档CRUD要牢记

    在Elasticsearch中,文档(document)是所有可搜索数据的最小单位.它被序列化成JSON存储在Elasticsearch中.每个文档都会有一个唯一ID,这个ID你可以自己指定或者交给E ...

  9. hibernate入门-基本配置及简单的crud操作

    框架来说主要是需要写大量的配置文件,hibernate相比mybatis来说更强大,移植性更好: 1.类和数据库的映射配置:配置文件命名一般--类名.hbm.xml (user.hbm.xml),与实 ...

随机推荐

  1. log4j教程 3、架构

    Log4j API设计为分层结构,其中每一层提供了不同的对象,对象执行不同的任务.这使得设计灵活,根据将来需要来扩展. 有两种类型可用在Log4j的框架对象. 核心对象: 框架的强制对象和框架的使用. ...

  2. 最简单的基于FFmpeg的移动端样例:IOS 视频解码器

    ===================================================== 最简单的基于FFmpeg的移动端样例系列文章列表: 最简单的基于FFmpeg的移动端样例:A ...

  3. 你今天Restful了吗?

    大家都宣称自己已经满足REST架构的风格, 那到底需要怎么去评价是否符合REST架构, 至少得有以下几个特征. REST 的约束包括: 无状态.在不同的客户端请求之间,服务器并不保存客户端相关的上下文 ...

  4. [Algorithm] Maximum Contiguous Subarray algorithm implementation using TypeScript / JavaScript

    Naive solution for this problem would be caluclate all the possible combinations: const numbers = [1 ...

  5. ubuntu18.04 安装mysql时'root'@'localhost'无法获取登录权限

    查看一下user表,错误的起因就是在这里, root的plugin被修改成了auth_socket,用密码登陆的plugin应该是mysql_native_password mysql> sel ...

  6. flask的分页功能

    分页是个很通用的东西,在flask中,有一个macro的语法,类似于宏,我们可以将通用的东西通过macro写入单独的html文件以方便维护,减少代码量.下面是我的分页的macro文件render_pa ...

  7. js控制div内的滚动条的位置

    通过div的scrollTop变动控制垂直滚动条位置. 通过div的scrollLeft变动控制水平滚动条位置. 示例: <body> //d1是外层div,带滚动条 <div id ...

  8. React Native 爬坑之路

    1.react 基础 (创建组件及在浏览器上渲染组件) <!DOCTYPE html> <html lang="en"> <head> < ...

  9. <转>Windows平台下Makefile学习笔记(一)

    本文转自:http://blog.csdn.net/clever101/article/details/8147352 决心学习Makefile,一方面是为了解决编译开源代码时需要跨编译平台的问题(发 ...

  10. 浅谈EntityFramework框架的使用

    第一步,建立一个类库,并且安装好EntityFramework框架还有CodingFirstUsingFluentApi安装包 第二步 : 第三步:配置好你的数据库连接信息,还有你需要操作的数据库,在 ...