【发布时间】:2018-04-18 09:15:01
【问题描述】:
当我们谈论倒排索引时,我们总是谈论索引非结构化文本文档。但是 ElasticSearch 中的文档是 JSON 格式的,它们是“键”-“值”对。所以我想知道JSON文档的倒排索引是什么样子的。换句话说,当我们进行像“select * from table where name = john”这样的搜索时,ES做了什么?
【问题讨论】:
标签: elasticsearch inverted-index
当我们谈论倒排索引时,我们总是谈论索引非结构化文本文档。但是 ElasticSearch 中的文档是 JSON 格式的,它们是“键”-“值”对。所以我想知道JSON文档的倒排索引是什么样子的。换句话说,当我们进行像“select * from table where name = john”这样的搜索时,ES做了什么?
【问题讨论】:
标签: elasticsearch inverted-index
inverted index 基本上存储了术语和它们所在的文档/字段之间的关系。现在,这些术语可以来自非结构化文本,但不仅如此。 JSON 文档还包含文本,ES 对其进行分析和索引。
基本上,从 30000 英尺的角度来看,它的工作方式是 ES 解析它接收到的 JSON 文档,遍历所有字段并分析/标记所有这些字段的值。这个分析过程中产生的标记然后被索引到倒排索引中。
长话短说,它不一定是被索引到倒排索引中的非结构化文本,也可以是 JSON 文档等,其中还包含结构化、非结构化文本,还包括数字、日期等.
【讨论】: