带你读《Elastic Stack 实战手册》之7:——3.3.2.专有名词解释(2)

简介: 带你读《Elastic Stack 实战手册》之7:——3.3.2.专有名词解释(2)

《Elastic Stack 实战手册》——三、产品能力——3.3.基础篇——3.3.2.专有名词解释(1) https://developer.aliyun.com/article/1231574


Node


单个 Elasticsearch 实例。

 

在大多数环境中,每个节点都在单独的盒子或虚拟机上运行。一个集群由一个或多个 node 组成。在测试的环境中,我可以把多个 node 运行在一个 server 上。在实际的部署中,大多数情况还是需要一个 server 上运行一个 node。

 

根据 node 的作用,可以分为如下的几种:

 

l master-eligible:可以作为主 node。一旦成为主 node,它可以管理整个 cluster 的设置及变化:创建,更新,删除 index;添加或删除 node;为 node 分配 shard

l data:数据 node

l ingest: 数据接入(比如 pipepline)

l machine learning (Gold/Platinum License)

 

一般来说,一个 node 可以具有上面的一种或几种功能。我们可以在命令行或者Elasticsearch的配置文件(elasticsearch.yml)来定义:

 

image.png

你也可以让一个 node 做专有的功能及角色。如果上面 node 配置参数没有任何配置,那么我们可以认为这个 node 是作为一个 coordination node。在这种情况下,它可以接受外部的请求,并转发到相应的节点来处理。针对 master node,有时我们需要设置 cluster.remote.connect: false。

 

在实际的使用中,我们可以把请求发送给 data 节点,而不能发送给 master 节点。

 

我们可以通过对 config/elasticsearch.yml 文件中配置来定义一个 node 在集群中的角色:

 

image.png

在有些情况中,我们可以通过设置 node.voting_only 为 true 从而使得一个 node 在 node.master 为真的情况下,只作为参加 voting 的功能,而不当选为 master node。这种情况为了避免脑裂情况发生。它通常可以使用一个 CPU 性能较低的 node 来担当。


在一个集群中,我们可以使用如下的一个命令来获取当前可以进行 vote 的所有 master-eligible 节点:

GET /_cluster/state?filter_path=metadata.cluster_coordination.last_committed_config

你可能获得类似如下列表的结果:


{
  "metadata" : {
    "cluster_coordination" : {
      "last_committed_config" : [
        "Xe6KFUYCTA6AWRpbw84qaQ",
        "OvD79L1lQme1hi06Ouiu7Q",
        "e6KF9L1lQUYbw84CTAemQl"
      ]
    }
  }
}

在整个 Elastic 的架构中,Data Node 和 Cluster 的关系表述如下:

image.png

上面的定义适用于 Elastic Stack 7.9 发布版以前。在 Elastic Stack 7.9 之后,有了新的改进。

 

请详细阅读文章 “Elasticsearch:Node roles 介绍 - 7.9 之后版本”:

https://elasticstack.blog.csdn.net/article/details/110947372

 

Document

 

Elasticsearch 是面向文档的,这意味着您索引或搜索的最小数据单元是文档。

 

文档在 Elasticsearch 中有一些重要的属性:

 

l 它是独立的。文档包含字段(名称)及其值。

l 它可以是分层的。可以将其视为文档中的文档。字段的值可以很简单,就像位置字段的值可以是字符串一样。它还可以包含其他字段和值。例如,位置字段可能包含城市和街道地址。

l 结构灵活。的文档不依赖于预定义的架构。例如,并非所有事件都需要描述值,因此可以完全省略该字段。但它可能需要新的字段,例如位置的纬度和经度。

 

文档通常是数据的 JSON 表示形式。JSON over HTTP 是与 Elasticsearch 进行通信的最广泛使用的方式,它是我们在本书中使用的方法。

 

例如,的聚会网站中的事件可以在以下文档中表示:

    {
          "name": "Elasticsearch Denver",
          "organizer": "Lee",
          "location": "Denver, Colorado, USA"
        }

很多人认为 Document 相比较于关系数据库,它相应于其中每个 record。

image.png


《Elastic Stack 实战手册》——三、产品能力——3.3.基础篇——3.3.2.专有名词解释(3) https://developer.aliyun.com/article/1231572

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
虚拟化 云计算 容器
云计算知识第五讲:虚拟化架构、特点及优势
虚拟化架构、特点及优势有哪些?
云计算知识第五讲:虚拟化架构、特点及优势
|
运维 大数据 数据建模
连载7:阿里巴巴大数据实践:OneData模型实施介绍
如何从具体的需求或项目转换为可实施的解决方案,如何进行需求分析、架构设计、详细模型设计等,则是模型实施过程中讨论的内容。
6807 1
连载7:阿里巴巴大数据实践:OneData模型实施介绍
|
IDE 开发工具 Windows
手把手教你调整电脑磁盘的分区大小
手把手教你调整电脑磁盘的分区大小
1713 0
手把手教你调整电脑磁盘的分区大小
|
Java Linux Windows
kali burpsuite 安装与使用
作者主页:https://www.couragesteak.com/
kali burpsuite 安装与使用
|
存储 人工智能 移动开发
JavaScript+HTML实现学生信息管理系统
这篇文章主要介绍了JavaScript实现学生信息管理系统,文中有非常详细的代码示例,对正在学习js的小伙伴们有一定的帮助,需要的朋友可以参考下
2116 0
|
虚拟化
使用VMware Workstation安装FusionCompute CNA和VRM
使用VMware Workstation安装FusionCompute CNA和VRM
874 0
使用VMware Workstation安装FusionCompute CNA和VRM
|
弹性计算 安全 前端开发
阿里云ECS服务器配置Web项目和FTP Server
第一次使用阿里云ECS服务器部署Web项目和FTP Server,在使用过程中遇到了很多困难,但同时对计算机网络的工作原理有了更加清晰的认识。现将使用经历进行系统性地总结。 在阅读之前请确保已购买阿里云ECS云服务器并且初始化云服务器操作系统,本教程选用的操作系统为“Windows Server 2022 数据中心版 64位中文版”。
592 0
|
前端开发
css怎么分别设置4个圆角?
css怎么分别设置4个圆角?
2360 0
css怎么分别设置4个圆角?
|
监控 Linux API
开源项目推荐:Hook技术之API拦截,Detours
开源项目推荐:Hook技术之API拦截,Detours
1345 0
EIRP/ERP名词解释及计算。
EIRP/ERP名词解释及计算。
1528 0
EIRP/ERP名词解释及计算。

热门文章

最新文章