当前位置: 首页 > news >正文

【ElasticSearch8.X】学习笔记(二)

【ElasticSearch8.X】学习笔记

  • 四、基础操作
    • 4.1、索引操作
      • 4.1.1、创建索引
      • 4.1.2、查询指定索引
      • 4.1.3、查询所有索引
      • 4.1.4、 删除索引
    • 4.2、文档操作
      • 4.2.1、创建文档
      • 4.2.2、查询文档
      • 4.2.3、修改文档
      • 4.2.4、删除文档
      • 4.2.5、查询所有文档
    • 4.3、数据搜索
      • 4.3.1、匹配查询文档
      • 4.3.2、匹配查询字段
      • 4.3.3、组合"or"
      • 4.3.4、排序
      • 4.3.5、分页
      • 4.3.6、分组
      • 4.3.7、平均值
      • 4.3.8、求和
      • 4.3.9、TopN
  • 五、 索引模板
    • 5.1、创建模板
    • 5.2、查看模板
    • 5.3、验证模板是否存在
    • 5.4、 创建索引
    • 5.5、删除模板

四、基础操作

在本人blog中ElasticSearch7.x使用postman进行演示过基础操作
因此在ElasticSearch8.x通过Kibana进行演示

4.1、索引操作

4.1.1、创建索引

ES 软件的索引可以类比为 MySQL 中表的概念,创建一个索引,类似于创建一个表
ES 不允许修改索引

# 创建索引
# PUT+索引名
PUT myindex# 增加索引带自定义配置(JSON格式)
PUT test_index
{"aliases": {"test1": {}}
}

在这里插入图片描述

4.1.2、查询指定索引

根据索引名称查询指定索引,如果查询到,会返回索引的详细信息

# 查询索引
# GET 索引名称
GET myindex

在这里插入图片描述

4.1.3、查询所有索引

这里请求路径中的_cat 表示查看的意思,indices表示索引,所以整体含义就是查看当前 ES 服务器中的所有索引

# 查询索引
GET _cat/indices

在这里插入图片描述

4.1.4、 删除索引

删除指定已存在的索引

# 删除索引
# DELETE+索引名称
DELETE test_index

在这里插入图片描述

4.2、文档操作

4.2.1、创建文档

这里的文档可以类比为关系型数据库中的表数据,添加的数据格式为 JSON 格式
如果在创建数据时,指定唯一性标识,那么请求范式 POST,PUT 都可以
如果没有指定数据唯一性标识,只能使用 POST 请求

# 创建文档
# 创建文档
POST myindex/_doc/001
{"id" : 1001,"name" : "zhangsan","age" : 30
}
POST myindex/_doc/002
{"id" : 1002,"name" : "lisi","age" : 18
}
POST myindex/_doc/003
{"id" : 1004,"name" : "wangwu","age" : 30
}
POST myindex/_doc/004
{"id" : 1004,"name" : "zhaoliu","age" : 35
}

在这里插入图片描述

4.2.2、查询文档

根据唯一性标识可以查询对应的文档

# 查询文档
GET myindex/_doc/001

在这里插入图片描述

4.2.3、修改文档

修改文档本质上和新增文档是一样的,如果存在就修改,如果不存在就新增

# 修改文档
PUT myindex/_doc/001
{"age":20
}

在这里插入图片描述

4.2.4、删除文档

删除一个文档不会立即从磁盘上移除,它只是被标记成已删除(逻辑删除)

# 删除文档
DELETE myindex/_doc/001

在这里插入图片描述

4.2.5、查询所有文档

# 查询所有文档
GET myindex/_search

在这里插入图片描述

4.3、数据搜索

4.3.1、匹配查询文档

这里的查询表示文档数据中 JSON 对象数据中的 name 属性是lisi

GET myindex/_search
{"query": {"match": {"name": "lisi" #不会查出li si 此时查询关键字是lisi 而li si 的关键词是两个【li】【si】匹配不上}}
}GET myindex/_search
{"query": {"term": {"name": {"value": "li si" #会查出li si 不会查出lisi  此时关键字是li si}}}
}

在这里插入图片描述

4.3.2、匹配查询字段

默认情况下,Elasticsearch 在搜索的结果中,会把文档中保存在_source 的所有字段都返回。如果我们只想获取其中的部分字段,我们可以添加_source 的过滤

GET myindex/_search
{"_source": ["name","age"], "query": {"term": {"name": {"value": "lisi"}}}
}

在这里插入图片描述

4.3.3、组合"or"

GET myindex/_search
{"_source": ["name","age"], "query": {"bool": {"should": [{"match": {"name": "lisi"}},{"match": {"age": 35}}]}}
}

在这里插入图片描述

4.3.4、排序

GET myindex/_search
{"query": {"match_all": {}},"sort": [{"age": {"order": "desc"}}]
}

在这里插入图片描述

4.3.5、分页

GET myindex/_search
{"query": {"match_all": {}},"from": 0,"size": 2
}

在这里插入图片描述

4.3.6、分组

GET myindex/_search
{"aggs": {"ageGroup": {"terms": {"field": "age"}}},"size": 0 #只显示分组信息 不显示源信息
}

在这里插入图片描述

4.3.7、平均值

GET myindex/_search
{"aggs": {"ageAvg": {"avg": {"field": "age"}}},"size": 0
}

在这里插入图片描述

4.3.8、求和

GET myindex/_search
{"aggs": {"ageGroup": {"terms": {"field": "age"},"aggs": {"ageSum": {"sum": {"field": "age"}}}}},"size": 0
}

在这里插入图片描述

4.3.9、TopN

GET myindex/_search
{"aggs": {"Top3": {"top_hits": {"sort": [{"age": {"order": "desc"}}], "size": 3}}},"size": 0
}

在这里插入图片描述

五、 索引模板

我们之前对索引进行一些配置信息设置,但是都是在单个索引上进行设置。在实际开发中,我们可能需要创建不止一个索引,但是每个索引或多或少都有一些共性。比如我们在设计关系型数据库时,一般都会为每个表结构设计一些常用的字段,比如:创建时间,更新时间,备注信息等。elasticsearch 在创建索引的时候,就引入了模板的概念,你可以先设置一些通用的模板,在创建索引的时候,elasticsearch 会先根据你创建的模板对索引进行设置。

5.1、创建模板

# 模板名称小写
PUT _template/mytemplate
{"index_patterns" : ["my*"],"settings" : {"index" : {"number_of_shards" : "1"}},"mappings" : {"properties" : {"now": {"type" : "date","format" : "yyyy/MM/dd"}}}
}

在这里插入图片描述

5.2、查看模板

GET /_template/mytemplate

在这里插入图片描述

5.3、验证模板是否存在

HEAD /_template/mytemplate

在这里插入图片描述

5.4、 创建索引

在创建索引的时候已经定义匹配的索引了 以my开头

PUT mytest

5.5、删除模板

DELETE /_template/mytemplate

相关文章:

【ElasticSearch8.X】学习笔记(二)

【ElasticSearch8.X】学习笔记四、基础操作4.1、索引操作4.1.1、创建索引4.1.2、查询指定索引4.1.3、查询所有索引4.1.4、 删除索引4.2、文档操作4.2.1、创建文档4.2.2、查询文档4.2.3、修改文档4.2.4、删除文档4.2.5、查询所有文档4.3、数据搜索4.3.1、匹配查询文档4.3.2、匹配…...

Ubuntu22.04安装、配置、美化、软件安装、配置开发环境

Ubuntu22.04安装、配置、美化、软件安装、配置开发环境 一、Ubuntu、Windows11(10)双系统安装 因为ubuntu的安装网上的教程特别多了,所以这里不做赘述,推荐使用小破站这个up主的教程:Windows 和 Ubuntu 双系统从安装到…...

企业电子招投标采购系统之系统的首页设计

​​ 功能模块: 待办消息,招标公告,中标公告,信息发布 描述: 全过程数字化采购管理,打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力,为…...

Python爬虫-阿里翻译_csrf

前言 本文是该专栏的第37篇,后面会持续分享python爬虫干货知识,记得关注。 笔者在前面有介绍过百度翻译的案例,感兴趣的同学,可往前翻阅查看(JS逆向-百度翻译sign)。而本文,笔者要介绍的是阿里翻译,相对于百度翻译的参数被逆向需要花点时间,阿里相对于易上手。 下面…...

C语言实现三子棋【详解+全部源码】

大家好,我是你们熟悉的恒川 今天我们用C语言来实现三子棋 实现的过程很难,但我们一定要不放弃 三子棋1. 配置运行环境2. 三子棋游戏的初步实现2.1 建立三子棋分布模块2.2 创建一个名为board的二维数组并进行初始化2.3 搭建棋盘3. 接下来该讨论的事情3.1 …...

双指针法将时间复杂度从 O(n^2) 优化到 O(n)

[1] 什么是双指针法 双指针法(Two Pointers)是一种常见的算法技巧,常用于数组和链表等数据结构中。 双指针法的基本思想是维护两个指针,分别指向不同的位置,通过它们的移动来解决问题。在某些情况下,使用双…...

【SpringBoot系列】 Spring中自定义Session管理,Spring Session源码解析

系列文章:Spring Boot学习大纲,可以留言自己想了解的技术点 目录 系列文章:Spring Boot学习大纲,可以留言自己想了解的技术...

【上位机入门常见问题】SQLServer2019 安装指导

SQLServer2019 安装指导 这里要说一下SQLServer的版本问题,首先说纵向的高低版本,如果大家跟我学习,我教给大家的是T-SQL编程的方法,而不是直接操作菜单的方法,所以,我们学习中只要使用SQLServer2012或以上…...

RabbitMQ第一讲

目录 一、RabbitMQ-01 1.1 MQ概述 1.2 MQ的优势和劣势 1.2.1 优势 1.2.2 劣势 1.2.3 MQ应用场景 1.2.4 常用的MQ产品 1.3 RabbitMQ的基本介绍 1.3.1 AMQP介绍 1.3.2 RabbitMQ基础架构 1.3.3 RabbitMQ的6种工作模式 ​编辑 1.4 AMQP和JMS 1.4.1 AMQP 1.4.2 JMS …...

华为机试题:HJ100 等差数列(python)

文章目录(1)题目描述(2)Python3实现(3)知识点详解1、input():获取控制台(任意形式)的输入。输出均为字符串类型。1.1、input() 与 list(input()) 的区别、及其相互转换方…...

数据推荐 | 人体行为识别数据集

人体行为识别任务旨在通过对人体姿态进行分析,识别出人体的具体动作,为人体行为预测、突发事件处理、智能健身、智能看护等领域提供技术支持。 图片 图片 人体行为识别数据标注方式 人体行为数据通用的标注方式包括人体关键点标注和动作标签标注&#…...

667真题分析 | 2023年667真题简要分析和答题思路参考

2023年667真题简要分析和答题思路参考 文章目录 2023年667真题简要分析和答题思路参考前言1. 名词解释2. 简答题3. 分析题3.1 答题框架(套路)3.2 答题框架实战3.2.1 图书情报档案事业如何在文化自信、文化强国中发挥自己的地位和作用3.2.2 高校图书馆如何发挥空间资源的功能和…...

配置 Docker 使用 GPU

准备工作 首先你需要准备一台拥有GPU的实例,在这里我将使用阿里云的竞价实例来做演示,因为它对于短期使用GPU更加划算。 注意,本篇文章将教你手动进行GPU驱动的配置,所以在购买时选择系统的时候不要选择自动安装GPU驱动。 具体关…...

「并发编程实战」常见的限流方案

「并发编程实战」常见的限流方案 文章目录「并发编程实战」常见的限流方案一、概述二、计数器限流方案三、时间窗口限流方案四、令牌桶限流方案五、漏桶限流方案六、高并发限流算法小结文章参考: 追忆四年前:一段关于我被外企CTO用登录注册吊打的不堪往事…...

IO 复习

IO 把电脑硬盘中的数据读到程序中,称为输入,进行数据的read操作 把程序往外部设备写数据,称为输出,进行数据的write操作 File类 一个File对象可以表示计算机硬盘上的一个文件或目录(文件夹) 可以获取文件信息,创建文件,删除文件 但是不能对文件中的数据进行读写操作 一些…...

什么是项目管理

项目管理(简称PM),就是将知识、技能、工具与技术应用于项目活动,以满足项目的要求。项目管理通过合理运用与整合特定项目所需的项目管理过程得以实现。项目管理使组织能够有效且高效地开展项目 “现代管理,项目就是一切…...

什么是入站营销?如何向合适的受众推销

没有什么比入站营销更有效地优先考虑客户体验了。 入站营销可为您的客户在他们需要的时间和地点准确提供他们想要的东西。它以最有机的方式在您的行业中建立信任、忠诚和权威。 什么是入站营销? 入站营销是一种商业方法,可提供优质内容和量身定制的客户…...

Qt 崩溃 corrupted double-linked list Aborted

文章目录摘要1 使用全局静态变量2 不取第一个和最后一个数3 将数据计算放到同一线程计算4 替换槽函数5 修改传值为const6 神奇的环境因素7 更神奇的板子差异8 另一个细节Aborted最后关键字: Qt、 Aborted、 corrupted、 double、 linked 摘要 额,结论&…...

牛逼了!这是什么神仙面试宝典?半月看完25大专题,居然斩获阿里P7offer

这是什么神仙面试宝典?半月看完25大专题,居然斩获阿里P7offer???????容我小小的嘚瑟一下下啦~~这份神仙面试宝典总共有25大专题:专题一:JavaOOP面…...

单链表详解

单链表一.概念二.一些类型的创建三.尾插四.头插五.头删尾删六.打印链表七.单链表查找,任意位置插入,任意位置删除八.源代码一.概念 该篇链表博客是按照工程项目的格式来记录的,与平常的算法链表有些许不同,注意区分。 二.一些类型的创建 三.尾…...

【AUTOSAR-CanNM】-3.1-如何让ECU发出的首帧是NM帧(Tx Nm报文先于Tx App应用报文发出)

点击返回「《Autosar_BSW高阶配置》总目录」 案例背景(共5页精讲):该篇博文将告诉您: 如何让ECU发出的首帧/第一帧是网络管理NM报文/帧(Tx Nm报文先于Tx App应用报文发出) 目录 1 图解详述APP报文和NM报文是如何发送的...

html常用标签2和语法练习

目录 1.表单标签 form标签 input标签 选择框 复选框:checkbox 按钮框:button 文件选择框 多行编辑框:textarea 2.html语法练习 展示简历信息 填写简历信息 ​编辑 3.HTML特殊字符 1.表单标签 表单是让用户输入信息的重要途径 表单域:包含表单元素的区域,重点是form…...

【go语言之thrift协议三之client端分析】

go语言之thrift协议之client端分析runClientOpenprotocolFactory.GetProtocolhandleClientNewTStandardClientNewCalculatorClienthandleClient的具体实现上一篇文章分析了thrift协议server端的实现,这边还是基于官方的示例去分析。 import ("crypto/tls"…...

Codeforces Round #855 (Div. 3) A-E

传送门 A. Is It a Cat? 题意 给你一个只有英文字母的字符串,问你这个字符串是否由连续的’m’, ‘e’, ‘o’,‘w’,(顺序不能改变)构成,并且不区分大小写。 如: “meow”, “mmmEeOWww”, “MeOooOw” 是符合要求…...

3/3操作系统作业

目录 1.前趋图和程序执行 (1)前驱图 (2)程序的顺序执行 (3)程序的并发执行 2.进程的描述 (1)进程的定义与特征 ​编辑​编辑(2)进程控制块​编辑 &…...

「C/C++」 标准文件操作大全

一、设备文件(运行程序时会默认打开这三个设备文件) stdin:标准输入,默认为当前终端(键盘),我们使用的scanf、getchar函数默认从此终端获得数据。stdout: 标准输出,默认…...

一款SAST工具需要支持多少种编译器呢?

除了Java语言,C#语言之外,C、C语言是编译器类型最多的编程语言,有几十种编译器,这些编译器方言为研发SAST工具带来了巨大的工作量,很多产品由于无法适配客户的编译器,导致无法检测。下面我们罗列一下国外和…...

jvm mat分析dump文件

jvm调优中,经常使用dump来分析是否存在大对象导致频繁full gc,以下为使用步骤: 一、获得服务进程 ps -ef | grep list-app | grep -v grep 二、生成dump文件 jmap -dump:formatb,filexxx.dump pid jmap -dump:filetest.hprof,formatb 3307…...

python16行代码获取原神全角色+全语音

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 本来是不玩原神的,但是实在是经不住双重诱惑呀~ 毕竟谁能拒绝角色风景超级好看又可以爬树、炸鱼、壶里造房子、抓小动物、躲猫猫的游戏捏~ 今天点进官网~角色得配音让我沉陷其中,于是 我决定把他们爬…...

链接投票二维码制作制作投票链接视频选举投票制作

关于微信投票,我们现在用的最多的就是小程序投票,今天的网络投票,在这里会教大家如何用“活动星投票”小程序来进行投票。我们现在要以“信赖挚友”为主题进行一次投票活动,我们可以在在微信小程序搜索,“活动星投票”…...

服装平面广告设计图片/杭州seo公司服务

微信的推送规则进行了调整如果文章对你有用,请在文末点击“在看”,“分享”和“赞”这样就不会错过每一篇推送了曾经看到过一部红极一时的纪录片《寿司之神》。小野二郎是世界上年纪最大的米其林三星主厨,老爷子一辈子就钻研了一件事&#xf…...

b2b网站开发/2023年东莞疫情最新消息

我相信,有很多小伙伴在看到这篇文章时就有了很多问号:用vim?疯了吧?sublime不香吗?pycharm不香吗?jupyter notebook不香吗?我这可是最新版的windows 100操作系统诶,你要劝我回到Dos/…...

买网站去哪买/百度seo学院

一.请简述MySQL配置文件的加载顺序? 二.MySQL启动时如果找不到配置(参数)文件,会报错还是启动? 三.如何查看MySQL参数? 四.如何修改MySQL参数? 五:MySQL有哪些类型表空间,简述各自作用? 六&…...

石家庄最好的网站建设公司/短视频精准获客系统

四大安全顶会看的话,目前主要还是前三个一、S&P:IEEE Symposium on Security and Privacy 网址: 链接. 简介:自1980年以来,IEEE安全与隐私研讨会(S&P)一直是介绍计算机安全和电子隐私…...

重庆网站建设 优化/seo排名如何

多维空间中的大统一理论 基础物理研究提出用于宏观世界的广义相对论和微观世界的量子理论,但其特性相差很远,为了将其融合,又提出了弦理论,为10维空间,进而提出11位的超弦理论。我们理解起来很困难,今天我想…...

广西网站设计欣赏/武汉seo网站排名优化公司

Datagrid 控件是 Microsoft ASP.NET 中功能最强、用途最广的 Web 控件之一,这一点已经得到了 ASP.NET 权威人士的认同。虽然 Datagrid 控件易于使用,但同样易于给使用者带来麻烦。以下是许多人所犯的一些错误,这些人包括从初学者到富有经验的…...