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. luoguP1197 [JSOI2008]星球大战 x

    P1197 [JSOI2008]星球大战 题目描述 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中 ...

  2. mysqli使用localhost问题

    <?php $mysqli = new mysqli('localhost', 'root', '123456', 'mysql'); if ($mysqli->connect_error ...

  3. 如何隐藏scroll-Y纵向滚动条,并不影响内容滚动的方法

    网上搜了很多关于隐藏滚动条的文章,发现很多都是只说了如何隐藏scroll-X横向滚动条,对scroll-Y纵向滚动条并没有明确的述说.本文章将介绍3种隐藏滚动条的方法,大家可以结合实际情况,参考文章内 ...

  4. 02 body标签中的相关标签

    今日内容: 字体标签: h1~h6.<font>.<u>.<b>.<strong><em>.<sup>.<sub> ...

  5. 前台ajax传数组,后台java接收

    后端 //添加 @RequestMapping(value = "checkChoise") @ResponseBody ResultJson checkChoise(@Reque ...

  6. Python的 counter内置函数,统计文本中的单词数量

    counter是 colletions内的一个类 可以理解为一个简单的计数 import collections str1=['a','a','b','d'] m=collections.Counte ...

  7. 不能访问windows installer服务

    xp系统安装msi类型的安装程序出现以下错误: 不能访问windows installer服务. 解决办法 1:运行cmd -> regsvr32 msi.dll 运行services.msc- ...

  8. OpenStack Nova Placement API 统一资源管理接口的未来

    目录 目录 Placement API 为何称之为 "未来" 操作对象基本概念 数据库操作样例 Placement API 在创建虚拟机时的调度过程 Placement REST ...

  9. Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid、TGrid

    Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid.TGrid TStringGrid.TGrid 都是从 TCustomGrid 继承; 区别有:1 ...

  10. Unity Ray 射线

    射线:射线是3D世界一个向一个方向发射的一条无终点的线,在发射轨迹中与其他物体发生碰撞时,它将停止发射. 用途:射线范围比较广,多用于碰撞检测(如:子弹飞行是否击中目标).角色移动等. Ray是一个结 ...