第 1 章 旅程的起点:从一段文本到倒排索引


文档摘要

第 1 章 · 旅程的起点:从一段文本到倒排索引 章节摘要:任何一段要被搜索的文本,都得先回答两个问题——引擎用什么结构记住它?它住在一个什么样的分布式世界里?本章用一次搜索事故引入倒排索引的直觉,画出节点、分片、副本的集群地图,再对比 JSON 文档模型与关系表模型的差别。读完你会知道 Elasticsearch 为什么"搜得快、装得下",以及它和数据库各自的边界在哪里——这决定了后面八章里 doc-1001 每一步的命运。 学习目标 阅读完本章,你应当能够: 用自己的话讲清倒排索引"词到文档"的映射方向,并解释它为什么比逐行扫描快。 画出集群、节点、索引、分片、副本的包含关系图,说出主分片数为什么建好后不能改。

第 1 章 · 旅程的起点:从一段文本到倒排索引

章节摘要:任何一段要被搜索的文本,都得先回答两个问题——引擎用什么结构记住它?它住在一个什么样的分布式世界里?本章用一次搜索事故引入倒排索引的直觉,画出节点、分片、副本的集群地图,再对比 JSON 文档模型与关系表模型的差别。读完你会知道 Elasticsearch 为什么"搜得快、装得下",以及它和数据库各自的边界在哪里——这决定了后面八章里 doc-1001 每一步的命运。

学习目标

阅读完本章,你应当能够:

  1. 用自己的话讲清倒排索引"词到文档"的映射方向,并解释它为什么比逐行扫描快。
  2. 画出集群、节点、索引、分片、副本的包含关系图,说出主分片数为什么建好后不能改。
  3. 解释文档、字段、映射三者在数据模型里的角色,区分 text 与 keyword 的用途。
  4. 列出三个"该用 Elasticsearch"与三个"该留在数据库"的场景,并说明理由。
  5. 复述 doc-1001 旅程的九个站点,为后续章节建立全局索引。

核心概念速览

金句:数据库按行回答"这条记录是什么",倒排索引按词回答"哪些记录里有它"——搜索的本质是后一个问题。

子章节导航

1.1 一次搜索的幕后:倒排索引的直觉

从一次像搜索的事故出发,讲清正排与倒排两种结构的差别,再看分词如何决定倒排表里到底有哪些词。这是全书的智识地基,后面每一次"搜不到"都能追回到这一节。

1.2 集群概念地图:节点、分片与副本

单个节点装不下、也挂不起的时候,就需要分片与副本。这一节把分布式词汇一次性理顺:主分片数为什么建索引时就要定好、副本怎么提供高可用、协调节点在中间扮演什么角色。

1.3 数据模型与选型:JSON 文档的先天优势

同样的工单数据,关系模型存成三张表,文档模型存成一条嵌套 JSON。这一节对比两种建模思路的代价,并给出技术选型的判断框架,避免"手里拿锤子看什么都是钉子"。

子章节之间的逻辑关系

三节的关系是"结构、容器、内容":先认识引擎内部的数据结构(倒排索引),再认识承载它的分布式容器(集群与分片),最后认识装进容器的内容形态(JSON 文档)。顺序不可颠倒——不理解倒排索引,就无法理解分片本质上是一份独立的 Lucene 索引。

1.1 倒排索引结构 ──► 1.2 分片 = 独立的Lucene索引 ──► 1.3 文档模型与选型 │ │ │ └─► 第3章 分词 └─► 第4章 路由 └─► 第7章 嵌套建模

本章考核清单

学完本章,用下面五个考核点自测,答不上来的回对应小节重读:

考核点 达标标准 对应小节
讲清倒排方向 能手画"词到文档"的表,并解释模糊查询在数据库里为何退化为全表扫描 1.1
手算迷你倒排表 给三条样例文档与切词结果,写出词典与倒排列表 1.1
画出集群包含图 集群、节点、索引、主分片、副本五层关系不错位 1.2
解释分片数不可改 用路由公式的取余运算说明改数后老文档"失踪"的机理 1.2
选型判断 对给定业务场景给出"数据库还是搜索引擎"的结论与两条理由 1.3

易错点速查

  • 把"索引"当成一个文件:Elasticsearch 的索引是逻辑容器,物理上是一组分片,每个分片才是真正持有倒排表的 Lucene 索引。
  • 以为副本能加快写入:写入永远先落主分片再同步副本,副本只扩展读吞吐与可用性,副本越多每次写入的同步面越宽。
  • 先定存储再想查询:正确顺序是按"怎么查"设计文档形态再谈存什么,第 7 章的嵌套建模会再次验证这条纪律。

前置知识与后续延伸

  • 前置知识:会用命令行发 HTTP 请求(后面章节会大量使用);了解 JSON 的嵌套语法;对数据库的行、列、索引有基本印象。
  • 后续延伸:1.1 的分词直觉在第 3 章展开成分析器三段流水线;1.2 的分片地图在第 4 章接上路由公式、在第 8 章接上近实时与再平衡;1.3 的文档模型在第 7 章长出嵌套与地理两种形态。

作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U