ElasticSearch扫盲概念篇[ES系列] - 第500篇

news2024/11/17 17:23:41

历史文章(文章累计500+)

《国内最全的Spring Boot系列之一》

《国内最全的Spring Boot系列之二》

《国内最全的Spring Boot系列之三》

《国内最全的Spring Boot系列之四》

《国内最全的Spring Boot系列之五》

《国内最全的Spring Boot系列之六》

ElasticSearch详细搭建以及常见错误high disk watermark [ES系列] - 第497篇

Elasticsearch可视化平台Kibana [ES系列] - 第498篇

Elasticsearch安装分词插件[ES系列] - 第499篇

悟纤:师傅,脑瓜疼来着~

师傅:徒儿这是怎么了?

悟纤:师傅,我感觉自己总是很忧虑,无法真正开心起来。

师傅:徒儿,我理解你的感受。有时候,我们会被一些琐事和烦恼所困扰,导致心情不畅。但是,要想获得更开心,我们需要学会调整自己的心态

悟纤:师傅,怎么调整呢?

师傅:首先,你要学会放下那些无谓的忧虑和烦恼。不要让它们占据你的心灵,影响你的情绪。尝试转移注意力,去做一些让你感到快乐和满足的事情。

悟纤:弟子明白了,要学会放下烦恼,去做让自己开心的事情。

师傅:很好,徒儿。此外,你还可以尝试改变自己的思维方式。不要总是看到事情的负面,试着从积极的角度去看待问题。记住,生活中总会有不如意的事情,但是我们可以选择如何去面对它。

悟纤:师傅,徒儿会努力尝试的。

师傅:我相信你一定能够做到。此外,你还可以尝试寻找一些能够帮助你放松身心的方法,比如运动、听音乐、阅读等。这些活动可以帮助你缓解压力,让你的心情变得更加愉悦。

悟纤:徒儿明白了,谢谢师傅的指导。

导读

Hi,大家好,我是悟纤。我就是我,不一样的烟火。我就是我,与众不同的小苹果。

这一节来看看ES的概念。

一、ES概念

1.1 节点:Node

ElasticSearch 是以集群的方式运行的,而节点是组成ES集群的基本单位,所以每个 ElasticSearch 实例就是一个节点每个物理机器上可以有多个节点使用不同的端口和节点名称

节点按主要功能可以分为三种:主节点(Master Node),协调节点(Coordianting Node)和数据节点(Data Node)。下面简单介绍下:

主节点:处理创建,删除索引等请求,维护集群状态信息。可以设置一个节点不承担主节点角色

协调节点:负责处理请求。默认情况下,每个节点都可以是协调节点。

数据节点:用来保存数据。可以设置一个节点不承担数据节点角色

http://localhost:9200/_cat/nodes?v

1.2角色:Roles

ES的角色分类:

· 主节点(active master):一般指活跃的主节点,一个集群中只能有一个,主要作用是对集群的管理。

· 候选节点(master-eligible):当主节点发生故障时,参与选举,也就是主节点的替代节点。

· 数据节点(data node):数据节点保存包含已编入索引的文档的分片。数据节点处理数据相关操作,如 CRUD、搜索和聚合。这些操作是 I/O 密集型、内存密集型和 CPU 密集型的。监控这些资源并在它们过载时添加更多数据节点非常重要。

· 预处理节点(ingest node):预处理节点有点类似于logstash的消息管道,所以也叫ingest pipeline,常用于一些数据写入之前的预处理操作。

注意:如果 node.roles 为缺省配置,那么当前节点具备所有角色。

1.3索引:Index

索引在 ES 中所表述的含义和 MySQL 中的索引完全不同,在 MySQL 中索引指的是加速数据查询的一种特殊的数据结构,如 normal index。

而在 ES 中,索引表述的含义等价于 MySQL 中的表(仅针对 ES 7.x 以后版本),注意这里只是类比去理解,索引并不等于表。

在 ES 中,索引在不同的特定条件下可以表示三种不同的意思

· 表示源文件数据:当做数据的载体,即类比为数据表,通常称作 index 。例如:通常说 集群中有 product 索引,即表述当前 ES 的服务中存储了 product 这样一张“表”。

· 表示索引文件:以加速查询检索为目的而设计和创建的数据文件,通常承载于某些特定的数据结构,如哈希、FST 等。例如:通常所说的 正排索引 和 倒排索引(也叫正向索引和反向索引)。就是当前这个表述,索引文件和源数据是完全独立的,索引文件存在的目的仅仅是为了加快数据的检索,不会对源数据造成任何影响,

· 表示创建数据的动作:通常说创建或添加一条数据,在 ES 的表述为索引一条数据或索引一条文档,或者 index 一个 doc 进去。此时索引一条文档的含义为向索引中添加数据。

索引的组成部分:

· alias:索引别名

· settings:索引设置,常见设置如分片和副本的数量等。

· mapping:映射,定义了索引中包含哪些字段,以及字段的类型、长度、分词器等。

1.4类型:Type(ES 7.x 之后版本已删除此概念)

在较早的ES版本中,索引可以包含多个类型,每个类型代表了不同的文档结构。然而,从ES 7.x版本开始,类型已经被弃用,一个索引只能包含一个文档类型。

ES 7.x

· 不推荐在请求中指定类型。例如,索引文档不再需要文档type。新的索引 API 适用PUT {index}/_doc/{id}于显式 ID 和POST {index}/_doc 自动生成的 ID。请注意,在 7.0 中,_doc是路径的永久部分,表示端点名称而不是文档类型。

· 索引创建、索引模板和映射 API 中的include_type_name参数将默认为false. 完全设置参数将导致弃用警告。

· _default_映射类型被删除 。

ES 8.x

· 不再支持在请求中指定类型。

· 该include_type_name参数被删除。

1.5文档:Document

文档是ES中的最小数据单元。它是一个具有结构化JSON格式的记录。文档可以被索引并进行搜索、更新和删除操作。

文档元数据,所有字段均以下划线开头,为系统字段,用于标注文档的相关信息:

· _index:文档所属的索引名

· _type:文档所属的类型名

· _id:文档唯一id

· _source: 文档的原始Json数据

· _version: 文档的版本号,修改删除操作_version都会自增1

· _seq_no: 和_version一样,一旦数据发生更改,数据也一直是累计的。Shard级别严格递增,保证后写入的Doc的_seq_no大于先写入的Doc的_seq_no。

· _primary_term: _primary_term主要是用来恢复数据时处理当多个文档的_seq_no一样时的冲突,避免Primary Shard上的写入被覆盖。每当Primary Shard发生重新分配时,比如重启,Primary选举等,_primary_term会递增1。

1.6对比

elasticSearch是面向文档,关系型数据库 和 ElasticSearch 客观的对比!

elasticsearch(集群)中可以包含多个索引(数据库),每个索引中可以包含多个类型(表),每个类型下又包含多个文档(行),每个文档中又包含多个字段(列)

1.7 Node 与 Cluster

Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例。

单个 Elastic 实例称为一个节点(node)。一组节点构成一个集群(cluster)。

• 阿里巴巴前高级研发工程师

• 三家千万级互联网企业技术顾问

• MBTI/盖洛普技术专家

• 厦门某高校外聘教师

• 51CTO特约合作讲师

• 网易云课堂签约讲师

•《深入理解设计模式》作者

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

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

相关文章

每日一题——LeetCode1252.奇数值单元格的数目

进阶:你可以设计一个时间复杂度为 O(n m indices.length) 且仅用 O(n m) 额外空间的算法来解决此问题吗? 方法一 直接模拟: 创建一个n x m的矩阵,初始化所有元素为0,对于indices中的每一对[ri,ci],将矩…

5W紫外激光打标机优势特点

紫外激光打标机在当今市场上备受关注,而5W紫外激光打标机更是其中的佼佼者。作为一种高精度、高效率的激光加工设备,5W紫外激光打标机在各个领域都有着广泛的应用。 首先,让我们来了解一下5W紫外激光打标机的基本原理。紫外激光打标机利用高能…

Springboot日志框架logback与log4j2

目录 Springboot日志使用 Logback日志 日志格式 自定义日志格式 日志文件输出 Springboot启用log4j2日志框架 Springboot日志使用 Springboot底层是使用slf4jlogback的方式进行日志记录 Logback日志 trace:级别最低 debug:调试级别的&#xff0c…

Google play 应用批量下架的可能原因及应对指南

想必大多数上架马甲包或矩阵式上架的开发者们,都遭遇过应用包批量被下架、账号被封的情况。这很令人苦恼,那造成这种情况的可能原因有哪些呢?以及如何降低这种情况发生? 1、代码问题 通常上架成功后被下架的应用,很可…

基于局部信息提取的人脸标志检测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 人脸检测 4.2 局部区域选择 4.3 特征提取 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 .........................................…

2024最新 8 款电脑数据恢复软件推荐分享

数据恢复是一个涉及从设备硬盘驱动器检索已删除文件的过程。这可能需要存储在工作站、笔记本电脑、移动设备、服务器、相机、闪存驱动器上的数据——任何在独立或镜像/阵列驱动器上存储数据的东西,无论是内部还是外部。 在某些情况下,文件可能被意外或故…

“天舟七号”发射成功,三思显示科技助力中国航天大发展!

海南文昌,椰林深处,一道耀眼尾焰点亮夜空。1月17日22时27分,搭载天舟七号货运飞船的长征七号遥八运载火箭,在我国文昌航天发射场圆满成功发射,将与在轨运行的空间站组合体进行交会对接。据悉,“天舟七号”装…

Postman基本使用、测试环境(Environment)配置

文章目录 准备测试项目DemoController测试代码Interceptor模拟拦截配置 Postman模块简单介绍Postman通用环境配置新建环境(Environment)配置环境(Environment)设置域名变量引用域名变量查看请求结果打印 Postman脚本设置变量登录成功后设置全局Auth-Token脚本编写脚本查看conso…

SQL SERVER无法连接到服务器解决过程记录

很久没用sql server了,这几天打算更新SQL SERVER数据库:SQL看这一篇就看够了(附详细代码及截图) 这篇文章,发现连接不上服务器。 找一下解决办法。 一、打开服务界面 在键盘上按“WINR”快捷键,打开运行…

记一次go应用在k8s pod已用内存告警不准确分析

一、背景 起因: 自监控应用凌晨告警:Pod 内存使用率大于80%(规格为1c1G)。内存缓慢增长,持续到早上内存使用率停止在81%左右。 疑点: 此模块是一个轻任务模块(基于go开发)&#xff0…

ConcurrentHashMap 原理

ConcurrentHashMap ConcurrentHashMap的整体架构ConcurrentHashMap的基本功能ConcurrentHashMap在性能方面的优化 concurrentHashMap: ConcurrentHashMap的整体架构 concurrentHashMap是由数组链表红黑树组成 当我们初始化一个ConcurrentHashMap实例时&#xff0c…

Gin 框架之用户密码加密

文章目录 一、引入二、密码加密位置三、如何加密四、bcrypt 库加密4.1 介绍4.2 优点:4.3 使用 五、小黄书密码加密实践 一、引入 Gin是一个用Go语言编写的Web框架,而用户密码的加密通常是在应用程序中处理用户身份验证时的一个重要问题。 通常敏感信息…

刘阳,定格历史,守护中华文化!

2021年2月24日,#圆明园365张珍贵老照片#的话题凭3.7亿阅读量冲上热搜。这批时代跨越80年的老照片仿佛重启记忆的按钮,让人梦回“夏宫”;少有人知道,它们的拥有者,却是一位不折不扣的80后。 刘阳,土生土长北…

Python初学者须知(9)Return有什么用——初识Return语句

本系列博客主要针对的是Python初学者。Python语言简洁、强大的特性吸引了越来越多的技术人员将他们的项目转移到Python上。目前,Python已经成为计算机行业最流行的编程语言之一。笔者考虑到Python初学者的多元化(Python学习者可能是对编程感兴趣的中学生…

mysql数据迁移报错Specified key was too long; max key length is 767 bytes

目录 场景: 说明: 疑问: 解决: 验证: 场景: 线上项目支持的过程中遇到mysql库表结构和数据由A库迁移到B库上提示Specified key was too long; max key length is 767 bytes报错,第一次遇到特此…

【保姆级教程|YOLOv8改进】【3】使用FasterBlock替换C2f中的Bottleneck

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

20. 从零用Rust编写正反向代理,四层反向代理stream(tcp与udp)实现

wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子 项目地址 gite: https:…

Acrel-1000DP分布式光伏系统在某重工企业18MW分布式光伏中应用

摘 要:分布式光伏发电特指在用户场地附近建设,运行方式以用户侧自发自用、余电上网,且在配电系统平衡调节为特征的光伏发电设施,是一种新型的、具有广阔发展前景的发电和能源综合利用方式,它倡导就近发电,就…

回溯算法篇-01:全排列

力扣46:全排列 排列和组合的区别在于,排列对“顺序”有要求。比如 [1,2] 和 [2,1] 是两个不同的结果。 这就导致了同一个元素 在同一条路径中不可重复使用,在不同的路径中可以重复使用。 比如数组 [1,2,3] ,在第一条路径 [1,2,…