2

考虑像这样的文件

{ firstName: "Jack", lastName: "Smith"}

{firstName: "Simon", lastName"Jackson"}

建立“自由文本”的搜索索引 - 我可以这样做:

for(var key in doc)
  index("default", doc[key], {"store":true});
//e.g. resulting field = default:["Jack", "Smith"]

或者

var indexString = "";
for(var key in doc)
  indexString += " " + doc[key];

index("default", indexString, {"store":true}); 
//e.g. resulting field = default:"Jack Smith"

是否存在性能/搜索质量差异?

4

1 回答 1

0

假设您使用的是标准分析器,索引 "Jack Smith" 和 ["Jack", "Smith"] 之间没有任何性能差异。无论如何,标准分析器会将“Jack Smith”分解为“Jack”、“Smith”。

关于搜索质量,这取决于您是否要搜索整个短语:“Jack Smith”。这两个选项都允许您搜索“Jack”或“Smith”单个查询,但只有最后一个选项允许您搜索短语“Jack Smith”。

于 2016-10-04T12:44:10.503 回答