如何使用具有不同 lucene 分析器的全文索引在 neo4j 中进行索引和搜索?

How to use a full text index with different lucene analyzers for indexing and searching in neo4j?

对于某些用例,例如使用 NGram 或 EdgeNGram 分词器,应该可以为手动索引定义 2 种不同的分析器,一种用于索引任务,另一种用于 search/query 任务。

Neo4j(自 3.5.11 起)目前不支持此功能。 documentation 状态:

... Supported settings are 'analyzer', for specifying what analyzer to use when indexing and querying. ...

Neo4j 不提供配置分析器的方法(除了指定要使用的分析器或 deploying completely custom analyzer),因此您很少想为索引和搜索定义不同的分析器。

相比之下,Elastic Search 等全文搜索引擎允许您在分析器中定义各个步骤。然后允许以不同方式定义索引分析器和搜索分析器是有意义的(尽管我认为这种情况很少见,即使发生这种情况,它们通常也非常相似)。