一篇文章带你搞定 ElasticSearch 术语

2020-05-22 00:00:00 索引 集群 文档 节点 分片

这篇文章主要介绍 ElasticSearch 的基本概念,学习文档、索引、集群、节点、分片等概念,同时会将 ElasticSearch 和关系型数据库做简单的类比,还会简单介绍 REST API 的使用用法。

ElasticSearch 术语

索引和文档是偏向于逻辑上的概念,节点和分片更偏向于物理上的概念。

首先来说下什么是文档:

文档(Document)

ElasticSearch(简称 ES) 是面向文档的,文档是所有可搜索数据的小单位

给大家举几个例子,让大家更形象地理解什么是文档:

  • 日志文件中日志项
  • 一本电影的具体信息、一张唱片的详细信息
  • MP3 播放器里的一首歌、一篇 PDF 文档中的具体内容
  • 一条客户数据、一条商品分类数据、一条订单数据

大家可以把文档理解为关系型数据库中的一条记录。

在 ES 中文档会被序列化成 JSON 格式,保存在 ES 中,JSON 对象由字段组成,其中每个字段都有对应的字段类型(字符串/数组/布尔/日期/二进制/范围类型)。

在 ES 中,每个文档都有一个 Unique ID,可以自己指定 ID 或者通过 ES 自动生成

在上一篇文章手把手教你搭建 ELK 实时日志分析平台中,我们讲到了通过 Logstash 向 ES 中导入数据,其中部分测试数据集和对应的转换后的格式如下所示:

movieId,title,genres
193585,Flint (2017),Drama
193587,Bungo Stray Dogs: Dead Apple (2018),Action|Animation
193609,Andrew Dice Clay: Dice Rules (1991),Comedy

相关文章