Field.Store.YES(存储域选项)
就是存储该域中的内容,方便以后进行还原,
设置为NO表示把这个域中的内容不存储到文件中,但是可以被索引。一般正文的域是不需要进行存储的,因为太大了。类似于
ID,邮箱字段,名字字段,需要存储的。不存储的域不能被完全还原。(doc.get("content"))
Field.Index(索引选项)
index.ANALYZER:进行分词和索引,适用于标题,内容等。
index.NOT_ANALYZER进行索引但是不进行分词,如:身份证号,姓名,ID等。用来精确搜索
INDEX.ANALYZER_NOT_NORMS:进行分词但是不存储norms信息,这个norms包括了创建索引的时间和权值等信息。
INDEX.NOT_ANALYZER_NOT_NORMS不进行分词也不存储norms信息 //这个很少用
INDEX.NO不进行索引。
NORMS就是每条结果的相关信息,例如评分值,排序的信息等。他可以用来加权评分。当NOT_NORMS时,
就是要分词但是不把评分信息存储进去,这样一来,排序就不能按照一种合理的评分来进行。
实际情况:当不推荐boost这个field或者是document的时候,你可以选择no norms,可以节省一些存储空间。