ElasticSearch学习5

server/2024/12/17 11:51:38/

基本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.ppmy.cn/server/150885.html

相关文章

Coding Caprice - monotonic stack1

739. 每日温度 class Solution { public:vector<int> dailyTemperatures(vector<int>& temperatures) {stack<int> st;int numt temperatures.size();vector<int> out(numt, 0);for(int i0; i<numt; i){while(!st.empty() && tempera…

每天40分玩转Django:Django模型

Django框架学习第2天&#xff1a;Django模型 一、课程概述 学习项目具体内容预计用时模型定义模型类编写、字段类型、关系类型90分钟ORM操作增删改查、高级查询、聚合函数90分钟数据库迁移迁移命令、迁移文件、数据导入导出60分钟 二、模型定义 2.1 基本模型结构 # blog/mo…

scala的泛型特质的应用场景

//泛型特质的应用场景 //作比较找出最大值 //定义一个函数&#xff0c;用来求List元素中的最大值参考代码&#xff1a;object Test4 {def getMax[T](list:List[T])(implicit ev:T > Ordered[T]): T {list.reduce((a:T,b:T)> if(a>b) a else b)}def main(args: Array…

因特网的发展三个阶段

因特网的发展大致分为哪几个阶段&#xff0c;这几个阶段的主要特点 第一个阶段——单个网络到互联网 1969年美国创建第一个分组交换的单个网络ARPANET&#xff08;单个的分组交换网&#xff09;所有要连接在ARPANET上的主机都直接与就近的节点交换机相连&#xff1b; 20世纪…

React系列(一)——React的入门和组件化思想

前言 React是现在前端使用频率最高的三大框架之一&#xff0c;React率先提出虚拟DOM的思想和实现&#xff0c;使其保持有良好的性能。同时&#xff0c;掌握React语法不仅可以写Web应用的页面&#xff0c;还可以写IOS和安卓的页面&#xff0c;可以说是实用性很强的框架了。本篇文…

《操作系统 - 清华大学》7 -2:全局页面置换算法:两个全局置换算法

文章目录 1. 工作集页面置换算法1.1 工作集置换算法示例 2. 缺页率页面置换算法2.1 缺页率2.2 缺页率页面置换算法2.3 缺页率置换算法示例 1. 工作集页面置换算法 它的思想很简单&#xff0c;前面介绍了工作集的概念&#xff0c;有一个工作集的窗口&#xff0c;窗口由 t Δ &a…

FlowNex 中的两相建模基础知识

通过 FlowNex 中的两相建模解开高效流体动力学的秘密&#xff0c;彻底改变制造业。 挑战 两相流是指两个不同相&#xff08;通常是液体和气体&#xff09;同时流动&#xff0c;它们具有不同的特性和行为。在制造业中&#xff0c;了解两相流对于优化热交换器、化学反应器和流体…

git常用指令

1.克隆远程仓库&#xff08;第一次获取项目时使用&#xff09;&#xff1a; git clone <repository_url> 2.从远程仓库master分支拉取最新的变更&#xff08;如果你已经克隆了仓库&#xff0c;只需要更新本地副本&#xff09;&#xff1a; git pull origin master 3.…