ElasticSearch学习5

news2024/12/17 23:53:28

基本Rest命令说明:

method

url地址

描述

PUT(创建,修改)

localhost:9200/索引名称/类型名称/文档id

创建文档(指定文档id)

POST(创建)

localhost:9200/索引名称/类型名称

创建文档(随机文档id)

POST(修改)

localhost:9200/索引名称/类型名称/文档id/_update

修改文档

DELETE(删除)

localhost:9200/索引名称/类型名称/文档id

删除文档

GET(查询)

localhost:9200/索引名称/类型名称/文档id

查询文档通过文档ID

POST(查询)

localhost:9200/索引名称/类型名称/文档id/_search

查询所有数据

测试

1、创建一个索引,添加
PUT / test1 / type1 / 1 {
	"name": "流柚",
	"age": 18
}

2、字段数据类型
  • 字符串类型
    • text、keyword
      • text:支持分词,全文检索,支持模糊、精确查询,不支持聚合,排序操作;text类型的最大支持的字符长度无限制,适合大字段存储;
      • keyword:不进行分词,直接索引、支持模糊、支持精确匹配,支持聚合、排序操作。keyword类型的最大支持的长度为——32766个UTF-8类型的字符,可以通过设置ignore_above指定自持字符长度,超过给定长度后的数据将不被索引,无法通过term精确匹配检索返回结果。
  • 数值型
    • long、Integer、short、byte、double、float、half floatscaled float
  • 日期类型
    • date
  • 布尔类型
    • boolean
  • 二进制类型
    • binary
  • 等等…
3、指定字段的类型(使用PUT)

类似于建库(建立索引和字段对应类型),也可看做规则的建立

PUT / test2 {
    "mappings": {
        "properties": {
            "name": {
                "type": "text"
            },
            "age": {
                "type": "long"
            },
            "birthday": {
                "type": "date"
            }
        }
    }
}

4、获取建立的规则
GET test2

5、获取默认信息

_doc 默认类型(default type),type 在未来的版本中会逐渐弃用,因此产生一个默认类型进行代替

PUT / test3 / _doc / 1 {
	"name": "流柚",
	"age": 18,
	"birth": "1999-10-10"
}
GET test3
 

如果自己的文档字段没有被指定,那么ElasticSearch就会给我们默认配置字段类型

扩展:

1. GET _cat/indices
  ○ 作用:列出集群中所有的索引。
  ○ 输出:包括索引名、健康状态、文档数、删除文档数、索引大小、主分片数、副本分片数等信息。
2. GET _cat/aliases
  ○ 作用:列出集群中所有的别名及其对应的索引。
  ○ 输出:包括别名、索引名、过滤器等信息。
3. GET _cat/allocation
  ○ 作用:显示集群的分片分配情况,包括哪些节点上分配了哪些分片。
  ○ 输出:包括分片ID、索引名、分片类型(主或副本)、分配到的节点ID、是否为主节点、是否正在分配、是否处于初始化状态等信息。
4. GET _cat/count
  ○ 作用:提供集群中索引、文档、节点等的计数信息。
  ○ 输出:包括索引数、文档数、删除文档数、节点数等统计信息。
5. GET _cat/fielddata
  ○ 作用:显示集群中字段数据的内存使用情况。
  ○ 输出:包括节点ID、主机名、IP地址、字段数据使用的内存大小等信息。
6. GET _cat/health
  ○ 作用:显示集群的健康状态。
  ○ 输出:包括集群名、健康状态(红、黄、绿)、节点数、分片数、活动分片数、初始化分片数、未分配分片数等信息。
7. GET _cat/master
  ○ 作用:显示当前集群的主节点信息。
  ○ 输出:包括主节点的ID、IP地址、节点名等信息。
8. GET _cat/nodeattrs
  ○ 作用:列出集群中所有节点的属性。
  ○ 输出:包括节点ID、属性名、属性值等信息。
9. GET _cat/nodes
  ○ 作用:列出集群中所有的节点及其详细信息。
  ○ 输出:包括节点ID、主机名、IP地址、版本、角色(主、数据、客户端等)、内存使用情况、CPU使用情况等信息。
10. GET _cat/pending_tasks
  ○ 作用:显示集群中等待执行的任务列表。
  ○ 输出:包括任务ID、任务类型、任务描述、源节点ID、任务开始时间、任务优先级等信息。
11. GET _cat/plugins
  ○ 作用:列出集群中所有节点上安装的插件。
  ○ 输出:包括节点名、插件名、插件版本等信息。
12. GET _cat/recovery
  ○ 作用:显示集群中索引分片的恢复状态。
  ○ 输出:包括索引名、分片ID、分片类型、源节点ID、目标节点ID、恢复阶段、恢复进度等信息。
13. GET _cat/repositories
  ○ 作用:列出集群中配置的快照仓库。
  ○ 输出:包括仓库名、仓库类型等信息。
14. GET _cat/segments
  ○ 作用:显示索引的分段信息,包括每个分段的大小、文档数等。
  ○ 输出:包括索引名、分片ID、分段名、是否为主分片、大小、文档数、删除文档数等信息。
15. GET _cat/shards
  ○ 作用:显示集群中所有分片的分配情况。
  ○ 输出:包括索引名、分片ID、分片类型(主或副本)、分配的节点ID、状态等信息。
16. GET _cat/snapshots
  ○ 作用:列出快照仓库中的快照。
  ○ 输出:包括仓库名、快照名、快照状态、开始时间、结束时间、持续时间、失败或成功状态等信息。
17. GET _cat/tasks
  ○ 作用:显示集群中当前正在执行的任务列表。
  ○ 输出:包括任务ID、任务类型、任务描述、节点ID、任务开始时间等信息。
18. GET _cat/templates
  ○ 作用:列出集群中配置的索引模板。
  ○ 输出:包括模板名、模板内容等信息。
19. GET _cat/thread_pool
  ○ 作用:显示集群中线程池的信息。
  ○ 输出:包括线程池名、线程数、队列大小、拒绝执行的请求数等信息。

6、修改


两种方案
①旧的(使用put覆盖原来的值)
●版本+1(_version)
●但是如果漏掉某个字段没有写,那么更新是没有写的字段 ,会消失

PUT / test3 / _doc / 1 {

"name": "流柚是我的大哥",

"age": 18,

"birth": "1999-10-10"

}

GET / test3 / _doc / 1 // 修改会有字段丢失

PUT / test3 / _doc / 1 {

"name": "流柚"

}

GET / test3 / _doc / 1

②新的(使用post的update)
●version不会改变
●需要注意doc
●不会丢失字段

POST / test3 / _doc / 1 / _update {

"doc": {

"name": "post修改,version不会加一",

"age": 2

}

}

GET / test3 / _doc / 1
7、删除
GET /test1DELETE /test1

image.png


8、查询(简单条件)
GET /test3/_doc/_search?q=name:流柚 //都是满足模糊匹配的

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2261303.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分享本周所学——三维重建算法3D Gaussian Splatting(3DGS)

大家好,欢迎来到《分享本周所学》第十二期。本人是一名人工智能初学者,刚刚读完大二。前几天自学了一下3D Gaussian Splatting(3DGS),觉得非常有意思。写这篇文章主要是因为网上大部分关于3DGS的文章都比较晦涩&#x…

【中工开发者】鸿蒙商城app

这学期我学习了鸿蒙,想用鸿蒙做一个鸿蒙商城app,来展示一下。 项目环境搭建: 1.开发环境:DevEco Studio2.开发语言:ArkTS3.运行环境:Harmony NEXT base1 软件要求: DevEco Studio 5.0.0 Rel…

【Qt】按钮类控件:QPushButton、QRadioButton、QCheckBox、ToolButton

目录 QPushButton 例子: QRadioButton 例子: 按钮的常见信号函数 单选按钮分组 例子: QCheckButton 例子: QToolButton QWidget的常见属性及其功能对于它的派生类控件都是有效的(也就是Qt中的各种控件),包括…

UI框架DevExpress XAF v24.2新功能预览 - .NET Core / .NET增强

DevExpress XAF是一款强大的现代应用程序框架,允许同时开发ASP.NET和WinForms。DevExpress XAF采用模块化设计,开发人员可以选择内建模块,也可以自行创建,从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。 在上文中…

ArrayList源码分析、扩容机制面试题,数组和List的相互转换,ArrayList与LinkedList的区别

目录 1.java集合框架体系 2. 前置知识-数组 2.1 数组 2.1.1 定义: 2.1.2 数组如何获取其他元素的地址值?(寻址公式) 2.1.3 为什么数组索引从0开始呢?从1开始不行吗? 3. ArrayList 3.1 ArrayList和和…

阿里云服务器手动部署LNMP环境【官方文档注意事项】

这是官方文档 注意&#xff1a; 要添加安全组&#xff0c;端口为80。否则最后用浏览器访问公网IP没有结果。 Mysql密码策略要求密码至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符&#xff0c;并且密码总长度至少为 8 个字符。sudo mysqladmin -uroot -p<ol…

Invalid default value for ‘gender‘,mysql在idea中字符集设置,default

默认值default创建错误的&#xff0c;设置数据库字符集 我的错误&#xff1a;Invalid default value for ‘gender’ -- 修改数据库字符集 alter database db01 charset utf8;

240004基于Jamva+ssm+maven+mysql的房屋租赁系统的设计与实现

基于ssmmavenmysql的房屋租赁系统的设计与实现 1.项目描述2.运行环境3.项目截图4.源码获取 1.项目描述 该项目在原有的基础上进行了优化&#xff0c;包括新增了注册功能&#xff0c;房屋模糊查询功能&#xff0c;管理员和用户信息管理等功能&#xff0c;以及对网站界面进行了优…

使用Navicat从SQL Server导入表数据到MySQL

在表上右键选择导入向导 选择ODBC 1.内输入ip即可&#xff0c;不需要端口号 一定要勾选允许保存密码 选择需要的表&#xff0c;下一步 根据需求&#xff0c;可修改表名、是否新建表 根据需求修改不同表的字段类型和长度 按需选择导入方式

STM32F407+LAN8720A +LWIP +FreeRTOS ping通

使用STM32CUBEIDE自带的 LWIP和FreeROTS 版本说明STM32CUBEIDE 操作如下1. 配置RCC/SYS2. 配置ETH/USART3. 配置EHT_RESET/LED4. 配置FreeRTOS5. 配置LWIP6. 配置时钟7. 生成单独的源文件和头文件,并生成代码8. printf重定义9. ethernetif.c添加lan8720a复位10. MY_LWIP_Init …

用 Python Turtle 绘制经典汤姆猫:重温卡通角色的经典魅力

用 Python Turtle 绘制经典汤姆猫&#xff1a;重温卡通角色的经典魅力 &#x1f438; 前言 &#x1f438;&#x1f41e;往期绘画>>点击进所有绘画&#x1f41e;&#x1f40b; 效果图 &#x1f40b;&#x1f409; 代码 &#x1f409; &#x1f438; 前言 &#x1f438; 汤…

RabbitMQ个人理解与基本使用

目录 一. 作用&#xff1a; 二. RabbitMQ的5中队列模式&#xff1a; 1. 简单模式 2. Work模式 3. 发布/订阅模式 4. 路由模式 5. 主题模式 三. 消息持久化&#xff1a; 消息过期时间 ACK应答 四. 同步接收和异步接收&#xff1a; 应用场景 五. 基本使用 &#xff…

Y3编辑器文档4:触发器1(界面及使用简介、变量作用域、入门案例)

文章目录 一、触发器简介1.1 触发器界面1.2 ECA语句编辑及快捷键1.3 参数设置1.4 变量设置1.5 实体触发器1.6 触发器复用 二、触发器的多层结构2.1 子触发器&#xff08;在游戏内对新的事件进行注册&#xff09;2.2 触发器变量作用域 三、入门案例3.1 使用触发器实现瞬间移动3.…

【DBeaver】连接带kerberos的hive[Apache|HDP]

目录 一、安装配置Kerberos客户端环境 1.1 安装Kerberos客户端 1.2 环境配置 二、基于Cloudera驱动创建连接 三、基于Hive原生驱动创建连接 一、安装配置Kerberos客户端环境 1.1 安装Kerberos客户端 在Kerberos官网下载,地址如下&#xff1a;https://web.mit.edu/kerberos…

bug:uniapp运行到微信开发者工具 白屏 页面空白

1、没有报错信息 2、预览和真机调试都能正常显示&#xff0c;说明代码没错 3、微信开发者工具版本已经是win7能装的最高版本了&#xff0c;1.05版 链接 不打算回滚旧版本 4、解决&#xff1a;最后改调试基础库为2.25.4解决了&#xff0c;使用更高版本的都会报错&#xff0c;所…

【前端】JavaScript自定义 forEach方法详解与原理分析

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: 前端 文章目录 &#x1f4af;前言&#x1f4af;题目演示与效果演示代码控制台输出结果 &#x1f4af;代码分析与源理解释1. 构造函数 Brray2. 实例化 Brray3. 调用自定义的 forEach &#x1f4af;比较与拓展1. 比较原…

基于卷积神经网络的Caser算法

将一段交互序列嵌入到一个以时间为纵轴的平面空间中形成“一张图”后&#xff0c;基于卷积序列嵌入的推荐&#xff08;Caser&#xff09;算法利用多个不同大小的卷积滤波器&#xff0c;来捕捉序列中物品间的点级&#xff08;point-level&#xff09;、联合的&#xff08;union-…

挑战一个月基本掌握C++(第三天)了解注释、数据类型、变量

一 C注释 程序的注释是解释性语句&#xff0c;您可以在 C 代码中包含注释&#xff0c;这将提高源代码的可读性。所有的编程语言都允许某种形式的注释。 C 支持单行注释和多行注释。注释中的所有字符会被 C 编译器忽略。 C 注释一般有两种&#xff1a; // - 一般用于单行注释…

211-基于FMC的1路1.5G ADC 1路 2.5G DAC子卡

一、板卡概述 FMC-1AD-1DA-1SYNC是我司自主研发的一款1路1G AD采集、1路2.5G DA回放的FMC、1路AD同步信号子卡。板卡采用标准FMC子卡架构&#xff0c;可方便地与其他FMC板卡实现高速互联&#xff0c;可广泛用于高频模拟信号采集等领域。 二、功能介绍 2.1 原理框图 2.2 硬件…

Cloudlog 电台日志系统 request_form SQL注入漏洞复现

0x01 产品简介 Cloudlog 是一个自托管的 PHP 应用程序,可让您在任何地方记录您的业余无线电联系人。使用PHP和MySQL构建的基于Web的业余无线电记录应用程序支持从HF到微波的一般站记录任务。 0x02 漏洞概述 Cloudlog request_form 接口存在未授权SQL注入漏洞,未经身份验证…