Elasticsearch一些增删改查的总结

环境Centos7+Es 5.x

简单介绍下ES的原理:

1,索引  --相当于传统关系型数据库的database或schema

2,类型  --相当于传统关系型数据库的table

3,id     --相当于传统关系型数据库的行row

4,_source  --这当中的每个字段相当于传统关系型数据库的列column

5,分片    --索引的拷贝,一是为了安全,而是分布式提高性能,相当于传统关系型数据库中master-master or master-slave结构

6,节点  --集群中的每个成员 --相当于传统关系型数据库集群中的每个实例(oracle)

下面我们看看es的普通crud:

1、创建一个索引

PUT car
{
"mappings": {
"benz": {
"properties": {
"date": {
"type": "date"
}
}
}
}
}
比如我们创建了一个名称为car的索引,类型为benz,添加了一个元数据date,执行结果:

  这时,我们想在benz类型中添加一个字段属性:

   

    我们往index为car,类型为benz的索引中添加了一个字段english_title,字段类型为字符串,采用英文分析器。

    我们尝试往这个索引中添加内容:

    

    这里的id是自动生成的,当然我们也可以指定id,如下:

    

     获取刚添加id为1的数据:

    

    获取索引car类型为benz下的所有数据:

    

  当然也可以直接put或post新增曾端会自己添加,如索引、类型都没有也会自动创建:

    

    POST /car/benz
    {
    "price":"30",
    "color":"black",
    "english_title":"CCTV are Say good!"
    }

  删除一个或多个索引:

  从一个类型中删除一条数据:

  更新一条数据:

      1)添加

        

      2)查看该条数据

         

      3)更新该条数据

        

        4)查看更新后的数据

        

2、多索引多类型查询

      1)查询索引website,sky下所有类型

      

        2)查询索引website,sky下类型eurape,blog类型数据

         

3、分页查询

            1)如果数据较多,想限制显示数量,如显示1-10共10条

            

4、简单的条件搜索

  1)查询所有索引中所有类型为blog,date字段为2014/01/01的字段

            

        注意看左边的结果,能完全匹配的是id为AVm1so4Nsrq782OZqS8R的这条,下面那条只是相似,搜索引擎的优势就出来了,即使不完全一样也会把数据带出来,那那条数据是我们真正想要的(可能更匹配的)那就看_score字段了,分值越高越匹配。

  2)查询多个字段

    

由于篇幅问题,我们见下一篇

elasticsearch增删改查crudp-----1的更多相关文章

  1. elasticsearch 增删改查底层原理

    elasticsearch专栏:https://www.cnblogs.com/hello-shf/category/1550315.html 一.预备知识 在对document的curd进行深度分析 ...

  2. Elasticsearch增删改查 之 —— mget多文档查询

    之前说过了针对单一文档的增删改查,基本也算是达到了一个基本数据库的功能.本篇主要描述的是多文档的查询,通过这个查询语法,可以根据多个文档的查询条件,返回多个文档集合. 更多内容可以参考我整理的ELK文 ...

  3. ES 17 - (底层原理) Elasticsearch增删改查索引数据的过程

    目录 1 增删改document的流程 1.1 协调节点 - Coordinating Node 1.2 增删改document的流程 2 查询document的流程 1 增删改document的流程 ...

  4. Elasticsearch增删改查 之 —— Get查询

    GET API是Elasticsearch中常用的操作,一般用于验证文档是否存在:或者执行CURD中的文档查询.与检索不同的是,GET查询是实时查询,可以实时查询到索引结果.而检索则是需要经过处理,一 ...

  5. Elasticsearch增删改查 之 —— Delete删除

    删除文档也算是常用的操作了...如果把Elasticsearch当做一款普通的数据库,那么删除操作自然就很常用了.如果仅仅是全文检索,可能就不会太常用到删除. Delete API 删除API,可以根 ...

  6. Java之Elasticsearch 增删改查

    <!--ELK --> <dependency> <groupId>org.elasticsearch.client</groupId> <art ...

  7. elasticsearch增删改查操作

    目录 1. 插入数据 2. 更改数据 3. 删除数据 4. 检索文档 1. 插入数据 关于下面的代码如何使用,可以借助于kibana的console,浏览器打开地址: http://xxx.xxx.x ...

  8. 阿里云 elasticsearch 增删改查

    kibana 控制台 # 查询所有数据 GET /yixiurds_dev/_search { "query": { "match_all": { } } } ...

  9. ElasticSearch 增删改查

    HTTP 协议本身语义:GET 获取资源.POST 新建资源(也可以用于更新资源).PUT 更新资源.DELETE 删除资源. ES通过HTTP Restful方式管理数据:1.格式:#操作 /ind ...

随机推荐

  1. completer自动完成

    由于项目需要,在输入框中要做一些输入限制的同时,更加要求用户体验,提供一些自动完成设置.所以有需求,总会有解决方式,下面说一下自动完成插件的原理: html的body部分: <span styl ...

  2. P1472 奶牛家谱 Cow Pedigrees

    题意:问你指定二叉树有几种 1.高度为k 2.节点数为n 3.每个点的度为0或2 爆搜------->30分QAQ 首先,因为每个节点度为0或2, 所以如果n是偶数直接输出0就行了吧(嘿嘿) 如 ...

  3. 2019-5-1 maven学习笔记

    一.maven的好处 同样的项目使用maven工程来实现,由于不需要导入很多jar包,源码很小 原理:根据坐标到项目的仓库里查找需要的依赖 二.安装步骤 1.到http://maven.apache. ...

  4. 深浅copy 和 集合

    1 对于赋值运算,就是共同指向一个内存地址.将一个值赋予一个变量,那么它的内存地址同时也赋予了他,如果值是不可变类型,改变值,就会产生一个新值和新内存地址,如果值是可变类型那么内存地址不会变. s1 ...

  5. Applese 涂颜色(欧拉降幂)

    链接:https://ac.nowcoder.com/acm/contest/330/E 来源:牛客网 题目描述 精通程序设计的 Applese 叕写了一个游戏. 在这个游戏中,有一个 n 行 m 列 ...

  6. CF E. Vasya and a Tree】 dfs+树状数组(给你一棵n个节点的树,每个点有一个权值,初始全为0,m次操作,每次三个数(v, d, x)表示只考虑以v为根的子树,将所有与v点距离小于等于d的点权值全部加上x,求所有操作完毕后,所有节点的值)

    题意: 给你一棵n个节点的树,每个点有一个权值,初始全为0,m次操作,每次三个数(v, d, x)表示只考虑以v为根的子树,将所有与v点距离小于等于d的点权值全部加上x,求所有操作完毕后,所有节点的值 ...

  7. 南昌大学航天杯第二届程序设计竞赛校赛网络同步赛 I

    链接:https://www.nowcoder.com/acm/contest/122/I来源:牛客网 题目描述 小q最近在做一个项目,其中涉及到了一个计时器的使用,但是笨笨的小q却犯难了,他想请你帮 ...

  8. day26 网络通讯的整个流程

    一.网络通信原理 1.  互联网的本质就是一系列的网络协议 2.  互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层 各层的功能简述: [1]物理层:主要定义物理设备标准,如网 ...

  9. 1.1 Rust安装

    从今天起,坚持每天学习10分钟Rust...这是一个刚兴起几年的语言,希望深入地进行学习,为什么呢,因为以下这些让人辛酸的理由..... 最开始学习的是C++,没学太懂,之后又学了C,这时还完全对计算 ...

  10. Mysql 查看表数据以及索引大小

    如果想查看 Mysql 数据库的总的数据量或者某个表的数据或者索引大小,可以使用系统库 information_schema 来查询,这个系统库中有一个 TABLES 表,这个表是用来记录数据库中表的 ...