全书目录

第二十三篇:Elasticsearch 完全指南 —— 全城检索雷达宇宙

第二章:五个基本部件 —— index、document、field、mapping、analyzer 到底是什么

2 分钟 465 字 第 418 / 962 个阅读单元

先把 Elasticsearch 最核心的五个概念摆正。

text
Elasticsearch
└── index(一个雷达库区)
    ├── document(一份被登记进雷达系统的资料)
    │   ├── field(资料上的一个字段)
    │   ├── field
    │   └── field
    ├── mapping(这类资料的建档规则)
    └── analyzer(文本字段的分词/归一化规则)

可以这样类比:

Elasticsearch 概念 城市类比 你真正该记住的含义
index 一个雷达库区 一批按同类规则建立搜索结构的数据集合
document 一份城市档案 一条 JSON 文档,是被搜索的基本单位
field 档案栏目 文档里的具体字段,比如标题、品牌、价格
mapping 建档蓝图 定义字段类型、索引方式、分析方式
analyzer 线索拆解器 把文本拆成词项,并做小写化、去标点等处理

例如,一份商品文档可能长这样:

json
{
  "title": "Wireless Noise Cancelling Headphones",
  "brand": "AcmeAudio",
  "category": "audio",
  "price": 1299,
  "in_stock": true
}

这里:

  • titlebrandcategorypricein_stock 都是 field
  • 整个 JSON 是一个 document
  • 这一批商品文档如果都放进 city_products,那么 city_products 就是一个 index
  • titletext 还是 keywordpriceinteger 还是 float,这些由 mapping 决定
  • title 怎么被拆词,由 analyzer 决定