本文着重总结Elasticsearch的常见API了,进行分析。

  • Index API
  1. 初始化Index,设置shards和replica
PUT http://localhost:9200/firewall_syslog/
{
"settings":{
"index":{
"number_of_shards":5,
"number_of_replicas":0
} }
}

  可以得到创建成功的JSON返回:

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

  2. 获得索引的详细信息:

  获取单个索引信息:

GET http://localhost:9200/firewall_syslog/_settings/

  返回JSON值:

{
"firewall_syslog": {
"settings": {
"index": {
"creation_date": "1499588503266",
"number_of_shards": "5",
"number_of_replicas": "0",
"uuid": "DTeXCyRcRGqhIMkBjupyLg",
"version": {
"created": "5040399"
},
"provided_name": "firewall_syslog"
}
}
}
}

  获得多个索引:

GET http://localhost:9200/server_syslog,firewall_syslog/_settings/

  可获得返回的JSON值:

{
"server_syslog": {
"settings": {
"index": {
"creation_date": "1499324705761",
"number_of_shards": "5",
"number_of_replicas": "0",
"uuid": "x_ke_3yhR2ycMPumgrDEvw",
"version": {
"created": "5040399"
},
"provided_name": "server_syslog"
}
}
},
"firewall_syslog": {
"settings": {
"index": {
"creation_date": "1499588503266",
"number_of_shards": "5",
"number_of_replicas": "0",
"uuid": "DTeXCyRcRGqhIMkBjupyLg",
"version": {
"created": "5040399"
},
"provided_name": "firewall_syslog"
}
}
}
}

  获得所有索引信息:

GET http://localhost:9200/_all/_settings/

  可获得返回JSON值:

{
"server_syslog": {
"settings": {
"index": {
"creation_date": "1499324705761",
"number_of_shards": "5",
"number_of_replicas": "0",
"uuid": "x_ke_3yhR2ycMPumgrDEvw",
"version": {
"created": "5040399"
},
"provided_name": "server_syslog"
}
}
},
"hardware_syslog": {
"settings": {
"index": {
"creation_date": "1499324723964",
"number_of_shards": "5",
"number_of_replicas": "0",
"uuid": "0Mmg81DJR0GWQ3JLTeyUbg",
"version": {
"created": "5040399"
},
"provided_name": "hardware_syslog"
}
}
},
"firewall_syslog": {
"settings": {
"index": {
"creation_date": "1499588503266",
"number_of_shards": "5",
"number_of_replicas": "0",
"uuid": "DTeXCyRcRGqhIMkBjupyLg",
"version": {
"created": "5040399"
},
"provided_name": "firewall_syslog"
}
}
}
}

  3. 新建文档与内容

  使用PUT来新建建Elasticsearch文档内容:

PUT http://localhost:9200/firewall_syslog/name/1/
{
"name": "cisco",
"version": "1.7.1",
"writer": {
"first": "larry",
"second": "tim"
},
"syslog": "1"
}

  返回的JSON信息为:

{
"_index": "firewall_syslog",
"_type": "name",
"_id": "1",
"_version": 2,
"result": "updated",
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"created": false
}

  4. 更新文档中的字段(覆盖更新与Update更新)

  使用POST方法覆盖更新文档关键内容:

POST http://localhost:9200/firewall_syslog/name/1/
{
"name": "cisco",
"version": "1.7.3",
"writer": {
"first": "larry",
"second": "tim"
},
"syslog": "3"
}

  返回JSON关键字updated:

{
"_index": "firewall_syslog",
"_type": "name",
"_id": "1",
"_version": 11,
"found": true,
"_source": {
"name": "cisco",
"version": "1.7.3",
"writer": {
"first": "larry",
"second": "tim"
},
"syslog": "3"
}
}

  使用update接口更新文档内容,修改name字段为juniper:

POST http://localhost:9200/firewall_syslog/name/1/_update/
{
"doc":{
"name":"juniper"
}
}

  返回JSON的值为:

{
"_index": "firewall_syslog",
"_type": "name",
"_id": "1",
"_version": 12,
"result": "updated",
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
}
}

  5. 搜索doc中的关键字段:

  不过出了一些未知的小故障,题住用的是ELasticsearch 5.x版本。不知道为何在head中调用api无法实现以下内容。

GET http://localhost:9200/server_syslog/secure/1?_source=user/

  后面将总结mget与bulk接口。

    

  

  

  

  
 

Elasticsearch学习随笔(二)-- Index 和 Doc 查询新建API总结的更多相关文章

  1. ElasticSearch 学习记录之父子结构的查询

    父子结构 父亲type属性查询子type 的类型 父子结构的查询,可以通过父亲类型的字段,查询出子类型的索引信息 POST /product/_search { "query": ...

  2. Elasticsearch学习随笔(一)--原理理解与5.0核心插件部署过程

    最近由于要涉及一些安全运维的工作,最近在研究Elasticsearch,为ELK做相关的准备.于是把自己学习的一些随笔分享给大家,进行学习,在部署常用插件的时候由于是5.0版本的Elasticsear ...

  3. Elasticsearch 学习(二):安装和使用

    一.安装 安装 Elasticsearch 之前,需要先安装 Java,并配置好 Java 环境变量. 安装好 Java 环境后,进入 Elasticsearch 官网下载安装包. 解压安装包,进入解 ...

  4. Elasticsearch学习笔记(十)批量查询mget、批量增删改bulk

    一.批量查询  mget             GET /_mget {   "docs":[       {         "_index":" ...

  5. Elasticsearch学习系列二(基础操作)

    本文将分为3块讲解Es的基础操作.分别为:索引(index).映射(mapping).文档(document). 索引操作 创建索引库 语法: PUT /索引名称{ "settings&qu ...

  6. 2018/2/11 ELK技术栈之ElasticSearch学习笔记二

    终于有时间记录一下最近学习的知识了,其实除了写下的这些还有很多很多,但懒得一一写下了: ElasticSearch添加修改删除原理:ElasticSearch的倒排索引和文档一旦生成就不允许修改(其实 ...

  7. Elasticsearch学习笔记二

    PS:上一篇已经介绍了ES的一些基础概念以及单机版ES的安装,配置,本文主要介绍ES的集群管理,CRUD以及简单聚合查询. 集群管理 ES的集群部署起来也很方便,将单机版SCP复制几分,修改elast ...

  8. Elasticsearch学习系列之term和match查询

    lasticsearch查询模式 一种是像传递URL参数一样去传递查询语句,被称为简单查询 GET /library/books/_search //查询index为library,type为book ...

  9. Elasticsearch学习系列之term和match查询实例

    Elasticsearch查询模式 一种是像传递URL参数一样去传递查询语句,被称为简单查询 GET /library/books/_search //查询index为library,type为boo ...

随机推荐

  1. (转ORCLE导入导出命令)

    oracle数据库导入导出命令! Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份.   大多情况都可以用Oracle数据导入导出 ...

  2. linux不需要密码ssh登陆

    1. 自动ssh/scp方法A为本地主机(即用于控制其他主机的机器) ;B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;A和B的系统都是Linux在A上运行命令: ...

  3. springboot redis 缓存对象

    只要加入spring-boot-starter-data-redis , springboot 会自动识别并使用redis作为缓存容器,使用方式如下 gradle加入依赖 compile(" ...

  4. 利用nodeJs来安装less以及编译less文件为css文件

    NodeJs 使用nodejs安装less以及编译less文件为css文件 首先下载nodeJs的安装包,按照步骤,安装nodejs. 链接:http://pan.baidu.com/s/1dEsqY ...

  5. React制作吸顶功能总结

    总结一下最近用react写项目时,遇到的一些坑,恩,真的还蛮坑的,主要是设置状态的时候特别不好控制,下面我们一起来看下,这里自己做了几个demo,分别看下, 主页面代码如下: class Head e ...

  6. Idea中执行TestNg报错

    今天在Idea中使用TestNg过程中报错: java.lang.AbstractMethodError: org.testng.remote.RemoteTestNG$DelegatingTestR ...

  7. Vivado简单调试技能

    Vivado简单调试技能 1.关于VIO核的使用 首先配置VIO核: 配置输入输出口的数量5,5 配置输入口的位宽 配置输出口位宽和初始值. 例化与使用: vio_0 U1 ( .clk(clk_27 ...

  8. Spring学习(17)--- 三种装配Bean方式比较

      基于XML配置 基于注解配置 基于Java类配置 Bean定义 <bean   id="..." class="..." /> @Compone ...

  9. 高性能队列Disruptor系列2--浅析Disruptor

    1. Disruptor简单介绍 Disruptor是一个由LMAX开源的Java并发框架.LMAX是一种新型零售金融交易平台,这个系统是建立在 JVM 平台上,核心是一个业务逻辑处理器,它能够在一个 ...

  10. node.js零基础详细教程(7):node.js操作mongodb,及操作方法的封装

    第七章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑. ...