DSL操作ElasticSearch基础命令

这篇具有很好参考价值的文章主要介绍了DSL操作ElasticSearch基础命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、DSL操作ES-RESTful风格

DSL操作ElasticSearch基础命令

二、DSL操作索引库

# 新增索引库语法
PUT 索引库名

# 查询索引库
GET 索引库名

# 删除索引库
DELETE 索引库名

# 关闭索引库(注意:关闭索引库不能更改数据)
POST 索引库名/_close

# 开放索引库
POST 索引库名/_open

2.1 PUT 添加索引

PUT goods_index

DSL操作ElasticSearch基础命令

2.2 GET 查询索引

GET goods_index

DSL操作ElasticSearch基础命令

2.3 DELETE 删除索引

DELETE goods_index

DSL操作ElasticSearch基础命令

2.4 POST 打开/关闭索引库

关闭索引
POST goods_index/_close

DSL操作ElasticSearch基础命令

打开索引库
POST goods_index/_open

DSL操作ElasticSearch基础命令

三、DSL操作映射

3.1 数据类型

3.1.1 简单数据类型

1.字符串-text:可以分词,不支持聚合(统计)

分词的数据,内容较为复杂,统计没有意义

2.字符串-keyword:不会分词,将全部内容作为一个词条,支持聚合(统计)

例如:有个文档(相当于数据库一条数据),其中一个字段的值是华为手机
text: 华为、手机
keyword: 华为手机

3.数值
DSL操作ElasticSearch基础命令
4.布尔(boolean)

5.二进制(binary)

6.范围类型(integer_range, float_range, long_range, double_range, date_range)

7.日期(date)

3.1.2 复杂数据类型

1.数组 []:没有专用的array数据类型,任何一个字段的值,都可以被添加0个到多个,但要求他们的类型必须一致,当类型一直含有多个值存储到ES中会自动转化成数组类型 [“eric”,“jack”] List Set

2.对象 {} Map User {key:value,key:value}

3.GEO: geo_point 地理位置坐标值

小结:
1.text:适用于分词的场景
2.keyword:适用于结构化精确的查询
3.数字:适合范围查询
4.boolean:适合true或false
5.geo_point:地理位置坐标值

3.2 创建索引库并设置映射

3.2.1 语法格式

# 创建索引库并设置映射语法
PUT person
{
 "mappings": {
   "properties": {
     "属性名":{
       "type": "数据类型"
     },
	 ...
   }
 }
}

3.2.2 举例

#创建索引库并且设置映射(创建person索引库,映射两个字段name、age)
PUT person
{
  "mappings": {
    "properties": {
      "name":{
        "type": "text"
      },
      "age":{
        "type": "integer"
      }
    }
  }
}

DSL操作ElasticSearch基础命令

3.3 查询索引库映射

3.3.1 语法格式

# 查询索引库映射语法
GET 索引库名/_mapping

3.3.2 举例

# 查询索引库映射
GET person/_mapping

DSL操作ElasticSearch基础命令

3.4 增加映射字段

3.4.1 语法格式

# 增加映射字段语法
PUT 索引库名/_mapping
{
  "properties": {
     "新增属性名":{
       "type": "数据类型"
     }
   }
}

3.4.2 举例

#增加映射字段
PUT person/_mapping
{
  "properties":{
    "sex":{
      "type":"keyword"
    }
  }
}

注意:一旦涉及到ES的映射的字段修改或删除,都必须重建索引库

DSL操作ElasticSearch基础命令
注意:ES不能单独修改映射字段名称或类型,不能单独删除某个字段,如果需要修改,直接删除整个索引库再重建

四、DSL操作文档

4.1 添加文档

4.1.1 指定id

4.1.1.1 语法格式
# 添加文档,指定id   
POST 索引库名/_doc/指定id
{
  "属性名":属性值,
  ...
}
4.1.1.2 举例
POST person/_doc/1
{
  "name":"张三",
  "age":18,
  "sex":"男"
}

DSL操作ElasticSearch基础命令

4.1.2 不指定id

4.1.2.1 语法格式
# 添加文档,不指定id   
POST 索引库名/_doc
{
  "属性名":属性值,
  ...
}
4.1.2.2 举例
POST person/_doc
{
  "name":"翠花",
  "age":20,
  "sex":"女"
}

DSL操作ElasticSearch基础命令

4.2 查询文档

4.2.1 查询单个

GET person/_doc/1   

DSL操作ElasticSearch基础命令

GET person/_doc/JHOaYoUBDyHDigT_2Vu8 

DSL操作ElasticSearch基础命令

4.2.2 查询全部

GET person/_search

DSL操作ElasticSearch基础命令

4.3 修改文档

4.3.1 语法格式

# 修改一条文档数据
PUT 索引库名/_doc/指定id
{
  "属性名":属性值,
  ...
}

4.3.2 举例

PUT person/_doc/1
{
  "name":"如花",
  "age":20,
  "sex":"女"
}

DSL操作ElasticSearch基础命令

再次查看
GET person/_doc/1    

DSL操作ElasticSearch基础命令

4.4 删除文档

4.4.1 语法格式

# 删除一条文档数据
DELETE 索引库名/_doc/指定id

4.4.2 举例

DELETE person/_doc/1

DSL操作ElasticSearch基础命令

五、Kibana客户端提示#! 解决

5.1 问题

Kibana提示#! Elasticsearch built-in security features are not enabled. Without authentication, your cluster could be accessible to anyone. Seehttps://www.elastic.co/guide/en/elasticsearch/reference/7.15/security-minimal-setup.html to enable security.
DSL操作ElasticSearch基础命令

5.2 解决方案

在es的安装路径下的config目录下elasticsearch.yml文件去 配置禁用安全选项xpack.security.enabled,之后重启Elasticsearch和kibana
DSL操作ElasticSearch基础命令

network.host: 127.0.0.1
xpack.security.enabled: false

DSL操作ElasticSearch基础命令
重启ES
DSL操作ElasticSearch基础命令文章来源地址https://www.toymoban.com/news/detail-495859.html

到了这里,关于DSL操作ElasticSearch基础命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ES专题】ElasticSearch 高级查询语法Query DSL实战

    个人在学习的过程中,感觉比较吃力的地方有如下: 语法结构比较陌生 没有中文文档, 只能看英文 其他博客也比较少介绍语法结构。比如说,为什么查询中会出现 query 有ES入门基础,且想进一步学习ES基本操作的朋友 系列上一篇文章:《【ES专题】ElasticSearch快速入

    2024年02月06日
    浏览(36)
  • 【Elasticsearch】DSL操作相关

    索引操作 ES的索引与SQL的表很类似 新建索引 查询索引 查看所有索引 这里的查询结果表示索引的状态信息,按顺序数据表示结果如下: 内容 含义 具体描述 yellow 单点正常 当前服务器健康状态: green (集群完整) yellow (单点正常、集群不完整) red(单点不正常) open status 索引打开

    2024年02月06日
    浏览(26)
  • 一文掌握系列之Es的DSL查询操作

    ES在查询的时候非常方便, 笔者总结了Es的基础查询操作,供大家指正和学习。 match_all 全部查询,配合其他的操作进行数据的筛选,字段的筛选等,并且伴随着条件的增加,建议使用POST方式, 筛选字段 _source对需要的字段进行筛选。 分页 from a size b 拿到目的集合中索引为

    2023年04月12日
    浏览(26)
  • SpringCloud微服务(三)RabbitMQ、SpringAMQP、elasticsearch、DSL、MQ、ES详细介绍

    目录 一、初始MQ 同步调用 异步调用 什么是MQ 执行下面的命令来运行MQ容器: 如果冲突了,可以先查询 RabbitMQ概述  常见消息模型 HelloWorld案例 二、SpringAMQP 引入依赖 Work Queue  消费预取限制 ​编辑 发布、订阅 发布订阅Fanout Exchange 发布DirectExchange 发布订阅TopicExchange  消息转

    2024年02月12日
    浏览(32)
  • elasticsearch 7.9.3知识归纳整理(二)之 es基本原理及使用kibana操作es的常见命令

    一、es的基本原理与基础概念 1.1 倒排索引 倒排索引 源于实际应用中需要根据属性的值来查找记录。这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引(inverted index)。带

    2024年02月12日
    浏览(36)
  • Elasticsearch 基础操作与 ES-head 插件的使用

    Elasticsearch 安装请参考 搭建ELK日志管理平台 - - 2 ElasticSearch部署 主节点 :默认配置是1个分片1个副本 主数据分片 : 数据在分片中被分组存储,例如如果分片是3个的话,存入数据 hello 可能被拆分存储在这几个分片之中 副本数据分片 : 对数据分片的拷贝 集群健康值 : 黄色表示

    2023年04月16日
    浏览(34)
  • 袁庭新ES系列15节|Elasticsearch客户端基础操作

    上一章节我们介绍了搭建Elasticsearch集群相关的知识。那么又该如何来操作Elasticsearch集群呢?在ES官网中提供了各种语言的客户端,我们在项目开发过程中有多种Elasticsearch版本和连接客户端可以选择,那么他们有什么区别?这一章节袁老师带领大家来学习Elasticsearch客户端相关

    2024年04月25日
    浏览(39)
  • Elasticsearch基础学习-常用查询和基本的JavaAPI操作ES

    Elasticsearch是一个基于 lucene 、分布式、通过Restful方式进行交互的 近实时搜索 平台框架。 ELK技术栈是Elasticsearch、Logstash、Kibana三大开元框架首字母大写简称。 而Elasticsearch 是一个 开源的高扩展的分布式全文搜索引擎 , 是整个 ELK技术栈的核心。 Elasticsearch是一个基于lucene、分

    2024年02月11日
    浏览(48)
  • ElasticSearch基础1——索引和文档。Kibana,RestClient操作索引和文档+黑马旅游ES库导入

    导航: 【黑马Java笔记+踩坑汇总】JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外卖+SpringCloud/SpringCloudAlibaba+黑马旅游+谷粒商城 黑马旅游源码:  https://wwmg.lanzouk.com/ikjTE135ybje 目录 1.初识弹性搜索elasticsearch 1.1.了解ES 1.1.1.elasticsearch的作用 1.1.2.ELK弹性栈 1.1.3.elasticsearch和lucene 1.1.4.搜索引擎技术

    2024年02月01日
    浏览(42)
  • 尚硅谷ES基础 - RESTful & JSON&基本概念&倒排索引&HTTP

    RESTful JSON REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。 Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求

    2024年02月21日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包