Elasticsearch教程

Elasticsearch 概念

Elasticsearch 的关键概念

Elasticsearch 是一个面向文档的 NoSQL 数据库,用于以文档的形式存储数据。它允许用户存储、分析和搜索大量数据。 Elasticsearch 是 ELK stack 的主要产品之一,还有 Logstash、Kibana 和 Beats。但在本教程中,我们只使用 Elasticsearch。本教程将遵循 Elasticsearch 的流程。
让我们讨论 Elasticsearch 中使用的关键概念或重要术语,它们是-
节点 集群 文档 索引 碎片 副本 类型 映射
下面详细讨论了 Elasticsearch 的这些关键概念:

Node

Elasticsearch的关键概念
节点是Elasticsearch的一个实例,用于存储数据。它在 Elasticsearch 实例开始运行时创建。简单来说,它指的是一个正在运行的 Elasticsearch 实例。出于管理目的,节点由其名称标识。

集群

Elasticsearch 的关键概念
集群是一组一个或多个节点,它们一起工作以保存数据。集群为整个数据提供跨所有节点的搜索功能和联合索引。基本上,它是一组运行 Elasticsearch 引擎的系统。
类似于节点,它也由一个名称标识以用于管理目的。集群的默认名称是 elasticsearch。

Document

Elasticsearch 的关键概念
该文档是以独特方式的字段集合,以 JSON 格式定义。它用于存储驻留在 Elasticsearch 索引中的数据。所以,它可以被索引。每个文档都属于一种类型并与唯一标识符(UID) 相关联。它以 JSON(键: 值)对表示。在 RDBMS 中,文档表示为表中的一行。
在 Elasticsearch 术语中,Document = Row、Field = Column、Index = Table 和 Cluster = Database。

Index

Elasticsearch的关键概念
索引是一组不同类型的文档。它有助于执行搜索、更新和删除操作以及索引。在关系数据库中,索引表示为表,这意味着索引类似于 RDBMS 中的表。
Elasticsearch 允许在单个集群中定义各种索引。为了提高性能,索引使用了分片的概念。

分片

Elasticsearch 的关键概念
使用集群可以存储大量数据,但可能会超出单个服务器的容量。为了克服这个问题,Elasticsearch 允许将您的索引分成几个部分,称为 shard。因此,将您的索引分成几部分以创建分片。您可以在创建索引时定义所需的分片数量。
创建索引时,可以定义所需的分片数量。每个分片都是独立的且功能齐全。

副本

Elasticsearch 的关键概念
副本是分片的附加副本。它们像分片一样执行查询。 Elasticsearch 使用户能够创建其索引和分片的副本。
Elasticsearch 提供副本以避免任何类型的故障,并有助于在出现故障时提高数据的可用性。故障可能类似于-节点或分片由于某种原因将脱机。复制不仅增加了数据的可用性,还通过在这些副本中执行并行搜索操作来提高搜索的性能。

Type

Elasticsearch 的关键概念
在 Elasticsearch 中,为具有通用集合的文档定义了类型领域。它是索引的逻辑类别,其语义取决于用户。

映射

在 Elasticsearch 中,每个索引都有一个与之关联的映射,这是索引中每个单独文档可以保存的数据的模式定义。映射可以自动完成,也可以为索引手动创建。数据推送到索引时,会自动添加映射。

ES 和 RDBMS 的比较

在 Elasticsearch(ES) 中,文档类似于RDBMS(关系数据库)中的行。行的集合创建一个表,在 Elasticsearch 中称为索引。让我们将 Elasticsearch 中使用的术语与 RDBMS 进行比较。
Elasticsearch 关系型数据库
文档
字段
索引 表格
集群 数据库
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4