es中的索引对应mysql的数据库、类型对应mysql的表、文档对应mysql的记录、映射对应mysql的索引
索引:index
类型:type
映射:mappings

1、创建索引
在kibana的Dev Tools中输入如下

PUT /lib/
{
    "settings":{
        "index":{
            "number_of_shards":3,
            "number_of_replicas":0
        }
    }
}

索引的名称为lib
number_of_shards:分片的数量为3,分片的数量一旦确定了就不能修改
number_of_replicas: 备份的数量为1,由于就1台服务器因此备份数量为0

创建成果后在右边显示如下

{
  "acknowledged": true,
  "shards_acknowledged": true,
  "index""lib"
}

直接创建一个索引,会使用默认配置
PUT lib2

查看已经创建好的索引的配置
GET /lib/_settings
GET /lib2/_settings

查看所有索引的配置
GET _all/_settings

2、在索引下添加文档
# user 是类型
# 1 是文档的id

PUT /lib/user/1
{
    "first_name""Jane",
    "last_name""Smith",
    "age"32,
    "about""I like to collect rock albums",
    "interests": ["music"]
}

右边显示结果如下

{
  "_index""lib",
  "_type""user",
  "_id""1",
  "_version"1,
  "result""created",
  "_shards": {
    "total"1,
    "successful"1,
    "failed"0
  },
  "_seq_no"0,
  "_primary_term"1
}

如果添加文档时没有指定id,那么这个id会由es自动生成,那么我们要使用POST方式添加文档

POST /lib/user/
{
    "first_name""Douglas",
    "last_name""Fir",
    "age"23,
    "about""I like to build cabinets",
    "interests": ["forestry"]
}

结果如下

{
  "_index""lib",
  "_type""user",
  "_id""3z0vM2kBpR5Gle8qjwsu",
  "_version"1,
  "result""created",
  "_shards": {
    "total"1,
    "successful"1,
    "failed"0
  },
  "_seq_no"0,
  "_primary_term"1
}

3、查询文档
# 根据文档id进行查询
GET /lib/user/1
结果如下

{
  "_index""lib",
  "_type""user",
  "_id""1",
  "_version"1,
  "found": true,
  "_source": {
    "first_name""Jane",
    "last_name""Smith",
    "age"32,
    "about""I like to collect rock albums",
    "interests": [
      "music"
    ]
  }
}

GET /lib/user/3z0vM2kBpR5Gle8qjwsu

# 查看文档的部分信息
GET /lib/user/1?_source=age,about
结果如下

{
  "_index""lib",
  "_type""user",
  "_id""1",
  "_version"1,
  "found": true,
  "_source": {
    "about""I like to collect rock albums",
    "age"32
  }
}

4、修改文档
# 使用一个新的文档覆盖之前的文档,会覆盖文档所有字段的值

PUT /lib/user/1
{
    "first_name""Jane",
    "last_name""Smith",
    "age"36,
    "about""I like to collect rock albums",
    "interests": ["music"]
}

结果如下,会提示结果为updated

{
  "_index""lib",
  "_type""user",
  "_id""1",
  "_version"2,
  "result""updated",
  "_shards": {
    "total"1,
    "successful"1,
    "failed"0
  },
  "_seq_no"1,
  "_primary_term"1
}

# 修改文档中的指定字段的值

POST /lib/user/1/_update
{
    "doc":{
        "age":33
    }
}

结果如下

{
  "_index""lib",
  "_type""user",
  "_id""1",
  "_version"3,
  "result""updated",
  "_shards": {
    "total"1,
    "successful"1,
    "failed"0
  },
  "_seq_no"2,
  "_primary_term"1
}

5、删除文档
DELETE /lib/user/1
结果如下

{
  "_index""lib",
  "_type""user",
  "_id""1",
  "_version"4,
  "result""deleted",
  "_shards": {
    "total"1,
    "successful"1,
    "failed"0
  },
  "_seq_no"3,
  "_primary_term"1
}

6、删除一个索引
DELETE lib2
结果如下
{
“acknowledged”: true
}

7、put和post比较

PUT是幂等方法,而POST并不是。

PUT用于更新操作,POST用于新增操作比较合适。

PUT,DELETE操作是幂等的,所谓幂等就是指不管进行多少次操作,结果都一样。比如,我用PUT修改一篇文章,然后在做同样的操作,每次操作后的结果并没有不同,DELETE也是一样。

POST操作不是幂等,比如常见的POST重复加载问题:当我们多次发出同样的POST请求后,其结果是创建出了若干的资源。

还有一点需要注意的是,创建操作可以使用POST,也可以使用PUT。区别在于POST是作用在一个集合资源之上的(/articles),而PUT操作是作用在一个具体资源之上的(/articles/123),比如说很多资源使用数据库自增主键作为标识信息,而创建的资源的标识信息到底是什么只能由服务端提供,这个时候就必须使用POST。

Kibana 基本操作的更多相关文章

  1. ELK日志分析 学习笔记

    (贴一篇之前工作期间整理的elk学习笔记) ELK官网 https://www.elastic.co   ELK日志分析系统 学习笔记 概念:ELK = elasticsearch + logstas ...

  2. ElasticSearch+Kibana 索引操作( 附源码)

    一 前言 ElasticiSearch 简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elastics ...

  3. ElasticSearch+Kibana 索引操作

    ElasticSearch+Kibana 索引操作 一 前言 ElasticiSearch 简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引 ...

  4. 【ELK】4.spring boot 2.X集成ES spring-data-ES 进行CRUD操作 完整版+kibana管理ES的index操作

    spring boot 2.X集成ES 进行CRUD操作  完整版 内容包括: ============================================================ ...

  5. 【ELK】【docker】【elasticsearch】1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安装ik分词器

    系列文章:[建议从第二章开始] [ELK][docker][elasticsearch]1. 使用Docker和Elasticsearch+ kibana 5.6.9 搭建全文本搜索引擎应用 集群,安 ...

  6. elk系列1之入门安装与基本操作【转】

    preface 我们每天都要查看服务器的日志,一方面是为了开发的同事翻找日志,另一方面是巡检服务器查看日志,而随着服务器数量以及越来越多的业务上线,日志越来越多,人肉运维相当痛苦了,此时,参考现在非常 ...

  7. kibana 操作

    插入时不指明id,不会自动生成id,和视频中的不一样啊 解决: 其实是可以的,不过put不可以 POST才可以 中文输入有问题: 待解决: 基本操作记录 GET _search { "que ...

  8. Elasticsearch搜索常用API(利用Kibana来操作)

    上面我们已经介绍了Elasticsearch的一些基本操作,这篇文章属于进阶篇,我们一起来学习. 前面我们创建了sdb和user文档,现在我们来看如何查询user中所有的文档呢? GET /sdb/u ...

  9. ElasticSearch之安装及基本操作API

    ElasticSearch 是目前非常流行的搜索引擎,对海量数据搜索是非常友好,并且在高并发场景下,也能发挥出稳定,快速特点.也是大数据和索搜服务的开发人员所极力追捧的中间件.虽然 ElasticSe ...

随机推荐

  1. sh_08_打印小星星

    sh_08_打印小星星 # 在控制台连续输出五行 *,每一行星号的数量依次递增 # * # ** # *** # **** # ***** # 1. 定义一个计数器变量,从数字1开始,循环会比较方便 ...

  2. Spring Boot教程(十五)使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程

    在之前的所有Spring Boot和Spring Cloud相关博文中,都会涉及Spring Boot工程的创建.而创建的方式多种多样,我们可以通过Maven来手工构建或是通过脚手架等方式快速搭建,也 ...

  3. CSS 处理溢出强行换行

    CSS折行样式 word-break:break-all;允许单词拆分折行 word-break:keep-all;只能在半角空格或连字符处换行. word-wrap:break-word;在长单词或 ...

  4. 源码阅读-SwiftyJSON

    最后更新:2018-03-19 一.说在前面的话: SwiftyJSON 作为一个 swift 的解析库, 在 Swift4 之前备受欢迎, 目前(2018.3.19) 已经有 1.6w+ Star ...

  5. esLint——规范你的代码(转)

    团队协作时,若是团队的代码风格统一,能够大大减少沟通成本. 什么是 ESLint ? ESLint 是在 ECMAScript/JavaScript 代码中识别和报告模式匹配的工具,它的目标是保证代码 ...

  6. i++ 是线程安全的吗

    相信很多中高级的 Java 面试者都遇到过这个问题,很多对这个不是很清楚的肯定是一脸蒙逼.内心肯定还在质疑,i++ 居然还有线程安全问题?只能说自己了解的不够多,自己的水平有限. 先来看下面的示例来验 ...

  7. 前端面试题-CSS选择器

    一.CSS选择器作用 CSS 选择器用于定位我们想要给予样式的 HTML 元素,但不只是在 CSS 中,JavaScript 对 CSS 的选择器也是支持的,比如 document.document. ...

  8. linux inotify 监控文件系统事件

    https://blog.csdn.net/cheng_fangang/article/details/41075515

  9. zay大爷的神仙题目 D1T1-大美江湖

    在前几天的时候,千古神犇zay(吊打zhx那个)出了一套神仙题目,所以我得来分析分析QWQ 先补个网易云链接QWQ 毕竟是T1嘛,还算是比较简单的,那道题,读完题目就发现是个中等模拟(猪国杀算大模拟的 ...

  10. Openstack_通用模块_Oslo_vmware 创建 vSS PortGroup

    目录 目录 vSS vSSPG vSphere SDK 中相关的网络对象 创建 vSS PortGroup vSS & vSSPG vSS(Standard vSwitch 标准交换机) 为在 ...