首页 > 其他分享 >(七):ElasticSearch客户端操作

(七):ElasticSearch客户端操作

时间:2024-01-18 16:47:56浏览次数:28  
标签:文档 查看 索引 ElasticSearch user 操作 type id 客户端

ElasticSearch服务的客户端,有以下三种方式:

  ·elasticsearch-head插件

  ·elasticsearch提供的Restful接口直接访问

  ·elasticsearch提供的API进行访问

1、elasticsearch-head插件

  启动插件后,访问 http://localhost:9100/ 地址,详情如下:

1.1、概览信息

  概览信息可以查询到建立的索引。

1.2、索引

  点击索引页,可以新建索引,同时可以查看建立的索引信息,包括该索引下的文档数。

0

1.3、浏览数据

  浏览数据页,可以根据索引及类型查看数据,详情如下:

0

1.4、基本查询和复合查询

  基本查询和复合查询在学习完 domain-specific language 领域特定语言,即DSL中会做详细介绍。

2、访问Restful接口

2.1、索引操作

2.1.1、创建索引 index

PUT /索引名
POST /索引名

1.1、创建映射及索引

  请求体内容:

{
  "mappings": {
      "properties": {
        "id": {
          "type": "long",
          "store": true
        },
        "title": {
          "type": "text",
          "store": true,
          "analyzer":"standard"
        },
        "content": {
          "type": "text",
          "store": true,
          "analyzer":"standard"
        } 
      }
  }
}

  详情如下:

0

  通过head插件查询,索引已经建成功。

0

1.2、先创建索引再创建映射 mapping

  使用put方法创建一个索引,无任何请求信息,详情如下:

0

  设置mapping信息,详情如下:

{
    "article": {
            "properties": {
                "id":{
                    "type":"long",
                    "store":true
                },
                "title":{
                    "type":"text",
                    "store":true,
                    "analyzer":"standard"
                },
                "content":{
                    "type":"text",
                    "store":true,
                    "analyzer":"standard"
                }
            }
        }
  }

  postman请求详情如下:

0

  head插件查看如下:

0

2.1.2、查看索引

# 查看所有索引信息
GET /*

  详情如下:

0
# 查看指定索引的索引信息
GET /索引名

  详情如下:

0

2.1.3、更新索引

DELETE /索引名称

  详情如下:

0

2.2、文档操作

2.2.1、post与put方式的区别

提交方式

描述

PUT

提交的id如果不存在就是新增操作,如果存在就是更新操作,id不能为空

POST

如果不提供id会自动生成一个id,如果id存在就更新,如果id不存在就新增

2.2.2、创建文档

PUT|POST /索引名称/类型名/编号

  请求体内容:

{
    "id":1,
    "title":"ElasticSearch 是一个基于 Lucene 的搜索服务器",
    "content":"它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。"
}

  详情如下:

0

  使用head查看结果:

0

  返回字段含义:

字段

含义

_index

索引名称

_type

类型名称

_id

记录id

_version

版本号

_seq_no

并发控制字段,每次更新都会+1,用来实现乐观锁

_primary_term

同上,主分片重新分配,如重启,就会发生变化

found

是否找到结果标识

_source

真正的数据内容

2.2.3、更新文档

  使用 put方式 更新,详情如下:

0

2.2.4、查询文档

4.1、根据id查询

0

4.2、根据querystring查询

  query_string的搜索方式,搜索之前对搜索的关键词分词。

{
    "query": {
        "query_string": {
            "default_field": "title",
            "query": "搜索服务器"
        }
    }
}

2.2.5、删除文档

0

3、Kibana的Dev Tools

  Kibana的安装:(三):Kibana安装

  在Kibana的管理台中,可通过Dev Tools对数据进行检索、过滤等操作。

0

3.1、索引操作

# 创建索引
PUT /user
# 查询索引
GET /user
# 删除索引
DELETE /user

3.1.1、创建索引

0

3.2.2、查看索引

2.1、管理台查看

  查看创建的索引,在Kibana管理台 Management -> StackManagement -> Index Management 中查看刚创建的索引。

0

2.2、命令查看

0

3.2.3、删除索引

0

  再次查看索引,返回404,索引未找到,表示已经被删除。

0

3.2、文档操作

3.2.1、创建文档

# 创建文档,type = _doc
PUT /user/_doc/1
{
  "name":"李四",
  "age":28,
  "city":"杭州"
}
# type = _doc
POST /user/_create/2
{
  "name":"王五",
  "age":26,
  "city":"上海"
}
# type = userinfo
POST /user/userinfo/3
{
  "name":"赵六",
  "age":35,
  "city":"北京"
}

  详情如下:

0 0   0

  7.x的版本的type默认为_doc,废弃了类型type,去掉type是为了提高ES处理数据的效率。

  Elasticsearc基于Lucene开发的搜索引擎,在ES中不同type下名称相同的filed最终在Lucene中的处理方式是一样的。

  两个不同type下的两个name,在ES中同一个索引下其实被认为是同一个filed,必须在两个不同的type中定义相同的filed映射。否则,不同type中的相同字段名称就会在处理中出现冲突的情况,导致Lucene处理效率下降。

3.2.2、查看文档

# 查看文档
GET /user/_doc/1

3.2.3、更新文档

# 更新文档
POST /user/_doc/1
{
  "name":"李四",
  "age":29,
  "city":"杭州"
}
# 查看更新后的文档
GET /user/_doc/1
  0   0

3.2.4、删除文档

# 删除文档
DELETE /user/_doc/1

 

标签:文档,查看,索引,ElasticSearch,user,操作,type,id,客户端
From: https://www.cnblogs.com/RunningSnails/p/17972732

相关文章

  • (五):ElasticSearch基本概念
    1、ElasticSearchElasticsearch是面向文档(documentoriented)的,这意味着它可以存储整个对象或文档(document)。然而它不仅仅是存储,还会索引(index)每个文档的内容使之可以被搜索。在Elasticsearch中,你可以对文档(而非成行成列的数据)进行索引、搜索、排序、过滤。Elasticsearc......
  • (二):ElasticSearch安装部署
    1、安装Jdk版本选择:java8、java11、java4,为了兼容Logstash等的兼容性。2、Elasticsearch安装2.1、Elasticsearch下载下载地址:https://www.elastic.co/cn/,点击即刻体验选择下载获取历史版本选择下载Elasticsearch下载指定版本的Elasticsearc......
  • RocketMQ消息客户端生产与消费的基本实现
    支撑环境JDK:javaversion"1.8.0_391"应用框架:org.springframework.boot:2.7.17RocketMQ客户端SDK:rocketmq-spring-boot-starter:2.2.3生产者消息提供者添加依赖implementation'org.apache.rocketmq:rocketmq-spring-boot-starter:2.2.3'添加配置application.......
  • WidgetsBinding.instance.addPostFrameCallback widget首次渲染完成执行其他操作
    使用场景Flutter中的界面组件(控件)只要一帧就能绘制渲染在屏幕上,当然,这一帧Flutter做了很多事,包括Build、Layout和Painting阶段。而 addPostFrameCallback 就是在每一帧绘制完成后再回调执行一些自己的方法。这个机制的使用场景非常多。比如组件渲染完后做一些操作,像开......
  • SpringBoot中操作Bean的生命周期的方法
    SpringBoot中操作Bean的生命周期的方法路人路人甲Java2024-01-1719:17发表于上海引言在SpringBoot应用中,管理和操作Bean的生命周期是一项关键的任务。这不仅涉及到如何创建和销毁Bean,还包括如何在应用的生命周期中对Bean进行精细控制。Spring框架提供了多种机制来......
  • 差示扫描量热仪器操作步骤
    差示扫描量热仪器(DSC)是热分析中常用的仪器之一,广泛应用于材料科学、药物研究、高分子材料、地质学和石油化工等领域。DSC能够测量物质在加热或冷却过程中的热量变化,从而揭示物质的热性质和化学性质。本文将介绍差示扫描量热仪器的操作步骤。上海和晟HS-DSC-101差示扫描量热仪操作......
  • es安装分词插件elasticsearch-analysis-ik(elasticsearch-plugin方式安装)
    环境:OS:Centos7ES:6.8.5 1.查看当前的安装的插件[root@hadoop-slave1soft]#curl-uelastic:123456-XGET"http://192.168.1.63:19200/_cat/plugins?v&s=component&h=name,component,version,description&pretty"namecomponentversiondescription 2.将分......
  • 【Git】:git 常用操作速查
    前言工作之后无法避免和git打交道,所以专门记录一些常用的git操作。1.克隆指定分支gitclone-b<branchname><remote-repo-url>2.删除指定分支gitbranch-d<localBranchName>#删除本地分支gitpushorigin--delete<remoteBranchName>#删除远程分支3.......
  • C++内存分配揭秘:new操作符::operator new和Placement new的区别
     在C++中,new 操作符、::operatornew 和placementnew是用于动态内存分配的工具,但它们有不同的用法和行为。以下是它们的区别和用法的详细实例:1.new操作符new 操作符用于在堆上动态分配内存,并调用对象的构造函数初始化对象。#include<iostream>classMyClass{p......
  • RabbitMQ学习四 java客户端连接RabbitMQ
    RabbitMQ的工作模式,可以参考官网:https://www.rabbitmq.com/getstarted.html一、简单方式以下两种都是生产者直接发消息给队列,不通过交换机。且发送给队列的消息只能被消费一次。比如一个队列被C1和C2消费,在队列中的消息只会被一个消费者消费。生产者代码逻辑图代码如下:p......