一篇文章带你搞定 ElasticSearch 术语
这篇文章主要介绍 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
相关文章