当我们谈论倒排索引时,我们总是谈论索引非结构化文本文档。但是 ElasticSearch 中的文档是 JSON 格式的,它们是“键”-“值”对。所以我想知道JSON文档的倒排索引是什么样子的。换句话说,当我们进行“select * from table where name = john”这样的搜索时,ES 做了什么?
最佳答案
安 inverted index基本上存储术语和它们所在的文档/字段之间的关系。现在,这些术语可以来自非结构化文本,但不仅如此。 JSON 文档还包含文本,ES 对其进行分析和索引。
基本上,从 30000 英尺的角度来看,它的工作方式是 ES 解析它收到的 JSON 文档,迭代所有字段并分析/标记所有这些字段的值。这个分析过程中产生的标记然后被索引到倒排索引中。
长话短说,它不一定是索引到倒排索引中的非结构化文本,它也可以是 JSON 文档等,其中还包含结构化、非结构化文本,以及数字、日期等。
关于elasticsearch - json 文档的倒排索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49895746/