Elasticsearch6.4专题之25:Glossary of terms(术语表)

Glossary of terms(术语表)

analysis

Analysis是将full text转换为terms的过程。根据analyzer的使用,这些短语: FOO BAR,Foo-Bar,foo,bar将可能都会产生相同的term: foobar。这些term是实际存储在索引中的。

一个对于字符串FoO:bAR的全文检索(不是term查询)也将被分词成foo,bar,因此将匹配索引中存储的term。

正是这个分析过程(索引时和搜索时)允许elasticsearch执行全文查询。

text

text(或full text)通常是非结构化文本,例如本段。默认情况下,文本将被分析为 term,这是实际存储在索引中的内容。

Text字段需要在索引时进行分析,以便可以全文搜索,并且全文查询中的关键字必须在搜索时进行分析,以生成(并搜索)与索引时生成的术语相同的术语。

term

term是在Elasticsearch中索引的精确值。term中 foo,Foo,FOO是不等价的。可以使用term查询来搜索term(即精确值)。

document

document是存储在Elasticsearch中的JSON文档。它就像关系数据库中表中的一行。每个文档都存储在索引中,并具有类型和 ID。

一个document是JSON对象(在其他语言中也称为hash / hashmap /关联数组),其中包含零个或多个字段或键-值对。

被索引的原始JSON文档将存储在_source field中,在获取或搜索文档时默认返回该字段。

id

document的id 标识document。一个document的 index/id必须是唯一的。如果没有提供ID,则会自动生成。

field

一个document包含字段或键-值对的列表。该值可以是简单(标量)值(例如字符串,整数,日期),也可以是嵌套结构(如数组或对象)。字段类似于关系数据库中表中的列。

用于每个字段的mapping具有一个字段类型(不要与文件相混淆类型),其指示可以被存储在该字段中的数据的类型,例如integer,string, object。mapping还允许您定义(除其他事项外)应如何analysis字段的值。

source field

默认情况下,您索引的JSON文档将存储在该 _source字段中,并且将由所有get和search请求返回。这样,您就可以直接从搜索结果中访问原始对象,而无需执行第二步来从ID中检索对象。

index

index就像关系数据库中的表。它具有一个包含type的 mapping,该type包含索引中的field。

index是一个逻辑命名空间,它映射到一个或多个 主分片,并且可以具有零个或多个 副本分片。

mapping

mapping就像关系数据库中的schema定义。每个 index都有一个mapping,该mapping定义一个type,以及许多索引范围的设置。

mapping可以明确定义,也可以在为文档建立索引后自动生成。

filter

filter是不计分的查询,表示它不对文档进行计分。它只关心回答问题-“此文档是否匹配?”。答案始终是简单的二进制“是”或“否”。这种查询据说是在filter上下文中进行的,因此称为filter。filter是对集合包含或排除的简单检查。在大多数情况下,filter的目的是减少必须检查的文档数量。

query

query是search的基本组件。search可以由一个或多个query定义,这些query可以无限组合地混合和匹配。虽然filter是仅确定文档是否匹配的查询,但那些还计算文档匹配程度的查询称为“评分查询”。这些查询为它分配一个分数,稍后将用于对匹配的文档进行排序。评分查询比不评分查询占用更多的资源,并且它们的查询结果不可缓存。作为一般规则,使用查询子句进行全文搜索或任何需要评分的条件,并对其他所有条件使用filter。

node

node是属于集群的Elasticsearch的运行实例 。出于测试目的,可以在单个服务器上启动多个节点,但是通常每个服务器应该有一个节点。

在启动时,节点将使用单播来发现具有相同集群名称的现有集群,并将尝试加入该集群。

shard

shard是单个Lucene实例。它是一个low-level 的“worker”单元,由Elasticsearch自动管理。index是指向主分片和 副本分片的逻辑命名空间。

除了定义索引应具有的主分片和副本分片的数量外,您无需直接引用分片。相反,您的代码应仅处理索引。

Elasticsearch 在 集群中的所有节点之间分配shard,并且在节点发生故障或添加新节点的情况下,可以自动将碎片从一个节点移动到另一个节点。

primary shard

每个document都存储在一个primary shard中。当您为文档建立索引时,将首先在primary shard上建立索引,然后在primary shard的所有replica shard上建立索引。

默认情况下,索引有5个主要primary shard。您可以指定更少或更多的主分片来扩展索引可以处理的文档数量 。

创建索引后,您将无法更改索引中的主碎片数量。

replica shard

每个primary shard可以具有零个或多个replica shard。replica shard是primary shard的copy,具有两个目的:

  1. 增加故障转移:如果primary shard发生故障,replica shard可以提升为primary shard
  2. 提高性能:获取和搜索请求可以由primary shard或replica shard分片处理。

默认情况下,每个primary shard都有一个replica shard,但是replica shard的数量可以在现有索引上动态更改。replica shard永远不会与其primary shard在同一节点上启动。

routing

当您为文档建立索引时,它会存储在一个primary shard中。该分片是通过hash routing值来选择的。默认情况下,该routing值从文档的id派生;如果文档具有指定的父文档,则从父文档的id派生(以确保子文档和父文档存储在同一分片上)。

可以通过在索引时指定路由值或映射中的路由字段来覆盖此值。

cluster

一个cluster由一个或多个共享相同群集名称的node组成。每个cluster都有一个master,集群会自动选择该master,如果当前master发生故障,则可以替换该master。

cross-cluster search (CCS)

跨集群搜索功能使任何节点都可以充当跨多个集群的联合客户端。

type

Deprecated from V6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风吹千里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值